Enabling heterogeneous systems with open standards for ADAS with Codeplay

As part of our series of interviews with the AutoSens Community, we caught up with Codeplay Software this week.

Codeplay are delivering their “Enabling heterogeneous systems with open standards for ADAS” workshop at both Self Driving Track Days (28 July in Teesdorf, Austria) and AutoSens (19 September at AutoWorld Brussels) The workshops will be led by Duncan McBain, Software Engineer at Codeplay Software.

We pride ourselves on making complex things easier to understand – so for the non-technical layman, what is a heterogeneous system and how is it different from a conventional software controlled piece of hardware?

Heterogeneous systems are chips that use different specialized processors for specific functions of an application, instead of more normal computing devices that only have a CPU. They might all be on the same chip (a “System on Chip”, or SoC) eg CPU + GPU + DSP, or separated via network eg phone + cloud compute ie Siri & OK Google. Artificial Intelligence (AI) has suddenly become possible because of the huge computing power of heterogeneous processors, such as GPUs. We are now beginning to see specialist AI processors impact the market. This means the growth in heterogeneous compute will continue and drive products into new markets such as IoT, vision and automotive.

Why is what Codeplay does important when we have Moore’s law – won’t computers just get smaller, have more processing power and get cheaper, so we won’t need to worry about efficiency?

Moore’s law in its traditional way is slowing down. CPUs have been stuck at 3GHz for many years. New heterogeneous processors can provide massive performance for AI, but only using specialist programming techniques. For example, most AI uses Graph programming methods to enable individual AI operations to be combined to reduce bandwidth and maximize processing.

Codeplay enables this as follows:

  1. Providing ComputeAorta,  an OpenCL open standards based solution for new specialized processors, making normally complex programmable devices easier to develop using well known programming standards, and
  2. ComputeCpp, a SYCL implementation connecting AI to Silicon via OpenCL. The best example of this is compiling Google’s popular AI framework called TensorFlow using SYCL, then you can use Codeplay’s ComputeCpp to execute any OpenCL enabled system.

What sort of people will benefit most from your workshop on both 28 July (Austria) and 19 September (Brussels)?

The tutorial is aimed at software engineers who want to understand how to build software for driving aids (ADAS) and self-driving cars. The automotive industry is evolving rapidly, embracing vision processing, initially for creating ADAS products but ultimately towards SAE Level 5 autonomous car. The speed of evolution and the techniques used will also need to evolve to use open standards rather than the traditional low level programming methods, which are slow to develop and difficult to maintain. OpenCL is the first step in enabling open standards, enabling new complex heterogeneous processing solutions.

Codeplay will present the relevant open standards and how they are constructed, from vision processing devices to their use within machine learning for the autonomous car.

Engineering will benefit from the presentation (hardware, software & architects) but also business development and management wanting to understand how the layers of software connect together.

Your company has an open-standards mantra, why is that, and what are the benefits to your customers?

Open standards have already benefited existing markets, from gaming with graphics standards eg OpenGL, through mobile phones and PCs. It is the best route to accelerate development using latest programming techniques and creating an ecosystem supplying applications and pre-trained engineers.

Benefits:

  • Multi-sourcing strategy, both for hardware/processor solutions and for application development.
  • Product differentiation, rather than basing on the same solution as competition
  • Reduced development costs, encouraging reuse and leveraging existing knowledge for evolving hardware and software solutions

How big is Codeplay and how quickly are you growing?  Is recruitment a problem?

Codeplay is over 60 highly skilled software engineers. The team has grown significantly over the last 3 years driven by the market demand and engineering leadership.

Recruitment is tough with needed skills not being readily available. Codeplay has an excellent recruitment program; a) working closely with universities with intern/sponsorship activities, and b) a global reputation attracting the best talent to join the energetic team in Edinburgh. We also train talented graduates in all the skills needed.

What are your thoughts on using mobile phones as processing platforms for driverless vehicle processing?

Technology for mobile phones evolved faster than Moore’s Law, with mobile GPU performances evolving at between 2x & 3x per year. Today GPUs are excellent processors for AI and vision processing, and hence benefiting the evolution of the automotive market. Also the need for standards within mobile devices enabled the huge ecosystem and the software engineers developing globally. The same methods of chip design, heterogeneous processing, memories, software architectures and open standards will carry into automotive with the benefits mentioned above. Automotive processors will still need to follow the traditional safety approaches that are already established, but super-charged and modernised for high performance AI.

You’ve just been shortlisted for an AutoSens Award in the category of software innovation – have you checked out the other finalists?

The automotive industry is thriving with innovation and energy, carried by the excitement of bringing many new technologies into automotive. The shortlist represents a brilliant collection of new and existing suppliers driving the latest technology in new and innovative ways. Codeplay is really proud to be considered within this list of leaders.

R&D is really expensive – If people need software to develop a new product, what advice can you give?

Open standards is the only way forward. Keep your traditional methods if you need a short term solution but start investing in the latest programming methods for AI – it will give you a leadership position.


Codeplay at delivering their “Enabling heterogeneous systems with open standards for ADAS” workshop at both Self Driving Track Days (28 July in Teesdorf, Austria) and AutoSens (19 September at AutoWorld Brussels)

Responses