Fundamentals of Parallel Programming ------------------------------------ This course by `The Molecular Sciences Software Institute `_ (MolSSI) teaches the fundamentals of parallel programming techniques, with an emphasis on MPI and OpenMP parallelization. It assumes basic familiarity with Python programming, which is the subject of the MolSSI `Python Scripting for Computational Molecular Science `_ lessons. Episodes 4 and 6 assume basic familiarity with C++. To see the full MolSSI's education mission statement, please see `here `_. This lesson is under continual development, please report issues to the `workshop repository `_. If you see a subject you would like to contribute to, submit a pull request! .. admonition:: Prerequisites :class: attention Students should be familiar with opening the Terminal window and creating and navigating files in bash. Workshop Lessons ================ Set-Up ####### .. csv-table:: :file: csv_tables/setup.csv :header-rows: 1 Introduction ############ .. csv-table:: :file: csv_tables/intro.csv :header-rows: 1 Distributed-Memory Parallelization ################################## .. csv-table:: :file: csv_tables/distributed-memory.csv :header-rows: 1 Shared-Memory Parallelization ################################## .. csv-table:: :file: csv_tables/shared-memory.csv :header-rows: 1 .. toctree:: :maxdepth: 2 :hidden: :titlesonly: setup 01-introduction 00-distributed-memory 00-shared-memory