a. Artikel Komputasi dan Paralel
Processing
KOMPUTASI
Komputasi merupakan setiap jenis perhitungan atau
penggunaan teknologi komputer dalam pengolahan informasi. Perhitungan adalah
proses setelah yang jelas model yang dipahami dan dinyatakan dalam suatu
algoritma, protokol, topologi jaringan, dll. Perhitungan juga merupakan subyek
utama dari ilmu komputer: menyelidiki apa yang dapat atau tidak dapat dilakukan
dengan cara komputasi.
Perhitungan dapat diklasifikasikan oleh setidaknya
tiga kriteria ortogonal: digital vs analog, sekuensial vs paralel vs bersamaan,
bets vs interaktif. Dalam prakteknya, perhitungan digital sering digunakan
untuk mensimulasikan proses alam (misalnya, perhitungan Evolusi), termasuk yang
lebih alami dijelaskan oleh model analog perhitungan (misalnya, jaringan syaraf
tiruan).
Ilmu atau sains berdasarkan objek kajiannya
dibedakan antara Fisika, Kimia, Biologi dan Geologi. Ilmu dapat pula
digolongkan berdasarkan metodologi dominan yang digunakannya yaitu ilmu
pengamatan/percobaan (observational/experimental science), ilmu teori
(theoretical science) dan ilmu komputasi (computational science). Yang terakhir
ini bisa dianggap bentuk yang paling baru yang muncul bersamaan dengan
perkembangan kekuatan pemrosesan dalam komputer dan perkembangan teknik-teknik
metode numerik dan metode komputasi lainnya.
Dalam ilmu (sains) tradisional seperti Fisika,
Kimia dan Biologi, penggolongan ilmu berdasarkan metodologi dominannya juga
mewujud, yang ditunjukkan dengan munculnya bidang-bidang khusus berdasarkan
penggolongan tsb. lengkap dengan jurnal-jurnal yang relevan untuk melaporkan
hasil-hasil penelitiannya. Sebagai contoh dalam kimia, melengkapi kimia
percobaan (experimental chemistry) dan kimia teori (theoretical chemistry),
berkembang pula kimia komputasi (computational chemistry), seperti juga di
bidang Biologi dikenal Biologi Teori (theoretical biology) serta Biologi
Komputasi (computational biology), lengkap dengan jurnalnya seperti Journal of
Computational Chemistry dan Journal of Computational Biology. Cara penggolongan
yang digunakan berbeda dengan cara penggolongan lain berdasarkan objek kajian,
seperti penggolongan kimia atas Kimia Organik, Kimia Anorganik, dan Biokimia.
Walaupun dengan titik pandang yang berbeda, ilmu
komputasi sebagai bentuk ketiga dari ilmu (sains) telah banyak disampaikan oleh
berbagai pihak, antara lain Stephen Wolfram dengan bukunya yang terkenal: A New
Kind of Science, dan Jürgen Schmidhuber.
Komputasi sains merupakan salah satu cabang ilmu
komputasi. Secara umum komputasi sains mengkaji aspek-aspek komputasi untuk
aplikasi / memecahkan masalah di bidang sains lain, seperti fisika, kimia,
biologi dan lain-lain.
Di Indonesia sudah banyak pertemuan atau kegiatan
ilmiah terkait dengan komputasi, tetapi umumnya lebih terkait dengan aspek
teknologi informasi. Sedangkan kajian di komputasi sains masih sangat kurang.
Hal ini tidak mengherankan karena komputasi sains lebih condong sebagai kajian
teori murni, sehingga komunitasnya masih sangat terbatas seperti halnya fisika
teori. Hanya ada satu kegiatan ilmiah yang terkait langsung dan fokus pada
kajian komputasi sains, yaitu Workshop on Computational Science yang diadakan
rutin setiap tahun oleh konsorsium yang tergabung dalam Masyarakat Komputasi
Indonesia - MKI.
Selain itu, telah tersedia juga portal ilmiah untuk
publik terkait dengan komputasi sains, yaitu komputasi. Jurnal di Indonesia
yang fokus pada topik komputasi adalah Journal of Theoretical and Computational
Studies JTCS. Jurnal ini merupakan kolaborasi dari MKI dan GFTI
TEORI KOMPUTASI
Teori komputasi adalah sebuah bidang pelajaran yang menggabungkan ilmu
komputer dan matematika untuk menganalisis suatu masalah dari data input yang
dapat dipecahkan pada model matematika dengan menggunakan suatu Algoritma. Teori
komputasi juga merupakan cabang ilmu komputer dan matematika yang membahas
Apakah dan Bagaimanakah suatu masalah dapat dipecahkan pada model komputasi
dengan menggunakan Algoritma.
Secara umum Ilmu Komputasi adalah bidang ilmu yang mempunyai perhatian
pada penyusunan model matematika dan teknik penyelesaian numerik serta
penggunaan komputer untuk menganalisis dan memecahkan masalah-masalah ilmu
sains. Selama ribuan tahun lalu, komputasi dan perhitungan umumnya dilakukan
dengan menggunakan kapur/batu tulis, pena, kertas, ataupun dikerjakan secara
mental dan kadang-kadang dengan bantuan suatu tabel. Namun sekarang,
berkembangnya zaman kebanyakan komputasi telah menggunakan komputer. Komputasi
yang menggunakan komputer inilah maka disebut dengan Komputasi Modern.
Komputasi modern digunakan untuk memecahkan masalah yang ada. Perhitungan
komputasi modern, yaitu:
1.
Akurasi (bit, floating point),
2.
Kecepatan (dalam satuan Hz),
3.
Problem volume besar (parallel),
4.
Modelling (NN dan GA),
5.
Kompleksitas (teori Big O).
Komputansi modern mempunyai karakteristik komputasi modern yang terdiri
atas 3 macam, yaitu:
1.
Komputer - komputer penyedia sumber daya bersifat
heterogenous, karena terdiri dari berbagai jenis perangkat keras, sistem
operasi dan aplikasi yang terpasang,
2.
Komputer - komputer terhubung ke jaringan yang luas dengan kapasitas
bandwidth yang beragam,
3.
Komputer maupun jaringan tidak terdedikasi, bisa hidup atau mati
sewaktu-waktu tanpa jadwal yang jelas.
4.
Implementasinya Komputasi Di Berbagai Bidang:
5.
Bidang Biologi: terdapat Bioinformatics merupakan aplikasi dari
teknologi informasi dan ilmu komputer dalam penelitian bidang biologi
molekuler.
6.
Bidang Fisika: terdapat Computational Physics yang mempelajari algoritma
numerik untuk memecah kan teori kuantitatif fisika yang ada.
7.
Bidang Kimia: terdapat Computational Chemistry yaitu penggunaan ilmu
komputer untuk membantu menyelesaikan masalah kimia, contohnya penggunaan super
komputer untuk menghitung struktur dan sifat molekul.
8.
Bidang Ekonomi: terdapat Computational Economics yang mempelajari titik
pertemuan antara ilmu ekonomi dan ilmu komputer mencakup komputasi keuangan,
statistika, pemrograman yang di desain khusus untuk komputasi ekonomi dan
pengembangan alat bantu untuk pendidikan ekonomi.
9.
Bidang Sosiologi: terdapat Computational Sosiology yaitu penggunaan
metode komputasi dalam menganalisa fenomena sosial.
10. Bidang Geografi: terdapat
penggunaan komputasi yang diterapkan pada GIS (Geographic Information System)
yang berguna untuk menyimpan, memanipulasi dan menganalisa informasi geografi.
11. Bidang Geologi: pada bidang
geologi teori komputasi biasanya digunakan untuk pertambangan, sebuah sistem
komputer digunakan untuk menganalisa bahan-bahan mineral dan barang tambang
yang terdapat di dalam tanah.
12. Bidang Matematika: terdapat
numerical analysis yaitu sebuah algoritma dipakai untuk menganalisa masalah -
masalah matematika.
PARALLEL PROCESSING
Pemrosesan parallel dalam komputer, merupakan pengolahan dari program
instruksi dengan membagi di antara beberapa processor dengan tujuan untuk
menjalankan program dalam waktu singkat.
Sebuah program komputasi-intensif yang memakan waktu satu jam untuk
menjalankan dan menyalin program tape yang mengambil satu jam untuk menjalankan
akan mengambil total keseluruhan dua jam untuk menjalankan. Bentuk awal dari
pemrosesan parallel memungkinkan eksekusi interleaved kedua program
bersama-sama. Komputer akan memulai operasi I/O dan sementara itu sedang
menunggu operasi untuk menyelesaikan, itu akan mengeksekusi program
processor-intensive. Waktu eksekusi total untuk kedua pekerjaan tersebut akan
menjadi kurang lebih satu jam.
Peningkatan berikutnya merupakan multiprogramming. Dalam sistem
multiprogramming, beberapa program telah dikirim pengguna yang masing-masing
diperbolehkan untuk menggunakan processor dalam waktu yang singkat. Untuk
pengguna tampak bahwa semua program yang dilaksanakan pada saat yang sama.
Masalah pertama muncul pertentangan sumber daya di sistem ini. Permintaan
eksplisit untuk sumber daya menyebabkan masalah dari kebuntuan. Kompetisi untuk
sumber daya pada mesin tanpa melanggar instruksi mengarah pada rutin critical
section.
Langkah berikutnya dalam pengolahan parallel adalah pengenalan
multiprocessing. Dalam sistem ini, dua atau lebih processor berbagi pekerjaan
yang akan dilakukan. Versi awal memiliki master/slave konfigurasi. Salah satu
processor (master) diprogram untuk bertanggung jawab atas semua pekerjaan dalam
sistem, sementara yang lainnya hanya melakukan tugas-tugas yang diberikan oleh
master. Pengaturan ini diperlukan karena tidak mengerti bagaimana mesin dalam
program dapat berkerja bersama dalam pengolaan sumber daya sistem.
Komputasi paralel adalah salah satu teknik melakukan komputasi secara
bersamaan dengan memanfaatkan beberapa komputer secara bersamaan. Biasanya
diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus
mengolah data dalam jumlah besar ataupun karena tuntutan proses komputasi yang
banyak. Untuk melakukan aneka jenis komputasi paralel ini diperlukan
infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan
dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu
masalah. Untuk itu diperlukan aneka perangkat lunak pendukung yang biasa
disebut sebagai middleware yang berperan untuk mengatur distribusi pekerjaan
antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat
pemrograman paralel untuk merealisasikan komputasi.
Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan
eksekusi perintah/operasi secara bersamaan baik dalam komputer dengan satu
(prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU.
Tujuan utama dari pemrograman paralel adalah untuk meningkatkan performa
komputasi. Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu
yang sama), semakin banyak pekerjaan yang bisa diselesaikan.
Sebagian besar komputer hanya mempunyai satu CPU, namun ada yang
mempunyai lebih dari satu. Bahkan juga ada komputer dengan ribuan CPU. Komputer
dengan satu CPU dapat melakukan parallel processing dengan menghubungkannya
dengan komputer lain pada jaringan. Namun, parallel processing ini memerlukan software
canggih yang disebut distributed processing software. Parallel processing
berbeda dengan multitasking, yaitu satu CPU mengeksekusi beberapa program
sekaligus. Parallel processing disebut juga parallel computing.
KONSEP KOMPUTASI
PARALLEL PROCESSING
Paralel Processing adalah kemampuan menjalankan tugas atau aplikasi
lebih dari satu aplikasi dan dijalankan secara simultan atau bersamaan pada
sebuah komputer. Secara umum, ini adalah sebuah teknik dimana sebuah masalah
dibagi dalam beberapa masalah kecil untuk mempercepat proses penyelesaian
masalah.
Terdapat dua hukum yang berlaku dalam sebuah parallel processing. yaitu:
1.
Hukum Amdahl: Amdahl berpendapat, “Peningkatan kecepatan secara paralel
akan menjadi linear, melipatgandakan kemampuan proses sebuah komputer dan
mengurangi separuh dari waktu proses yang diperlukan untuk menyelesaikan sebuah
masalah.”
2.
Hukum Gustafson: Pendapat yang dikemukakan Gustafson hampir sama dengan
Amdahl, tetapi dalam pemikiran Gustafson, sebuah komputasi paralel berjalan dengan
menggunakan dua atau lebih mesin untuk mempercepat penyelesaian masalah dengan
memperhatikan faktor eksternal, seperti kemampuan mesin dan kecepatan proses
tiap-tiap mesin yang digunakan.
Gambar diatas merupakan contoh dari sebuah
komputasi paralel, dimana pada gambar diatas terdapat sebuah masalah, dari
masalah tersebut dibagi lagi menjadi beberapa bagian agar sebuah masalah dapat
dengan cepat diatasi.
TUJUAN KOMPUTASI
PARALEL
Tujuan dari komputasi paralel adalah meningkatkan kinerja komputer dalam
menyelesaikan berbagai masalah. Dengan membagi sebuah masalah besar ke dalam
beberapa masalah kecil, membuat kinerja menjadi cepat. Formula komputasi
paralel yang diajukan pada hukum Amdahl
Dimana a adalah banyaknya paralel yang terjadi. Secara teori, artinya
proses penyelesaian masalah menjadi lebih cepat dengan menggunakan komputasi
paralel. Salah satu jenis penggunaan komputasi paralel adalah: PVM (Parallel
Virtual Machine) Merupakan sebuah perangkat lunak yang mampu mensimulasikan
pemrosesan paralel pada jaringan.
MODEL KOMPUTASI
PARALLEL
1.
Embarasingly Parallel adalah pemrograman paralel yang digunakan pada
masalah-masalah yang bisa diparalelkan tanpa membutuhkan komunikasi satu sama
lain. Sebenarnya pemrograman ini bisa dibilang sebagai pemrograman paralel yang
ideal, karena tanpa biaya komunikasi, lebih banyak peningkatan kecepatan yang
bisa dicapai.
2.
Taksonomi dari model pemrosesan paralel dibuat berdasarkan alur
instruksi dan alur data yang digunakan:
a.
SISD (Single Instruction Single Datapath) merupakan prosesor tunggal,
yang bukan paralel.
b.
SIMD (Single Instruction Multiple Datapath) alur instruksi yang sama
dijalankan terhadap banyak alur data yang berbeda. Alur instruksi di sini kalau
tidak salah maksudnya ya program komputer itu. trus datapath itu paling ya
inputnya, jadi inputnya lain-lain tapi program yang digunakan sama.
c.
MIMD (Multiple Instruction Multiple Datapath) alur instruksinya banyak,
alur datanya juga banyak, tapi masing-masing bisa berinteraksi.
d.
MISD (Multiple Instruction Single Datapath) alur instruksinya banyak
tapi beroperasi pada data yang sama.
b. Hubungan Komputasi Modern dengan Parallel
Processing
Hubungan antara komputasi modern dan
parallel processing sangat berkaitan, karena penggunaan komputer saat ini atau komputasi
dianggap lebih cepat dibandingkan dengan penyelesaian masalah secara manual.
Dengan begitu peningkatan kinerja atau proses komputasi semakin diterapkan, dan
salah satu caranya adalah dengan meningkatkan kecepatan perangkat keras. Dimana
komponen utama dalam perangkat keras komputer adalah processor. Sedangkan
parallel processing adalah penggunaan beberapa processor (multiprocessor atau
arsitektur komputer dengan banyak processor) agar kinerja computer semakin
cepat.
Kinerja komputasi dengan menggunakan
paralel processing itu menggunakan dan memanfaatkan beberapa komputer atau CPU
untuk menemukan suatu pemecahan masalah dari masalah yang ada. Sehingga dapat
diselesaikan dengan cepat daripada menggunakan satu komputer saja. Komputasi
dengan paralel processing akan menggabungkan beberapa CPU, dan membagi-bagi
tugas untuk masing-masing CPU tersebut. Jadi, satu masalah terbagi-bagi
penyelesaiannya. Tetapi ini untuk masalah yang besar saja, komputasi yang
masalah kecil, lebih murah menggunakan satu CPU saja.
ULASAN MENGENAI ARTIKEL
Pada penulisan
ini saya akan memberikan komentar saya terhadap artikel tentang komputasi dan
parallel processing. Artikel ini memuat pengertian, konsep dan teori, model
serta hubungan komputasi modern dengan parallel processing. Untuk pengertian
yang dibahas cukup mudah dipahami oleh pembaca. Dari artikel ini juga dapat disimpulkan
bahwa pengertian komputasi adalah setiap jenis perhitungan atau penggunaan teknologi komputer dalam
pengolahan informasi. Sedangkan parallel processing adalah pengolahan dari
program instruksi dengan membagi di antara beberapa processor dengan tujuan
untuk menjalankan program dalam waktu singkat.
Artikel
ini juga membahas hubungan antara komputasi modern dan parallel processing.
Hubungan antara keduanya sangat berkaitan sehingga munculah konsep komputasi
parallel. Komputasi parallel merupakan penggabungan dari konsep komputasi dan
parallel dimana dalam penyelesaian masalah, komputer membagi sebuah masalah
besar ke dalam beberapa masalah kecil dan dijalankan secara simultan atau
bersamaan. Dengan adanya komputasi modern, kinerja komputer menjadi lebih cepat.
Pada artikel ini dibahas pula mengenai kinerja komputasi parallel yaitu dengan
memanfaatkan beberapa komputer atau CPU. Namun seperti yang telah dijelaskan,
penggunaan beberapa komputer atau CPU akan efektif apabila masalah yang
diselesaikan besar. Jika masalah yang akan diselesaikan kecil baiknya hanya
menggunakan satu CPU.
Kelebihan yang ada pada artikel
ini adalah materi yang disampaikan oleh penulis pada artikel ini cukup mudah
dipahami. Selain itu pemilihan kata yang sopan dan penulisan yang rapih membuat
artikel bagus untuk dibaca. Tidak hanya itu, artikel ini juga membahas hukum
pada parallel processing yang terdiri dari dua hukum yaitu Amdhal dan
Gustafson.
Sedangkan kekurangan pada artikel
ini yaitu, terdapat beberapa hal yang seharusnya dijelaskan lebih rinci,
seperti misalnya hubungan antara komputasi modern dengan parallel processing.
Penjelasan yang disertai dengan gambar dapat membuat pembaca memahami lebih
jelas bagaimana kinerja keduanya. Jika diperhatikan, dibagian konsep komputasi
parallel processing terdapat gambar proses kerja komputasi parallel, tetapi
gambar tersebut tidak dijelaskan secara lengkap. Sebaiknya pada bagian tersebut
dijelaskan dan jika ada contoh kasus maka akan semakin memudahkan pembaca
memahami materi tersebut.
Selain itu, pada materi parallel processing
terdapat beberapa hal yang sulit dimengerti. Alur materi yang tidak bersesuaian
antara satu sama lain membuat pembaca harus berulang-ulang untuk memahami
materi. Kekurangan lainnya pada hukum parallel processing seharusnya ada beberapa rumus yang berkaitan dengan
masing-masing hukum. Lalu, ada baiknya penulis menambahkan daftar pustaka agar
materi lebih lengkap.