Komputasi paralel, dikenal juga sebagai pemrograman paralel, adalah proses di mana masalah komputasi yang besar dipecah menjadi masalah yang lebih kecil yang dapat diselesaikan secara bersamaan oleh beberapa prosesor.
Prosesor berkomunikasi menggunakan memori bersama dan solusi mereka digabungkan menggunakan algoritma. Komputasi paralel secara signifikan lebih cepat daripada komputasi serial (dikenal juga sebagai komputasi serial), pendahulunya yang menggunakan prosesor tunggal untuk menyelesaikan masalah secara berurutan.
Ketika komputer pertama kali ditemukan pada akhir tahun 1940-an dan 1950-an, perangkat lunak diprogram untuk menyelesaikan masalah secara berurutan, yang membatasi kecepatan pemrosesan. Untuk memecahkan masalah lebih cepat, algoritma harus dibangun dan diimplementasikan mengikuti serangkaian instruksi pada unit pemrosesan pusat (CPU). Instruksi lain baru dapat diselesaikan setelah satu instruksi dijalankan.
Dimulai pada tahun 1950-an, komputasi paralel memungkinkan komputer menjalankan kode lebih cepat dan lebih efisien dengan memecah masalah komputasi menjadi masalah yang lebih kecil dan serupa. Semua masalah ini yang dikenal sebagai algoritma paralel kemudian didistribusikan ke beberapa prosesor.
Saat ini, sistem paralel telah berevolusi ke titik di mana sistem ini digunakan di berbagai komputer, membuat tugas sehari-hari seperti memeriksa email atau mengirim pesan teks ratusan kali lebih cepat daripada jika dilakukan menggunakan komputasi serial. Selain memberi daya pada perangkat pribadi seperti laptop dan ponsel pintar, sistem paralel juga memberi daya pada superkomputer tercanggih dan teknologi canggih seperti kecerdasan buatan (AI) dan Internet of Things (IoT).
Komputasi serial yang dikenal juga sebagai komputasi sekuensial adalah jenis komputasi di mana instruksi untuk menyelesaikan masalah komputasi diikuti satu per satu atau secara berurutan. Dasar-dasar komputasi serial mengharuskan sistem hanya menggunakan satu prosesor daripada mendistribusikan masalah ke beberapa prosesor.
Seiring perkembangan ilmu komputer, komputasi paralel diperkenalkan karena komputasi serial memiliki kecepatan lambat. Sistem operasi yang menggunakan pemrograman paralel memungkinkan komputer untuk menjalankan proses dan melakukan perhitungan secara bersamaan, sebuah teknik yang dikenal sebagai pemrosesan paralel.
Pemrosesan paralel dan komputasi paralel adalah istilah yang sangat mirip, tetapi ada beberapa perbedaan yang perlu diperhatikan. Pemrosesan paralel, atau paralelisme, memisahkan waktu proses menjadi bagian-bagian yang lebih kecil untuk dilakukan secara independen dan simultan menggunakan lebih dari satu prosesor. Jaringan komputer atau komputer dengan lebih dari satu prosesor biasanya diperlukan untuk mengumpulkan kembali data setelah persamaan diselesaikan pada beberapa prosesor.
Meskipun pemrosesan paralel dan komputasi paralel terkadang digunakan secara bergantian, pemrosesan paralel mengacu pada jumlah inti dan CPU yang berjalan bersama komputer, sedangkan komputasi paralel mengacu pada apa yang dilakukan perangkat lunak untuk memfasilitasi proses tersebut.
Buletin industri
Tetap terinformasi tentang tren industri yang paling penting—dan menarik—tentang AI, otomatisasi, data, dan di luarnya dengan buletin Think. Lihat Pernyataan Privasi IBM®.
Langganan Anda akan disediakan dalam bahasa Inggris. Anda akan menemukan tautan berhenti berlangganan di setiap buletin. Anda dapat mengelola langganan atau berhenti berlangganan di sini. Lihat Pernyataan Privasi IBM® kami untuk informasi lebih lanjut.
Kecepatan dan efisiensi komputasi paralel mendukung beberapa terobosan teknologi terpenting dalam setengah abad terakhir, termasuk ponsel pintar, komputasi berkinerja tinggi (HPC), AI, dan machine learning (ML). Dengan memungkinkan komputer untuk memecahkan masalah yang lebih kompleks dengan lebih cepat dan menggunakan sumber daya yang lebih sedikit, komputasi paralel juga merupakan pendorong penting transformasi digital bagi banyak perusahaan.
Ketertarikan pada komputasi paralel dimulai ketika programer komputer dan produsen mulai mencari cara untuk membuat prosesor yang lebih hemat daya. Pada 1950-an, 1960-an, dan 1970-an, para pemimpin sains dan teknik membangun komputer yang menggunakan ruang memori bersama dan menjalankan operasi paralel pada kumpulan data untuk pertama kalinya.
Upaya ini memuncak pada proyek terobosan Caltech Concurrent Computation, yang memperkenalkan jenis komputasi paralel baru pada tahun 1980-an dengan menggunakan 64 prosesor Intel.
Pada 1990-an, superkomputer ASCI Red, menggunakan prosesor paralel masif (MPP), mencapai triliun operasi per detik yang belum pernah terjadi sebelumnya, mengantarkan era dominasi MPP dalam daya komputasi.1 Pada saat yang sama, klaster—sejenis komputasi paralel yang menghubungkan klaster komputer atau “node” pada jaringan komersial—diperkenalkan ke pasar, akhirnya menggantikan MPP untuk banyak aplikasi.
Komputasi paralel, khususnya prosesor dengan banyak inti dan unit pemrosesan grafis (GPU), tetap menjadi bagian penting dari ilmu komputer saat ini. GPU sering digunakan bersamaan dengan CPU untuk memperluas throughput data dan menjalankan lebih banyak perhitungan sekaligus yang mempercepat banyak aplikasi bisnis modern.
Sebelum komputasi paralel, komputasi serial memaksa prosesor tunggal untuk menyelesaikan masalah yang kompleks satu langkah demi satu langkah, memakan banyak waktu untuk tugas-tugas yang dapat diselesaikan oleh komputasi paralel hanya dalam beberapa detik. Misalnya, iPhone pertama menggunakan komputasi serial dan mungkin membutuhkan waktu satu menit untuk membuka aplikasi atau email. Saat ini, komputasi paralel—pertama kali digunakan di iPhone pada tahun 2011— secara signifikan mempercepat tugas-tugas tersebut.
Seiring dengan semakin matangnya komputasi dan semakin kompleksnya masalah yang dihadapi, sistem perlu melakukan ribuan, bahkan jutaan, tugas dalam sekejap. Model ML saat ini sangat bergantung pada komputasi paralel, menggunakan algoritma sangat kompleks yang diterapkan di beberapa prosesor. Dengan menggunakan komputasi serial, tugas-tugas ML akan memakan waktu lebih lama akibat kemacetan karena kemampuan komputasi ini yang hanya dapat melakukan satu perhitungan pada satu waktu pada satu prosesor.
Komputasi dan pemrosesan paralel memproses perhitungan intensif yang dilakukan pada kumpulan data besar dengan sangat cepat, memungkinkan kueri interaktif di balik analisis data. Dengan lebih dari satu kuintiliun byte informasi yang dihasilkan setiap hari, perusahaan dapat kesulitan menyaring informasi digital untuk mendapatkan insight yang relevan dan bermanfaat. Pemrosesan paralel menerapkan komputer dengan banyak inti ke struktur data dan menyaring data jauh lebih cepat daripada yang dapat dilakukan oleh komputer serial.
Berbekal komputasi paralel, komputer dapat menggunakan sumber daya jauh lebih efisien daripada komputasi serial. Sistem komputer paling mutakhir saat ini menerapkan beberapa inti dan prosesor, memungkinkan mereka untuk menjalankan beberapa program sekaligus dan melakukan lebih banyak tugas secara bersamaan.
Komputasi paralel mengacu pada berbagai jenis perangkat dan arsitektur komputer, mulai dari superkomputer hingga ponsel pintar di saku Anda. Pada tingkat yang paling kompleks, komputasi paralel menggunakan ratusan ribu inti untuk mengatasi masalah, seperti menemukan obat kanker baru atau membantu pencarian kecerdasan luar angkasa (SETI). Pada dasarnya, komputasi paralel membantu Anda mengirim email dari ponsel Anda lebih cepat daripada jika Anda menggunakan sistem komputasi serial.
Secara umum, ada tiga arsitektur unik yang digunakan dalam komputasi paralel: memori bersama, memori komputasi terdistribusi, dan memori hybrid. Setiap arsitektur beroperasi pada antarmuka pengiriman pesan (MPI) sendiri, sebuah standar untuk semua arsitektur komputasi paralel. MPI menguraikan protokol untuk program pengiriman pesan dalam bahasa pemrograman seperti C++ dan Fortran. MPI sumber terbuka telah menjadi kunci bagi pengembangan aplikasi dan perangkat lunak baru yang mengandalkan kemampuan komputasi paralel.
Arsitektur memori bersama digunakan pada aplikasi komputasi paralel yang umum digunakan sehari-hari, seperti laptop atau ponsel pintar. Dalam arsitektur memori bersama, komputer paralel mengandalkan beberapa prosesor untuk menghubungi sumber daya memori bersama yang sama.
Memori terdistribusi digunakan dalam arsitektur komputasi cloud, membuatnya umum digunakan di banyak aplikasi perusahaan. Dalam sistem terdistribusi untuk komputasi paralel, beberapa prosesor dengan sumber daya memori masing-masing dihubungkan melalui jaringan.
Superkomputer saat ini mengandalkan arsitektur memori hybrid, sistem komputasi paralel yang menggabungkan komputer dengan memori bersama pada jaringan memori terdistribusi. CPU yang tersambung dalam lingkungan memori hybrid dapat mengakses memori bersama dan tugas yang diberikan ke unit lain pada jaringan yang sama.
Selain tiga arsitektur utama, arsitektur komputer paralel lain yang kurang umum dirancang untuk menangani masalah yang lebih besar atau tugas yang sangat khusus. Ini termasuk prosesor vektor, untuk susunan data yang disebut "vektor", dan prosesor untuk komputasi tujuan umum pada unit pemrosesan grafis (GPGCU). Salah satunya, CUDA, antarmuka pemrograman aplikasi (API) GPGCU eksklusif yang dikembangkan oleh Nvidia, sangat penting pada pembelajaran mendalam (DL), teknologi yang mendukung sebagian besar aplikasi AI.
Ada empat jenis komputasi paralel, masing-masing dengan tujuan spesifiknya sendiri:
Paralelisme tingkat bit bergantung pada teknik di mana ukuran kata prosesor ditingkatkan dan jumlah instruksi yang harus dijalankan prosesor untuk menyelesaikan masalah dikurangi. Hingga tahun 1986, arsitektur komputer berkembang dengan meningkatkan paralelisme tingkat bit dari prosesor 4-bit menjadi 8-bit, 16-bit, 32-bit, dan 64-bit, dengan setiap generasi mengungguli generasi sebelumnya. Mungkin contoh yang paling terkenal dari kemajuan dalam paralelisme bit adalah Nintendo 64, yang merupakan aplikasi mainstream pertama yang menggunakan 64-bit.
Paralelisme tingkat instruksi (ILP) adalah jenis komputasi paralel di mana prosesor memilih instruksi mana yang akan dijalankan. Dalam ILP, prosesor dibuat untuk melakukan operasi tertentu secara bersamaan untuk meningkatkan optimalisasi sumber daya dan meningkatkan hasil.
Paralelisme tugas adalah jenis komputasi paralel yang membuat kode berjalan secara paralel di beberapa prosesor yang secara bersamaan menjalankan tugas pada data yang sama. Paralelisme tugas digunakan untuk mengurangi waktu serial dengan menjalankan tugas secara bersamaan; dalam pipelining, misalnya, di mana serangkaian tugas dilakukan pada satu kumpulan data.
Lebih canggih dari ILP, paralelisme tingkat superword (SLP) adalah taktik vektorisasi yang digunakan pada kode sebaris. Vektorisasi adalah proses komputasi paralel yang digunakan untuk menyelesaikan beberapa tugas serupa sekaligus, sehingga menghemat waktu dan sumber daya. SLP digunakan untuk mengidentifikasi instruksi skalar yang berlebihan dalam blok kode dan menggabungkannya ke dalam satu operasi superword.
Dari blockchain hingga ponsel pintar, konsol game, dan chatbot, komputasi paralel adalah bagian penting dari banyak teknologi yang menggerakkan dunia kita. Berikut adalah beberapa contohnya:
Banyak ponsel pintar mengandalkan pemrosesan paralel untuk menyelesaikan tugas mereka lebih cepat dan lebih efisien. Misalnya, iPhone 14 memiliki CPU 6-core dan GPU 5-core yang mendukung kemampuannya yang terdepan di pasar untuk menjalankan 17 triliun tugas per detik, tingkat kinerja yang tidak mungkin dilakukan menggunakan komputasi serial.
Teknologi blockchain, teknologi yang mendukung mata uang kripto, mesin pemungutan suara, perawatan kesehatan, dan banyak aplikasi canggih teknologi digital lainnya, bergantung pada komputasi paralel untuk menghubungkan beberapa komputer untuk memvalidasi transaksi dan input. Komputasi paralel memungkinkan transaksi dalam blockchain diproses secara bersamaan, bukan satu per satu, sehingga meningkatkan hasil dan membuatnya sangat dapat diskalakan dan efisien.
Laptop paling canggih saat ini, MacBook, ChromeBook, dan ThinkPad, menggunakan chip dengan beberapa inti pemrosesan, sebuah dasar paralelisme. Contoh prosesor dengan banyak inti termasuk Intel Core i5 dan HP Z8, yang memungkinkan pengguna untuk mengedit video secara real-time, menjalankan grafik 3D dan melakukan tugas-tugas kompleks lainnya yang membutuhkan sumber daya yang intensif.
Internet of Things (IoT) bergantung pada data yang dikumpulkan dari sensor yang terhubung ke internet. Setelah data dikumpulkan, komputasi paralel diperlukan untuk menganalisisnya untuk mendapatkan insight dan membantu sistem kompleks, seperti pembangkit listrik, bendungan, dan sistem lalu lintas, berfungsi. Komputasi serial tradisional tidak dapat menyaring data dengan cukup cepat agar IoT dapat bekerja, sehingga komputasi paralel sangat penting untuk kemajuan teknologi IoT.
Komputasi paralel memainkan peran penting dalam pelatihan model ML untuk aplikasi AI, seperti pengenalan wajah dan pemrosesan bahasa alami (NLP). Dengan melakukan operasi secara bersamaan, komputasi paralel secara signifikan mengurangi waktu yang diperlukan untuk melatih model ML secara akurat pada data.
Komputer yang menjalankan pesawat ulang-alik bergantung pada lima komputer IBM® AP-101 yang beroperasi secara paralel untuk mengontrol avionik dan memantau data secara real-time. Mesin tangguh ini yang juga digunakan dalam jet tempur dapat menjalankan hampir 500.000 instruksi per detik.
Superkomputer sangat bergantung pada komputasi paralel sehingga mereka sering disebut komputer paralel. Superkomputer American Summit, misalnya, memproses 200 kuadriliun operasi per detik untuk membantu manusia memahami fisika dan lingkungan alam dengan lebih baik.2
IBM Spectrum LSF Suites adalah platform manajemen beban kerja dan penjadwal pekerjaan untuk komputasi kinerja tinggi terdistribusi (HPC).
Solusi HPC hybrid cloud dari IBM membantu mengatasi tantangan-tantangan berskala besar dengan kebutuhan komputasi intensif, dan mempercepat waktu untuk mendapatkan insight.
Temukan solusi infrastruktur cloud yang tepat untuk kebutuhan bisnis Anda dan tingkatkan sumber daya sesuai permintaan.