SlideShare a Scribd company logo
1 of 11
Kopdar Python ID - Jogja
Sabtu, 26 November 2016 @Sebangsa HQ
Parallelism dan Concurrency
Perkenalkan
• Isna Rahmatul Khoir
Programmer Backend di PT Sebangsa Bersama
Apa itu concurrency/
concurrent processing?
• Desain alur eksekusi yang memungkinkan
beberapa task/ process berjalan bersamaan.
• Bisa dengan/ tanpa pemrosesan secara
parallell.
Apa itu concurrency/
concurrent processing?
• Contoh kasus:
– Ketika ada user yang membalas suatu postingan, ada
proses insert data ke database, mengirimkan push
notification (GCM) ke pembuat postingan utama dan
mengirim email notifikasi ke pembuat postingan utama.
Agar user segera mendapatkan response maka proses-
proses tersebut dijalankan secara concurrent.
– Aplikasi yang bisa tetap menerima input dari user
selama background process sedang berjalan (lihat
contoh kode di slide 9)
Apa itu concurrency/
concurrent processing?
• Gambaran flow concurrent process
– http://divan.github.io/demos/gifs/hello.gif
Apa itu parallelism/
parallel processing?
• Memperbanyak jalur/ worker untuk memproses
banyak data secara bersamaan.
• Dipengaruhi jumlah worker (Semakin banyak
worker maka semua task semakin cepat
selesai*).
* perlu penilitian terlebih dahulu jumlah worker yang optimal sesuai spesifikasi sistem dan
jenis task yang dikerjakan.
Apa itu parallelism/
parallel processing?
• Contoh kasus:
• Untuk mengambil data dari beberapa sumber rss
menggunakan library requests, agar tidak perlu
menunggu satu sama lain selesai, maka dibuatkan
beberapa pool worker agar semua proses dapat
berjalan bersamaan. (lihat contoh kode di slide 9)
Apa itu parallelism/
parallel processing?
• Gambaran flow parallel processing
– http://divan.github.io/demos/gifs/parallelism1.gif
Source code demo
• Sequence Program
– https://gist.github.com/irkho/0771932e90aaf9ebbae3c28
• Parallel Program
– https://gist.github.com/irkho/46af21da853960d7ebb3d7e
• Concurrent Program
– https://gist.github.com/irkho/0d77a2bbc31f621522ec6fa
Referensi
• http://www.slideshare.net/dabeaz/an-introduction-to
• https://www.toptal.com/python/beginners-guide-to-c
• http://divan.github.io/posts/go_concurrency_visualiz
Terimakasih

More Related Content

Viewers also liked

Cbbd 2011 cover 3 back insider
Cbbd 2011 cover 3 back insiderCbbd 2011 cover 3 back insider
Cbbd 2011 cover 3 back insidernocommentfactory
 
Presentazione e twinning Pozzallo
Presentazione e twinning PozzalloPresentazione e twinning Pozzallo
Presentazione e twinning Pozzalloruf16811
 
h3fa1 NadineLyon frans ppt
h3fa1 NadineLyon frans ppth3fa1 NadineLyon frans ppt
h3fa1 NadineLyon frans pptedmondvincent
 
Introduction to RxJava on Android
Introduction to RxJava on AndroidIntroduction to RxJava on Android
Introduction to RxJava on AndroidChris Arriola
 
Acentuação gráfica e o acordo de 1990
Acentuação gráfica e o acordo de 1990Acentuação gráfica e o acordo de 1990
Acentuação gráfica e o acordo de 1990ma.no.el.ne.ves
 
Processor, Compiler and Python Programming Language
Processor, Compiler and Python Programming LanguageProcessor, Compiler and Python Programming Language
Processor, Compiler and Python Programming Languagearumdapta98
 
Ο τόπος μου
Ο τόπος μουΟ τόπος μου
Ο τόπος μου14Dimotiko
 
Exercícios sobre intertextualidades
Exercícios sobre intertextualidadesExercícios sobre intertextualidades
Exercícios sobre intertextualidadesma.no.el.ne.ves
 
A poesia de cláudio manuel da costa
A poesia de cláudio manuel da costaA poesia de cláudio manuel da costa
A poesia de cláudio manuel da costama.no.el.ne.ves
 
Python - Telegram
Python - TelegramPython - Telegram
Python - TelegramWidoyo PH
 
Computer vision, machine, and deep learning
Computer vision, machine, and deep learningComputer vision, machine, and deep learning
Computer vision, machine, and deep learningIgi Ardiyanto
 
BIFM’s Sustainability Survey 2016: Where are we 10 years on?
BIFM’s Sustainability Survey 2016: Where are we 10 years on?BIFM’s Sustainability Survey 2016: Where are we 10 years on?
BIFM’s Sustainability Survey 2016: Where are we 10 years on?EMEX
 
Proposta de produção de editorial
Proposta de produção de editorialProposta de produção de editorial
Proposta de produção de editorialma.no.el.ne.ves
 
clean code for high quality software
clean code for high quality softwareclean code for high quality software
clean code for high quality softwareArif Huda
 
Iodata, Qlik Solution Provider in Projektkooperation zum Thema Industrie 4.0
Iodata, Qlik Solution Provider in Projektkooperation zum Thema Industrie 4.0Iodata, Qlik Solution Provider in Projektkooperation zum Thema Industrie 4.0
Iodata, Qlik Solution Provider in Projektkooperation zum Thema Industrie 4.0Iodata GmbH
 
How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksSlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShareSlideShare
 

Viewers also liked (20)

Cbbd 2011 cover 3 back insider
Cbbd 2011 cover 3 back insiderCbbd 2011 cover 3 back insider
Cbbd 2011 cover 3 back insider
 
Presentazione e twinning Pozzallo
Presentazione e twinning PozzalloPresentazione e twinning Pozzallo
Presentazione e twinning Pozzallo
 
h3fa1 NadineLyon frans ppt
h3fa1 NadineLyon frans ppth3fa1 NadineLyon frans ppt
h3fa1 NadineLyon frans ppt
 
Introduction to RxJava on Android
Introduction to RxJava on AndroidIntroduction to RxJava on Android
Introduction to RxJava on Android
 
Acentuação gráfica e o acordo de 1990
Acentuação gráfica e o acordo de 1990Acentuação gráfica e o acordo de 1990
Acentuação gráfica e o acordo de 1990
 
Mi proyecto de vida Daniela Ruiz
Mi proyecto de vida Daniela RuizMi proyecto de vida Daniela Ruiz
Mi proyecto de vida Daniela Ruiz
 
Processor, Compiler and Python Programming Language
Processor, Compiler and Python Programming LanguageProcessor, Compiler and Python Programming Language
Processor, Compiler and Python Programming Language
 
N18
N18N18
N18
 
Ο τόπος μου
Ο τόπος μουΟ τόπος μου
Ο τόπος μου
 
Exercícios sobre intertextualidades
Exercícios sobre intertextualidadesExercícios sobre intertextualidades
Exercícios sobre intertextualidades
 
Apostila gramatica exercícios portugues ple
Apostila gramatica exercícios portugues pleApostila gramatica exercícios portugues ple
Apostila gramatica exercícios portugues ple
 
A poesia de cláudio manuel da costa
A poesia de cláudio manuel da costaA poesia de cláudio manuel da costa
A poesia de cláudio manuel da costa
 
Python - Telegram
Python - TelegramPython - Telegram
Python - Telegram
 
Computer vision, machine, and deep learning
Computer vision, machine, and deep learningComputer vision, machine, and deep learning
Computer vision, machine, and deep learning
 
BIFM’s Sustainability Survey 2016: Where are we 10 years on?
BIFM’s Sustainability Survey 2016: Where are we 10 years on?BIFM’s Sustainability Survey 2016: Where are we 10 years on?
BIFM’s Sustainability Survey 2016: Where are we 10 years on?
 
Proposta de produção de editorial
Proposta de produção de editorialProposta de produção de editorial
Proposta de produção de editorial
 
clean code for high quality software
clean code for high quality softwareclean code for high quality software
clean code for high quality software
 
Iodata, Qlik Solution Provider in Projektkooperation zum Thema Industrie 4.0
Iodata, Qlik Solution Provider in Projektkooperation zum Thema Industrie 4.0Iodata, Qlik Solution Provider in Projektkooperation zum Thema Industrie 4.0
Iodata, Qlik Solution Provider in Projektkooperation zum Thema Industrie 4.0
 
How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & Tricks
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Similar to Implementasi Concurrency dan Parallellism di Python

Presentasi komputasi Pararel dan Terdistribusi
Presentasi komputasi Pararel dan TerdistribusiPresentasi komputasi Pararel dan Terdistribusi
Presentasi komputasi Pararel dan TerdistribusiRahmawan06
 
ini95_20230321085805_Modul-4_Proses.pptx
ini95_20230321085805_Modul-4_Proses.pptxini95_20230321085805_Modul-4_Proses.pptx
ini95_20230321085805_Modul-4_Proses.pptxakunoo
 
Modul pertemuan 2
Modul pertemuan 2Modul pertemuan 2
Modul pertemuan 2Al Cahyadi
 
Proses di Sistem Operasi
Proses di Sistem OperasiProses di Sistem Operasi
Proses di Sistem Operasieddie Ismantoe
 
Tugas Sorting Algoritma - Yoki satria
Tugas Sorting Algoritma - Yoki satriaTugas Sorting Algoritma - Yoki satria
Tugas Sorting Algoritma - Yoki satriayoki satria
 
MultiProgramming and Time Sharing
MultiProgramming and Time SharingMultiProgramming and Time Sharing
MultiProgramming and Time SharingTri Sugihartono
 
 Manajemen memory dan Swapping
 Manajemen memory dan Swapping Manajemen memory dan Swapping
 Manajemen memory dan SwappingEdho Pratama
 
Modul SO : Pengenalan Sistem Operasi
Modul SO : Pengenalan Sistem OperasiModul SO : Pengenalan Sistem Operasi
Modul SO : Pengenalan Sistem OperasiDEDE IRYAWAN
 
Tugas akhir automation ansible final
Tugas akhir automation ansible finalTugas akhir automation ansible final
Tugas akhir automation ansible finalRakha Fauzi
 
Bernis Sagita - Manajemen proses
Bernis Sagita - Manajemen prosesBernis Sagita - Manajemen proses
Bernis Sagita - Manajemen prosesbelajarkomputer
 
13. sistem terdistribusi (dha13)
13. sistem terdistribusi (dha13)13. sistem terdistribusi (dha13)
13. sistem terdistribusi (dha13)khalghy
 

Similar to Implementasi Concurrency dan Parallellism di Python (20)

Bab 4
Bab 4Bab 4
Bab 4
 
Chapter9.os
Chapter9.osChapter9.os
Chapter9.os
 
Pertemuan ke 3
Pertemuan ke 3Pertemuan ke 3
Pertemuan ke 3
 
Kelompok 1
Kelompok 1Kelompok 1
Kelompok 1
 
Pert.3 proses dan thread
Pert.3 proses dan threadPert.3 proses dan thread
Pert.3 proses dan thread
 
Os ppt.3
Os ppt.3Os ppt.3
Os ppt.3
 
Presentasi komputasi Pararel dan Terdistribusi
Presentasi komputasi Pararel dan TerdistribusiPresentasi komputasi Pararel dan Terdistribusi
Presentasi komputasi Pararel dan Terdistribusi
 
ini95_20230321085805_Modul-4_Proses.pptx
ini95_20230321085805_Modul-4_Proses.pptxini95_20230321085805_Modul-4_Proses.pptx
ini95_20230321085805_Modul-4_Proses.pptx
 
Modul pertemuan 2
Modul pertemuan 2Modul pertemuan 2
Modul pertemuan 2
 
Proses di Sistem Operasi
Proses di Sistem OperasiProses di Sistem Operasi
Proses di Sistem Operasi
 
Tugas Sorting Algoritma - Yoki satria
Tugas Sorting Algoritma - Yoki satriaTugas Sorting Algoritma - Yoki satria
Tugas Sorting Algoritma - Yoki satria
 
MultiProgramming and Time Sharing
MultiProgramming and Time SharingMultiProgramming and Time Sharing
MultiProgramming and Time Sharing
 
 Manajemen memory dan Swapping
 Manajemen memory dan Swapping Manajemen memory dan Swapping
 Manajemen memory dan Swapping
 
Modul SO : Pengenalan Sistem Operasi
Modul SO : Pengenalan Sistem OperasiModul SO : Pengenalan Sistem Operasi
Modul SO : Pengenalan Sistem Operasi
 
Sister 05 - proses
Sister   05 - prosesSister   05 - proses
Sister 05 - proses
 
algoritma
algoritmaalgoritma
algoritma
 
Tugas 4 - Rekayasa Web
Tugas 4 - Rekayasa WebTugas 4 - Rekayasa Web
Tugas 4 - Rekayasa Web
 
Tugas akhir automation ansible final
Tugas akhir automation ansible finalTugas akhir automation ansible final
Tugas akhir automation ansible final
 
Bernis Sagita - Manajemen proses
Bernis Sagita - Manajemen prosesBernis Sagita - Manajemen proses
Bernis Sagita - Manajemen proses
 
13. sistem terdistribusi (dha13)
13. sistem terdistribusi (dha13)13. sistem terdistribusi (dha13)
13. sistem terdistribusi (dha13)
 

Recently uploaded

Transfer Massa dan Panas Teknik Kimia Industri
Transfer Massa dan Panas Teknik Kimia IndustriTransfer Massa dan Panas Teknik Kimia Industri
Transfer Massa dan Panas Teknik Kimia Industririzwahyung
 
PPT manajemen Konstruksi ahli madya bidang keahlian manajemen konstruksi
PPT manajemen Konstruksi ahli madya bidang keahlian manajemen konstruksiPPT manajemen Konstruksi ahli madya bidang keahlian manajemen konstruksi
PPT manajemen Konstruksi ahli madya bidang keahlian manajemen konstruksimanotartamba555
 
Ahli Muda Teknik Bangunan GEdung Jenjang 7 - Samet Kurnianto.pptx
Ahli Muda Teknik Bangunan GEdung Jenjang 7 - Samet Kurnianto.pptxAhli Muda Teknik Bangunan GEdung Jenjang 7 - Samet Kurnianto.pptx
Ahli Muda Teknik Bangunan GEdung Jenjang 7 - Samet Kurnianto.pptxarifyudianto3
 
PPT Manajemen Konstruksi Unsur Unsur Proyek 1.pptx
PPT Manajemen Konstruksi Unsur Unsur Proyek 1.pptxPPT Manajemen Konstruksi Unsur Unsur Proyek 1.pptx
PPT Manajemen Konstruksi Unsur Unsur Proyek 1.pptxHamidNurMukhlis
 
Kelompok 5 PPt Penerapan Teori Fuzzy.pdf
Kelompok 5 PPt Penerapan Teori Fuzzy.pdfKelompok 5 PPt Penerapan Teori Fuzzy.pdf
Kelompok 5 PPt Penerapan Teori Fuzzy.pdfVardyFahrizal
 
PPT PENILAIAN PERKERASAN JALAN Metode PCI.pptx
PPT PENILAIAN PERKERASAN JALAN Metode PCI.pptxPPT PENILAIAN PERKERASAN JALAN Metode PCI.pptx
PPT PENILAIAN PERKERASAN JALAN Metode PCI.pptxYehezkielAkwila3
 
Materi Safety Talk Persiapan Libur Lebaran
Materi Safety Talk Persiapan Libur LebaranMateri Safety Talk Persiapan Libur Lebaran
Materi Safety Talk Persiapan Libur LebaranSintaMarlina3
 
PPT PPT Pelaksana lapangan Pekerasan Jalan Beton lvl 6.pptx
PPT PPT Pelaksana lapangan Pekerasan Jalan Beton lvl 6.pptxPPT PPT Pelaksana lapangan Pekerasan Jalan Beton lvl 6.pptx
PPT PPT Pelaksana lapangan Pekerasan Jalan Beton lvl 6.pptxdpcaskonasoki
 
Sesi_02_Rangkaian_Hubungan_Seri_Paralel.pptx
Sesi_02_Rangkaian_Hubungan_Seri_Paralel.pptxSesi_02_Rangkaian_Hubungan_Seri_Paralel.pptx
Sesi_02_Rangkaian_Hubungan_Seri_Paralel.pptx185TsabitSujud
 
QCC MANAJEMEN TOOL MAINTENANCE (MAINTENANCE TEAM).pptx
QCC MANAJEMEN TOOL MAINTENANCE (MAINTENANCE TEAM).pptxQCC MANAJEMEN TOOL MAINTENANCE (MAINTENANCE TEAM).pptx
QCC MANAJEMEN TOOL MAINTENANCE (MAINTENANCE TEAM).pptxdjam11
 

Recently uploaded (10)

Transfer Massa dan Panas Teknik Kimia Industri
Transfer Massa dan Panas Teknik Kimia IndustriTransfer Massa dan Panas Teknik Kimia Industri
Transfer Massa dan Panas Teknik Kimia Industri
 
PPT manajemen Konstruksi ahli madya bidang keahlian manajemen konstruksi
PPT manajemen Konstruksi ahli madya bidang keahlian manajemen konstruksiPPT manajemen Konstruksi ahli madya bidang keahlian manajemen konstruksi
PPT manajemen Konstruksi ahli madya bidang keahlian manajemen konstruksi
 
Ahli Muda Teknik Bangunan GEdung Jenjang 7 - Samet Kurnianto.pptx
Ahli Muda Teknik Bangunan GEdung Jenjang 7 - Samet Kurnianto.pptxAhli Muda Teknik Bangunan GEdung Jenjang 7 - Samet Kurnianto.pptx
Ahli Muda Teknik Bangunan GEdung Jenjang 7 - Samet Kurnianto.pptx
 
PPT Manajemen Konstruksi Unsur Unsur Proyek 1.pptx
PPT Manajemen Konstruksi Unsur Unsur Proyek 1.pptxPPT Manajemen Konstruksi Unsur Unsur Proyek 1.pptx
PPT Manajemen Konstruksi Unsur Unsur Proyek 1.pptx
 
Kelompok 5 PPt Penerapan Teori Fuzzy.pdf
Kelompok 5 PPt Penerapan Teori Fuzzy.pdfKelompok 5 PPt Penerapan Teori Fuzzy.pdf
Kelompok 5 PPt Penerapan Teori Fuzzy.pdf
 
PPT PENILAIAN PERKERASAN JALAN Metode PCI.pptx
PPT PENILAIAN PERKERASAN JALAN Metode PCI.pptxPPT PENILAIAN PERKERASAN JALAN Metode PCI.pptx
PPT PENILAIAN PERKERASAN JALAN Metode PCI.pptx
 
Materi Safety Talk Persiapan Libur Lebaran
Materi Safety Talk Persiapan Libur LebaranMateri Safety Talk Persiapan Libur Lebaran
Materi Safety Talk Persiapan Libur Lebaran
 
PPT PPT Pelaksana lapangan Pekerasan Jalan Beton lvl 6.pptx
PPT PPT Pelaksana lapangan Pekerasan Jalan Beton lvl 6.pptxPPT PPT Pelaksana lapangan Pekerasan Jalan Beton lvl 6.pptx
PPT PPT Pelaksana lapangan Pekerasan Jalan Beton lvl 6.pptx
 
Sesi_02_Rangkaian_Hubungan_Seri_Paralel.pptx
Sesi_02_Rangkaian_Hubungan_Seri_Paralel.pptxSesi_02_Rangkaian_Hubungan_Seri_Paralel.pptx
Sesi_02_Rangkaian_Hubungan_Seri_Paralel.pptx
 
QCC MANAJEMEN TOOL MAINTENANCE (MAINTENANCE TEAM).pptx
QCC MANAJEMEN TOOL MAINTENANCE (MAINTENANCE TEAM).pptxQCC MANAJEMEN TOOL MAINTENANCE (MAINTENANCE TEAM).pptx
QCC MANAJEMEN TOOL MAINTENANCE (MAINTENANCE TEAM).pptx
 

Implementasi Concurrency dan Parallellism di Python

  • 1. Kopdar Python ID - Jogja Sabtu, 26 November 2016 @Sebangsa HQ Parallelism dan Concurrency
  • 2. Perkenalkan • Isna Rahmatul Khoir Programmer Backend di PT Sebangsa Bersama
  • 3. Apa itu concurrency/ concurrent processing? • Desain alur eksekusi yang memungkinkan beberapa task/ process berjalan bersamaan. • Bisa dengan/ tanpa pemrosesan secara parallell.
  • 4. Apa itu concurrency/ concurrent processing? • Contoh kasus: – Ketika ada user yang membalas suatu postingan, ada proses insert data ke database, mengirimkan push notification (GCM) ke pembuat postingan utama dan mengirim email notifikasi ke pembuat postingan utama. Agar user segera mendapatkan response maka proses- proses tersebut dijalankan secara concurrent. – Aplikasi yang bisa tetap menerima input dari user selama background process sedang berjalan (lihat contoh kode di slide 9)
  • 5. Apa itu concurrency/ concurrent processing? • Gambaran flow concurrent process – http://divan.github.io/demos/gifs/hello.gif
  • 6. Apa itu parallelism/ parallel processing? • Memperbanyak jalur/ worker untuk memproses banyak data secara bersamaan. • Dipengaruhi jumlah worker (Semakin banyak worker maka semua task semakin cepat selesai*). * perlu penilitian terlebih dahulu jumlah worker yang optimal sesuai spesifikasi sistem dan jenis task yang dikerjakan.
  • 7. Apa itu parallelism/ parallel processing? • Contoh kasus: • Untuk mengambil data dari beberapa sumber rss menggunakan library requests, agar tidak perlu menunggu satu sama lain selesai, maka dibuatkan beberapa pool worker agar semua proses dapat berjalan bersamaan. (lihat contoh kode di slide 9)
  • 8. Apa itu parallelism/ parallel processing? • Gambaran flow parallel processing – http://divan.github.io/demos/gifs/parallelism1.gif
  • 9. Source code demo • Sequence Program – https://gist.github.com/irkho/0771932e90aaf9ebbae3c28 • Parallel Program – https://gist.github.com/irkho/46af21da853960d7ebb3d7e • Concurrent Program – https://gist.github.com/irkho/0d77a2bbc31f621522ec6fa