Heterogeneous Computing & Quantum Engineering – #17




EEs Talk Tech - An Electrical Engineering Podcast show

Summary: <p>Learn about parallel computing, the rise of heterogeneous processing (also known as hybrid processing), and the prospect of quantum engineering as a field of study!</p> <div class="jetpack-video-wrapper"></div> <p> </p> <p>Audio link:</p> <audio class="wp-audio-shortcode" id="audio-1388-18" style="width: 100%;"><a href="https://eestalktech.com/wp-content/uploads/2017/09/heterogeneous-computing-and-quantum-engineering.mp3">https://eestalktech.com/wp-content/uploads/2017/09/heterogeneous-computing-and-quantum-engineering.mp3</a></audio> <p>00:40</p> <p>Parallel computing used to be a way of sharing tasks between processor cores.</p> <p>When processor clock rates stopped increasing, the response of the microprocessor companies was to increase the number of cores on a chip to increase throughput.</p> <p>01:44</p> <p>But now, the increased use of specialized processing elements has become more popular.</p> <p>A GPU is a good example of this. A GPU is very different from an x86 or ARM processor and is tuned for a different type of processing.</p> <p>GPUs are very good at matrix math and vector math. Originally, they were designed to process pixels. They use a lot of floating point math because the math behind how a pixel  value is computed is very complex.</p> <p>A GPU is very useful if you have a number of identical operations you have to calculate at the same time.</p> <p>4:00</p> <p>GPUs used to be external daughter cards, but in the last year or two the GPU manufacturers are starting to release low power parts suitable for embedded applications. They include several traditional cores and a GPU.</p> <p>So, now you can build embedded systems that take advantage of machine learning algorithms that would have traditionally required too much processing power and too much thermal power.</p> <p> </p> <p>4:50</p> <p>This is an example of a heterogeneous processor (<a href="http://developer.amd.com/resources/heterogeneous-computing/what-is-heterogeneous-computing/">AMD</a>) or hybrid processor. A heterogeneous processor contains cores of different types, and a software architect figures out which types of workloads are processed by which type of core.</p> <p>Andrew Chen (professor) has predicted that this will increase in popularity because it’s become difficult to take advantage of shrinking the semiconductor feature size.</p> <p>6:00</p> <p>This year or next year, we will start to see heterogeneous processors (<a href="http://www.moorinsightsstrategy.com/tech-giants-move-to-specialized-computing-or-die/">MOOR</a>) with multiple types of cores.</p> <p>Traditional processors are tuned for algorithms on integer and floating point operations where there isn’t an advantage to doing more than one thing at a time. The dependency chain is very linear.</p> <p>A GPU is good at doing multiple computations at the same time so it can be useful when there aren’t tight dependency chains.</p> <p>Neither processor is very good at doing real-time processing. If you have real time constraints – the latency between an <a href="http://eestalktech.com/2017/07/13/fast-adc/">ADC</a> and the “answer” returned by the system must be short – there is a lot of computing required right now. So, a new type of digital hardware is required. Right now, ASICs and FPGAs tend to fill that gap, as we’ve discussed in the <a href="http://eestalktech.com/2017/05/25/all-about-asics/">All about ASICs</a> podcast.</p> <p>9:50</p> <p>Quantum cores (like we discussed in the <a href="http://eestalktech.com/2017/08/10/what-is-quantum-computing/">what is quantum computing </a>podcast) are something that we could see on processor boards at some point. Dedicated quantum computers that can exceed the performance of traditional computers will be introdu</p>