29
Serial version 151 The 9 th KIAS CAC Summer School on Scientific Computing and Machine Learning

Serial version - pds21.egloos.com

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Serial version - pds21.egloos.com

Serial version

151The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 2: Serial version - pds21.egloos.com

Serial version

152The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 3: Serial version - pds21.egloos.com

Serial version

153The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 4: Serial version - pds21.egloos.com

Serial version

154The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 5: Serial version - pds21.egloos.com

Serial version

155The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 6: Serial version - pds21.egloos.com

Serial version

156The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 7: Serial version - pds21.egloos.com

Serial version

157The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 8: Serial version - pds21.egloos.com

Serial version

158The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 9: Serial version - pds21.egloos.com

Serial version

159The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 10: Serial version - pds21.egloos.com

Serial version

160The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 11: Serial version - pds21.egloos.com

Serial version

161The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 12: Serial version - pds21.egloos.com

Serial version

162The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 13: Serial version - pds21.egloos.com

Serial version

163The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 14: Serial version - pds21.egloos.com

Serial version

164The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 15: Serial version - pds21.egloos.com

Serial version

165The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 16: Serial version - pds21.egloos.com

Serial version

166The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 17: Serial version - pds21.egloos.com

MPI

167The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

• Many examples • High-level usage of MPI • Practice

Page 18: Serial version - pds21.egloos.com

Serial version

168The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 19: Serial version - pds21.egloos.com

Parallel version

169The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 20: Serial version - pds21.egloos.com

Serial version

170The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 21: Serial version - pds21.egloos.com

Parallel version (1/3)

171The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 22: Serial version - pds21.egloos.com

Parallel version (2/3)

172The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 23: Serial version - pds21.egloos.com

Parallel version (3/3)

173The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 24: Serial version - pds21.egloos.com

Parallel

174The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Most MPI programs can be run with the command mpiexec.

Page 25: Serial version - pds21.egloos.com

Parallel

175The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

Page 26: Serial version - pds21.egloos.com

Master-slave mode

176The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

http://incredible.egloos.com/3755171

Page 27: Serial version - pds21.egloos.com

Parallelizing Loops

177The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

http://incredible.egloos.com/3755171Y. Aoyama and J. Nakano, RS/6000 SP: Practical MPI Programming

Block Distribution

Cyclic Distribution

Block-Cyclic Distribution

Page 28: Serial version - pds21.egloos.com

Parameter range

178The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning

http://incredible.egloos.com/3755171Y. Aoyama and J. Nakano, RS/6000 SP: Practical MPI Programming

Page 29: Serial version - pds21.egloos.com

References• John W. Shipman, A Python 2.7 programming tutorial

• D. Beazley and B. K. Jones, Python Cookbook 3rd ed.

• Tutorialpoint, Python 3

• Richard L. Halterman, Fundamentals of Python Programming

• Brian Heinold, A Practical Introduction to Python Programming

• K. W. Smith, Cython

• Stephen Weston, Parallel Computing in Python using mpi4py

• Lisandro Dalcin, MPI for Python

• Konrad Hinsen, Optimizing and Interfacing with Cython

• Stéfan van der Walt, The Quest for Speed: An Introduction to Cython

• http://cs231n.github.io/python-numpy-tutorial/

• https://code.tutsplus.com/tutorials/speeding-python-with-cython--cms-29557

• https://docs.scipy.org/doc/numpy/user/quickstart.html

• http://book.pythontips.com/en/latest/python_c_extension.html

• https://notmatthancock.github.io/2017/02/10/calling-fortran-from-python.html

• Y. Aoyama and J. Nakano, RS/6000 SP: Practical MPI Programming

• https://en.wikibooks.org/wiki/A_Beginner%27s_Python_Tutorial/Classes

179The 9th KIAS CAC Summer School on Scientific Computing and Machine Learning