Recommendation for learning materials

Issue #274 resolved
Thorsten Schmitz created an issue

Hi,

since you obviously have a lot of experience with high performance multithreading I was wondering if you could recommend some relevant resources for learning more about this topic.

So far the materials I could find are more basic. Theay talk about what what a thread is, how to use a mutex and/or how to use a specific library in general. There is of course a lot of good material in this field to learn multithreading. But what I haven't really found was resources on how to use these multithreading for high performance computations. How to really get the best out of it, not just "good" applications. How to properly make an algorithm benefit from multithreading.

It would be great if someone could recommend something to read about this (in either english or german), maybe even with focus on numerics.

Best regards

Thorsten

Comments (3)

  1. Klaus Iglberger

    Hi Thorsten!

    I can recommend the following two books (both in English):

    • “C++ Concurrency in Action - 2nd Edition” by Anthony Williams: The best book on getting information on how multithreading works in C++;
    • “Introduction to High Performance Computing for Scientists and Engineers“ by Georg Hager and Gerhard Wellein: A great book to understand performance optimisations, including multithreading;

    Assuming you are from Germany I can also recommend a lot of hands-on courses on concurrency at the high performance computing centres in Stuttgart, Garching and Jülich.

    I hope this helps,

    Best regards,

    Klaus!

  2. Thorsten Schmitz reporter

    Thanks for the recommendations. I will take a look at the books. I also got on the mailing list for the hlrs courses and will check out their materials.

    Best regards

    Thorsten

    ps: Just got the newsletter. Good luck with your c++ lecture.

  3. Log in to comment