HPC
Over the years, I have found it very interesting tracking trends and “fashions” in embedded software. At any given time, certain technologies are “hot”. Sometimes the source of excitement seems to come out of nowhere; other times, it is a natural evolution. And thus it is with HPC – High Performance Computing.
Somehow this does not sound like the province of embedded software, but, with ever more powerful embedded CPUs becoming available, things are changing …
The boundaries used to be clear. For control applications, where limited CPU power was needed, embedded systems were the norm. Where more computing capability was needed to crunch data, desktop computers or, historically, minicomputers and mainframes did the job. If you wanted to crunch a lot of data, perhaps including vector and array processing, you would turn to a supercomputer.
Nowadays, it is a lot less clear cut. Embedded devices can very cost effectively deal with low end functionality. But many embedded CPUs now rival those used in desktop computers for functionality and raw computing power. [I talked about this topic in broad terms a few months ago.] Even the world of supercomputers is now being infringed on by embedded processors with powerful vector processing capabilities, like Freescale’s AltiVec., which enable embedded applications that would have been unbelievable just a few years back.
Mentor Embedded has accumulated extensive experience in the HPC space. A recent announcement highlighted plans for a library to enable developers to harness the power of vector processing. Full details may be found here, where you can download a free white paper. Freescale are excited by the potential of these libraries and made this YouTube video: