Download - PYTHON ILE PARALEL PROGRAMLAMA
![Page 1: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/1.jpg)
PYTHON ILE PARALEL PROGRAMLAMA
ORÇUN ULUTAŞ
![Page 2: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/2.jpg)
PYTHON Nedir ?
• Python yorumlanabilir script tabanlı bir dilidir.
• Çoklu platform desteği
• Geniş kütüphane desteği
• Web ve masaüstü uygulamalar geliştirilebilir
![Page 3: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/3.jpg)
YER ALDIĞI PROJELER• Belender, GIMP, Inkscape
• Linux dağıtımları
• Django Framework
• Apache
• Bittorrnet
• Google, Yahoo, Facebook
• GERN, NASA
![Page 4: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/4.jpg)
Python Syntax
![Page 5: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/5.jpg)
Python Syntax
![Page 6: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/6.jpg)
PRALLEL LIBRARIES
• MPI4PY
• pyMPI
• Python PROCESS
• MULTI PROCESSING
• Python Parallel
![Page 7: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/7.jpg)
MPI4PY
from mpi4py import MPI
comm = MPI.COMM_WORLD
rank = comm.Get_rank()
if rank == 0:
data = {'a': 7, 'b': 3.14}
comm.send(data, dest=1, tag=11)
elif rank == 1:
data = comm.recv(source=0, tag=11)
![Page 8: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/8.jpg)
Broadcast
from mpi4py import MPI
comm = MPI.COMM_WORLD
rank = comm.Get_rank()
if rank == 0:
data = {'key1' : [7, 2.72, 2+3j],
'key2' : ( 'abc', 'xyz')}
else:
data = None
data = comm.bcast(data, root=0)
![Page 9: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/9.jpg)
MPIimport mpi
if mpi.rank == 0:
print "size=",mpi.size
print "rank=",mpi.rank,"/size=",mpi.size
![Page 10: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/10.jpg)
root@linuxpc:/home/se364/python# mpirun –np 2 python mpi.py mypi = 3.1454 for rank 0Computed value of pi on 2 processors is 3.1417Using 120000 samples.
![Page 11: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/11.jpg)
PPROCESS
root@linuxpc:/home/se364/python# python process.py 13
![Page 12: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/12.jpg)
root@linuxpc:/home/se364/python# python pyocr.py 6.716026 s for traditional, serial computation.4.041723 s for parallel computation.
![Page 13: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/13.jpg)
MULTI PROCESSING
p = multiprocessing.Pool()
po = p.map_async(fn, args)
result = po.get()
![Page 14: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/14.jpg)
root@linuxpc:/home/se364/python# python mp.py main line('module name:', '__main__')('parent process:', 4436)('process id:', 4815)function f('module name:', '__main__')('parent process:', 4815)('process id:', 4816)('hello', 'bob')
![Page 15: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/15.jpg)
root@linuxpc:/home/se364/python# python mp2.py 3.1415927[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
![Page 16: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.net/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/16.jpg)
PP
root@linuxpc:/home/se364/python# python mp2.py Start at: Mon Dec 16 23:43:35 2013Start doing somethingDo something... ... do something else...1 I'm done2 I'm doneEnd at: Mon Dec 16 23:43:40 2013