python ile paralel programlama
DESCRIPTION
PYTHON ILE PARALEL PROGRAMLAMA. ORÇUN ULUTAŞ. 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. YER ALDIĞI PROJELER. Belender, GIMP, Inkscape Linux dağıtımları Django Framework - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.site/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/1.jpg)
PYTHON ILE PARALEL PROGRAMLAMA
ORÇUN ULUTAŞ
![Page 2: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.site/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.site/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.site/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/4.jpg)
Python Syntax
![Page 5: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.site/reader033/viewer/2022061405/5681493b550346895db681d2/html5/thumbnails/5.jpg)
Python Syntax
![Page 6: PYTHON ILE PARALEL PROGRAMLAMA](https://reader033.vdocuments.site/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.site/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.site/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.site/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.site/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.site/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.site/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.site/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.site/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.site/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.site/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