Improving the performance of scientific software, or “Do I really need to learn C++?”
November 4 @ 2:00 pm - 4:00 pm
This is a continuation of the workshop “Introduction to performance analysis of scientific software“. Now, we know how to measure overall performance of our software and can make a good guess of the main performance bottleneck. How can we improve the performance? Do we really need to rewrite the whole program in a different language? In this workshop, we will observe and discuss various methods of performance improvement, such as using optimized libraries, multi-language development, and choosing appropriate algorithms. In the end, you will know how to leverage the power of better algorithms and closer-to-metal languages to improve the performance of your software without a total rewrite or hardware upgrades.
It is recommended to attend “Introduction to performance analysis of scientific software” workshop prior to this one. Participants are expected to know the basics of programming in some (any!) programming language. Some familiarity with the Unix command line and Python language would be helpful, but is not required. If you wish to follow hands-on demonstrations, you will need to use your own computer and have a UMich account.