introduction to parallel computing with python

18
Introduction to Parallel Computing with Python Doni Ramadhan

Upload: doni-ramadhan

Post on 25-May-2015

1.853 views

Category:

Technology


1 download

DESCRIPTION

An intro to parallel computing in python. There is example using mpi4py library. Mostly slide contains pictures, but hopefully the picture is describable.

TRANSCRIPT

Page 1: Introduction to Parallel Computing with Python

Introduction to Parallel Computing with PythonDoni Ramadhan

Page 2: Introduction to Parallel Computing with Python

What is Parallel Computing?

Page 3: Introduction to Parallel Computing with Python

What is MPI?

Page 4: Introduction to Parallel Computing with Python

MPI Library for Python

Page 5: Introduction to Parallel Computing with Python

Pros & Cons of MPI

Pros• Works

Concurrently• Optimize the

number of core• Tasks will be

finished faster

Cons• Needs time to

setup• Depends on

network throughput

• It is harder to program a parallel program

Page 6: Introduction to Parallel Computing with Python

MPI Basics and Implementation

Page 7: Introduction to Parallel Computing with Python

Environment Management

MPI_INITMPI_Comm_SizeMPI_Comm_RankMPI_WtimeMPI_Finalize

Page 8: Introduction to Parallel Computing with Python

HelloWorld.py

Page 9: Introduction to Parallel Computing with Python

Point-to-Point Communication

Page 10: Introduction to Parallel Computing with Python

Point-to-Point Implementation

Page 11: Introduction to Parallel Computing with Python

Buffering&Blocking vs. Non-Blocking Communication

Page 12: Introduction to Parallel Computing with Python

Order and Fairness

Page 13: Introduction to Parallel Computing with Python

Collective Communication

Page 14: Introduction to Parallel Computing with Python

Broadcast

Page 15: Introduction to Parallel Computing with Python

Scatter

Page 16: Introduction to Parallel Computing with Python

Gather

Page 17: Introduction to Parallel Computing with Python

Reduce

Output:

Page 18: Introduction to Parallel Computing with Python

Matrix Multiplication