Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, ©

Presentasi serupa


Presentasi berjudul: "Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, ©"— Transcript presentasi:

1 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.1 Komputer Paralel Chapter 1

2 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.2 Tuntutan Terhadap Kecepatan Komputasi •Tuntutan yang terus mendesak agar sistem komputer menunjukkan kecepatan komputasi yang lebih besar dari saat ini. •Bidang yang membutuhkan kecepatan komputasi yang tinggi mencakup pemodelan numerik dan simulasi masalah ilmiah dan teknik. •Komputasi harus diselesaikan dalam waktu yang “masuk akal”.

3 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.3 Masalah yang Merupakan Tantangan Besar … adalah masalah yang tidak dapat diselesaikan dalam waktu yang masuk akal dengan kecepatan komputer yang sekarang … → berkisar sekitar 10 tahun waktu eksekusi. Contoh •Pemodelan struktur DNA yang besar •Peramalan cuaca global •Pemodelan gerakan benda luar angkasa.

4 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.4 Peramalan Cuaca •Atmosfir dimodelkan dengan membaginya menjadi sel-sel 3-dimensi. •Perhitungan setiap sel diulang-ulang to memodelkan perjalanan waktu.

5 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.5 Contoh Peramalan Cuaca Global •Misalkan keseluruhan atmosfir global dibagi menjadi sel sebesar 1 mile  1 mile  1 mile dengan ketinggian 10 miles (tinggi 10 sel) - sekitar 5  10 8 sel. •Misalkan setiap perhitungan membutuhkan 200 operasi floating point. Dalam satu tahap, diperlukan operasi floating point. •Untuk meramalkan cuaca 7 hari dengan interval 1 menit, komputer dengan kecepatan 1Gflops (10 9 operasi floating point / detik) membutuhkan waktu 10 6 detik atau lebih dari 10 hari. •Untuk melakukan perhitungan tersebut dalam waktu 5 menit dibutuhkan komputer yang beroperasi dengan kecepatan 3.4 Tflops (3.4  operasi floating point / detik).

6 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.6 Pemodelan Gerakan Benda Luar Angkasa •Setiap benda saling menarik dengan gaya gravitasi. Gerakan setiap benda diprediksi dengan menghitung gaya total pada setiap benda. •Jika ada N benda, diperlukan perhitungan N - 1 gaya untuk setiap benda, atau sekitar N 2 perhitungan. (N log 2 N untuk algoritma aproksimasi yang efisien.) •Setelah menentukan posisi baru untuk setiap benda, perhitungan diulang kembali.

7 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.7 •Satu galaksi bisa memiliki sekitar bintang. •Bahkan jika satu perhitungan dilakukan dalam waktu 1 ms (angka yang sangat optimistik), diperlukan 10 9 tahun untuk satu iterasi dengan menggunakan algoritma N 2 algorithm dan hampir satu tahun untuk satu iterasi dengan menggunakan algoritma aproksimasi N log 2 N yang efisien.

8 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.8 Simulasi Astrofisika N-benda oleh Scott Linssen (mahasiswa undergraduate UNC-Charlotte).

9 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved. 1.9 Komputasi Paralel •Menggunakan lebih dari 1 komputer, atau komputer dengan lebih dari 1 prosesor, untuk menyelesaikan masalah. Motif •Biasanya komputasi yang lebih cepat – ide yang sangat sederhana – bahwa n komputer yang beroperasi secara simultan dapat memberikan hasil n kali lebih cepat – walaupun tidak akan mencapai n kali lebih cepat dengan berbagai alasan. •Motif lain mencakup: toleransi kesalahan, kapasitas memori yang tersedia lebih besar,...

10 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Latar Belakang •Komputer paralel – komputer dengan lebih dari satu prosesor – dan pemrogramannya – pemrograman paralel – telah ada selama lebih dari 40 tahun.

11 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Gill menulis pada tahun 1958: “... Dengan demikian tidak ada hal baru dalam gagasan pemrograman paralel, selain penerapannya pada komputer. Penulis tidak menganggap akan ada kesulitan besar dalam perluasannya pada komputer. Tidak diharapkan bahwa teknik pemrograman yang diperlukan akan ditemukan dalam semalam. Banyak eksperimen yang masih harus dilakukan. Bagaimanapun, teknik yang biasanya digunakan dalam pemrograman saat ini didapat dengan usaha keras beberapa tahun yang lalu. Pada kenyataannya, munculnya pemrograman paralel bisa berperan dalam menghidupkan kembali semangat perintis dalam pemrograman yang tampaknya menjadi membosankan dan hanya rutin saja...” Gill, S. (1958), “Parallel Programming,” The Computer Journal, vol. 1, April, pp

12 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Faktor Speedup dengan t s adalah waktu eksekusi pada prosesor tunggal dan t p adalah waktu eksekusi pada multiprosesor. S(p) menunjukkan bertambahnya kecepatan dengan menggunakan multiprosesor. Gunakan algoritma sekuensial terbaik dengan sistem prosesor tunggal. Algoritma yang mendasari untuk implementasi paralel bisa (dan biasanya) berbeda. S(p) = Waktu eksekusi dengan 1 prosesor (algoritma sekuensial terbaik) Waktu eksekusi multiprosesor dengan p prosesor tsts tptp

13 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Faktor speedup juga bisa dinyatakan dalam langkah komputasi: Kompleksitas waktu juga dapat diperluas dengan komputasi paralel. S(p) = Jumlah langkah komputasi dengan satu prosesor Jumlah langkah komputasi paralel dengan p prosesor

14 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Speedup Maksimum Speedup maksimum biasanya p dengan p prosesor (linear speedup). Dapat dicapai superlinear speedup (lebih besar dari p) tetapi biasanya dengan kondisi tertentu seperti: • Memori ekstra pada sistem multiprosesor • Algoritma nondeterministik

15 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Speedup Maksimum Hukum Amdahl Bagian serial Bagian yang dapat diparalelisasi (a) Satu prosesor (b) Multiple prosesor ft s (1- f)t s t s - f)t s /p t p p prosesor

16 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Faktor speedup dinyatakan dengan: Persamaan ini dikenal sebagai hukum Amdahl

17 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Speedup terhadap jumlah prosesor f = 20% f = 10% f = 5% f = 0% Jumlah prosesor,p

18 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Bahkan dengan jumlah prosesor tak terbatas, speedup maksimum tetap terbatas sampai 1/f. Contoh Dengan hanya 5% komputasi yang serial, speedup maksimum adalah 20, berapapun jumlah prosesor.

19 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Contoh Superlinear Speedup - Searching (a) Searching setiap sub-space secara sekuensial t s t s /p StartWaktu  t Solusi ditemukan xt s /p Sub-space search x indeterminate

20 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved (b) Searching setiap sub-space secara paralel Solusi ditemukan  t

21 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Dengan demikian, Speedup dinyatakan dengan S(p)S(p) x t s p  t  + t  =

22 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Worst case untuk search sekuensial dengan solusi ditemukan di sub-space terakhir. Pada kasus ini, versi paralel memberikan keuntungan terbesar, yaitu S(p)S(p) p1– p t s t  +  t   = as  t tends to zero

23 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Keuntungan terkecil versi paralel ialah jika solusi ditemukan pada sub-space pertama dari search sekuensial, yaitu Speed-up yang sebenarnya bergantung pada subspace yang mana yang menyimpan solusi, tetapi mungkin banyak sekali. S(p) = t  t  = 1

24 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Tipe Komputer Paralel Dua tipe utama: •Shared memory multiprocessor •Distributed memory multicomputer

25 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Shared Memory Multiprocessor

26 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Komputer Konvensional Terdiri dari satu prosesor yang mengeksekusi program yang tersimpan pada memori (utama): Setiap lokasi memori utama ditentukan oleh alamatnya. Alamat dimulai dari 0 sampai 2 b - 1 jika ada b bit (digit biner) alamat. Memori Utama Prosesor Instruksi(ke prosesor) Data (ke atau dari prosesor)

27 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Shared Memory Multiprocessor System Cara natural untuk mengembangkan model prosesor tunggal - multiple processor dihubungkan ke multiple memory modules, sedemikian sehingga setiap prosesor dapat mengakses memory module yang manapun: Processors Interconnection network Memory module One address space

28 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Ilustrasi shared memory multiprocessor kecil yang disederhanakan Contoh: •Dual Pentium •Quad Pentium ProcessorsShared memory Bus

29 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Quad Pentium Shared Memory Multiprocessor Processor L2 Cache Bus interface L1 cache Processor L2 Cache Bus interface L1 cache Processor L2 Cache Bus interface L1 cache Processor L2 Cache Bus interface L1 cache Memory controller Memory I/O interface I/O bus Processor/ memory bus Shared memory

30 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Pemrograman Shared Memory Multiprocessors •Threads - programmer membagi program menjadi urutan paralel individu (threads), masing-masing dapat mengakses variabel yang dideklarasikan di luar thread. Contoh: Pthreads •Bahasa pemrograman sekuensial dengan preprocessor compiler directives untuk mendeklarasikan variabel yang dipakai bersama (shared variables) dan menspesifikasi paralelisme. Contoh: OpenMP – standard industri – membutuhkan compiler OpenMP

31 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved •Bahasa pemrograman sekuensial dengan syntax tambahan untuk mendeklarasikan variabel yang dipakai bersama dan menspesifikasi paralelisme. Contoh: UPC (Unified Parallel C) – membutuhkan compiler compiler. •Bahasa pemrograman paralel dengan syntax untuk menyatakan paralelisme - compiler membuat executable code untuk setiap prosesor (sekarang tidak umum) •Bahasa pemrograman sekuensial dan meminta parallelizing compiler untuk mengubahnya menjadi parallel executable code. - sekarang tidak umum

32 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Message-Passing Multicomputer Komputer lengkap dihubungkan melalui interconnection network: Processor Interconnection network Local Computers Messages memory

33 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Interconnection Networks •Interkoneksi yang terbatas dan lengkap •Mesh 2- dan 3-dimensi •Hypercube (sekarang tidak umum) •Menggunakan switch: –Crossbar –Tree –Multistage interconnection network

34 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Array dua-dimensi (mesh) Juga tiga-dimensi – digunakan pada beberapa sistem dengan kinerja tinggi. Links Computer/ processor

35 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Hypercube Tiga Dimensi

36 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Hypercube Empat Dimensi Hypercube yang populer pada tahun 1980-an – sekarang tidak

37 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Crossbar switch Switches Processors Memories

38 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Tree Switch element Root Links Processors

39 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Multistage Interconnection Network Example: Omega network Inputs Outputs 2´ 2 switch elements (straight-through or crossover connections)

40 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Distributed Shared Memory Membuat main memory dari kelompok interconnected computers seakan-akan seperti satu memory dengan satu address space. Selanjutnya dapat digunakan teknik pemrograman shared memory. Processor Interconnection network Shared Computers Messages memory

41 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Klasifikasi Flynn Flynn (1966) membuat klasifikasi komputer berdasarkan aliran instruksi dan aliran data: –Single instruction stream-single data stream (SISD) computer Komputer prosesor tunggal – dibuat satu aliran instruksi dari program. Instruksi beroperasi pada satu aliran data.

42 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Multiple Instruction Stream-Multiple Data Stream (MIMD) Computer Sistem multiprosesor general-purpose – setiap prosesor memiliki program sendiri dan dibuat satu aliran instruksi dari setiap program untuk setiap prosesor. Setiap instruksi beroperasi pada data yang berbeda. Multiprosesor shared memory dan message- passing yang telah dibahas sebelum ini termasuk dalam klasifikasi MIMD.

43 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Single Instruction Stream-Multiple Data Stream (SIMD) Computer •Komputer yang dirancang khusus – datu aliran instruksi dari satu program, tetapi terdapat banyak aliran data. Instruksi dari program di-broadcast ke lebih dari satu prosesor. Setiap prosesor mengeksekusi instruksi yang sama secara sinkron, tetapi menggunakan data yang berbeda. •Dikembangkan karena banyak aplikasi penting yang beroperasi pada banyak data.

44 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Struktur Multiple Program Multiple Data (MPMD) Termasuk klasifikasi MIMD, setiap prosesor memiliki program sendiri untuk dieksekusi: Program Processor Data Program Processor Data Instructions

45 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Struktur Single Program Multiple Data (SPMD) Terdapat satu source program yang copy-nya dieksekusi oleh setiap prosesor secara independen dan tidak sinkron. Source program dapat dibuat sedemikian rupa sehingga bagian-bagiannya dieksekusi oleh komputer-komputer tertentu bergantung pada identitas komputer tersebut.

46 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Networked Computers sebagai Computing Platform •Jaringan komputer menjadi alternatif yang sangat menarik bagi superkomputer dan sistem komputer paralel yang mahal untuk melakukan for high- performance computing di awal tahun 1990-an. •Beberapa proyek awal: – Berkeley NOW (network of workstations) project. –NASA Beowulf project.

47 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Keuntungan utama: •Workstation dan PC berkinerja tinggi tersedia dengan harga murah. •Prosesor terbaru dapat digabungkan dengan sistem jika telah tersedia. •Software yang sudah ada dapat dipakai atau dimodifikasi.

48 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Software Tools for Clusters •Berdasarkan pada Message Passing Parallel Programming: •Parallel Virtual Machine (PVM) – dikembangkan pada akhir 1980-an. Menjadi sangat populer. •Message-Passing Interface (MPI) – standardnya didefinisikan pada tahun 1990-an. •Keduanya menyediakan satu set user-level library untuk message passing. Digunakan dengan bahasa pemrograman umum (C, C++,...).

49 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Beowulf Clusters* •Sekelompok interconnected “commodity” computers yang dapat mencapai kinerja tinggi dengan harga murah. •Biasanya menggunakan commodity interconnects - high speed Ethernet, dan Linux OS. * Beowulf merupakan nama yang diberikan oleh NASA Goddard Space Flight Center cluster project.

50 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Cluster Interconnects •Awalnya merupakan fast Ethernet on low cost clusters •Gigabit Ethernet - easy upgrade path More Specialized/Higher Performance •Myrinet Gbits/sec - disadvantage: single vendor •cLan •SCI (Scalable Coherent Interface) •QNet •Infiniband - may be important as infininband interfaces may be integrated on next generation PCs

51 Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, © 2004 Pearson Education Inc. All rights reserved Dedicated cluster with a master node Dedicated Cluster User Switch Master node Compute nodes Up link 2nd Ethernet interface External network


Download ppt "Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, ©"

Presentasi serupa


Iklan oleh Google