Speaker: Alexander Pletzer, GFDL (Formerly CPPG, PPPL)
Abstract:
Regardless of the programming language you are using and whether you are running MPI, OpenMP or serial codes, the challenges of writing "good" scientific codes will invoke at some level the need for robustness,
performance and flexibility. This seminar will be about how to write
code that can scale in complexity with an eye on performance. By walking through simple examples I will attempt to uncover the hidden costs
associated with some programming practices that I have personally
encountered, and try to answer common questions. Are Fortran COMMON
blocks ok? Will I make my code modular by using Fortran modules? Shoud I opt for an object oriented or procedural programming style?
What is thread safety and how can I make my code thread safe? How should I deal with multi-language interoperability?