This is something I’m going to cover in future articles in 2015, including a way that you can try out new technology such as AVX-512 even when your computer doesn’t support it. The tool we’ll be looking at is called Intel Software Development Emulator (SDE), which now has support for AVX-512 emulation. SDE itself is actually built using another tool from Intel called Pin, which is a tool for creating instrumentation and analysis tools.
Another thing we’ll look at in 2015 is how to actually test the accuracy of your modernizations. For example, from a mathematical perspective, if you start with a serial mathematical algorithm and spread it among multiple cores, you could potentially introduce precision errors that could radically alter the result of the operation. But another issue is optimization. If your code has been modernized to run on multiple cores, and later it runs on a machine with 60 cores, will it really run as optimally as it can? Or can you optimize it even further? These are all issues that play into the modernization of your code.
Finally, another thing we’ll look at this year is what is going on exactly at the Parallel Computing Centers. Much of the code they’re modernizing is free and open source and available. That will give us a chance to see what kind of work they’re doing, and to hopefully learn from their expertise. These modernizations are being implemented by software engineers with loads of experience in high-performance computing and parallel computing, and there is much we can learn from them. Also, as one final note, these centers are working in both C++ and
Fortran, so there’s a lot to learn in both those languages.
Conclusion
This is going to be an exciting year for parallel and high-performance computing. Intel is working with centers all over the world, and new research will be coming out, with plenty of opportunities for us to learn as much as we can. And for many of you, that will mean enhancing your own career potential.