Definisi umum dari pemrosesan terdistribusi merupakan cara untuk mempercepat pengolahan data atau informasi dengan mendistribusikan pekerjaan atau intruksi ke banyak komputer yang telah dipilih untuk memberi kekuatan pemrosesan yang lebih cepat. Tujuan dari komputasi terdistribusi adalah menyatukan kemampuan dari sumber daya (sumber komputasi atau sumber informasi) yang terpisah secara fisik, ke dalam suatu sistem gabungan yang terkoordinasi dengan kapasitas yang jauh melebihi dari kapasitas individual komponen-komponennya. Tujuan lain yang ingin dicapai dalam komputasi terdistribusi adalah transparansi. Kenyataan bahwa sumber daya yang dipakai oleh pengguna sistem terdistribusi berada pada lokasi fisik yang terpisah, tidak perlu diketahui oleh pengguna tersebut. Transparansi ini memungkinkan pengguna sistem terdistribusi untuk melihat sumber daya yang terpisah tersebut seolah-olah sebagai satu sistem komputer tunggal, seperti yang biasa digunakannya. Dalam prosesnya setiap komputer berinteraksi satu sama lain untuk mencapai tujuan bersama.
Arsitektur Komputer Paralel
Arsitektur komputer
dapat didefinisikan dan dikategorikan sebagai ilmu dan
sekaligusseni mengenai cara interkoneksi komponen-komponen perangkat keras
untuk dapat menciptakan sebuah komputer yang memenuhi kebutuhan fungsional,
kinerja, dan target biayanya. Dalam bidang teknik komputer, arsitektur komputer
adalah konsep perencanaan dan struktur pengoperasian dasar dari suatu sistem
komputer. Arsitektur komputer ini merupakan rencana cetak-biru dan deskripsi
fungsional dari kebutuhan bagian perangkat keras yang didesain (kecepatan
proses dan sistem interkoneksinya). Dalam hal ini, implementasi perencanaan
dari masing–masing bagian akan lebih difokuskan terutama, mengenai bagaimana
CPU akan bekerja, dan mengenai cara pengaksesan data dan alamat dari dan ke
memori cache, RAM, ROM, cakram keras, dll).
Di antara demikian
banyak pemahaman tentang arsitektur, arsitektur dikenal juga sebagai suatu
tradisi yang berkembang. Dari waktu ke waktu wajah arsitektur selalu mengalami
perubahan. Hal-hal yang mempengaruhi perkembangan dan pengembangan arsitektur
tidak hanya berupa keadaan eksternal, tetapi juga keadaan internal. Disini kita
membahas mengenai evolusi arsitektur pada komputer. Arsitektur dari komputer
sendiri merupakan suatu susunan atau rancangan dari komputer tersebut sehingga
membentuk suatu kesatuan yang dinamakan komputer. Komputer sendiri berevolusi
dengan cepat mulai dari generasi pertama hingga sekarang. Evolusi sendiri
didasarkan pada fungsi atau kegunaanya dalam kehidupan. Evolusi pada komputer
sendiri ada karena keinginan atau hal yang dibutuhkan manusia itu sendiri. Sekarang
ini komputer sudah dapat melakaukan perintah yang sulit sekalipun tidak seperti
dulu yang hanya bisa melakukan yang sederhana saja. Itulah yang dinamakan
evolusi arsitektur yaitu perubahan bentuk juga fungsi dan kemampuannya.
B. KLASIFIKASI
ARSITEKTUR KOMPUTER
1. Arsitektur
Von Neumann
Arsitektur von
Neumann (atau Mesin Von Neumann) adalah arsitektur yang diciptakan
oleh John von Neumann (1903-1957). Arsitektur ini digunakan oleh
hampir semua komputer saat ini. Arsitektur Von Neumann menggambarkan komputer
dengan empat bagian utama: Unit Aritmatika dan Logis (ALU), unit kontrol,
memori, dan alat masukan dan hasil (secara kolektif dinamakan I/O). Bagian ini
dihubungkan oleh berkas kawat, “bus”.
Pada perkembangan
komputer modern, setiap prosesor terdiri dari atas :
Arithmetic and Logic Unit (ALU)
Arithmatic and Logic
Unit atau Unit Aritmetika dan Logika berfungsi untuk melakukan semua
perhitungan aritmatika (matematika) dan logika yang terjadi sesuai dengan
instruksi program. ALU menjalankan operasi penambahan, pengurangan, dan
operasi-operasi sederhana lainnya pada input-inputnya dan memberikan hasilnya
pada registeroutput.
Register.
Register merupakan
alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang
digunakan untuk menyimpan data dan instruksi yang sedang diproses,
sementara data dan instruksi lainnya yang menunggugiliran untukdiproses
masihdisimpan yang menunggugiliran untukdiproses masihdisimpan di dalam memori
utama. Setiap register dapat menyimpan satu bilangan hingga mencapai jumlah
maksimum tertentu tergantung pada ukurannya.
Control Unit
Control Unit atau Unit
Kontrol berfungsi untuk mengatur dan mengendalikan semua peralatan yang ada
pada sistem komputer. Unit kendali akan mengatur kapan alat input
menerima data dan kapan data diolah serta kapan ditampilkan pada alat
output. Unit ini juga mengartikan instruksi-instruksi dari program. Unit ini
juga mengartikan instruksi-instruksi dari program komputer, membawa data dari
alat input ke memori utama dan mengambil data dari memori utama untuk diolah.
Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika,
maka unit kendali akan mengirim instruksi tersebut ke ALU. Hasil dari
pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk
disimpan, dan pada saatnya akan disajikan ke alat output.
Bus
Bus adalah
sekelompok lintasan sinyal yang digunakan untuk menggerakkan bit-bit informasi
dari satu tempat ke tempat lain, dikelompokkan menurut fungsinya Standar bus
dari suatu sistem komputer adalah bus alamat (address bus), bus data (data bus)
dan bus kontrol (control bus). Komputer menggunakan suatu bus atau saluran bus
sebagaimana kendaraan bus yang mengangkut penumpang dari satu tempat ke tempat
lain, maka bus komputer mengangkut data. Bus komputer
menghubungkan CPU pada RAM dan periferal. Semua komputer menggunakan
saluran busnya untuk maksud yang sama.
2. Arsitektur RISC
Pengertian RISC
RICS singkatan dari
Reduced Instruction Set Computer. Merupakan bagian dari arsitektur
mikroprosessor, berbentuk kecil dan berfungsi untuk negeset istruksi dalam
komunikasi diantara arsitektur yang lainnya. Reduced Instruction Set Computing
(RISC) atau “Komputasi set instruksi yang disederhanakan” pertama kali digagas
oleh John Cocke, peneliti dari IBM di Yorktown, New York pada tahun 1974 saat
ia membuktikan bahwa sekitar 20% instruksi pada sebuah prosesor ternyata
menangani sekitar 80% dari keseluruhan kerjanya. Komputer pertama yang
menggunakan konsep RISC ini adalah IBM PC/XT pada era 1980-an. Istilah RISC
sendiri pertama kali dipopulerkan oleh David Patterson,pengajar pada University
of California di Berkely.
RISC, yang jika
diterjemahkan berarti “Komputasi Kumpulan Instruksi yang Disederhanakan”,
merupakan sebuah arsitektur komputer atau arsitektur komputasi modern dengan
instruksi-instruksi dan jenis eksekusi yang paling sederhana. Arsitektur ini
digunakan pada komputer dengan kinerja tinggi, seperti komputer vektor.
Selain digunakan dalam
komputer vektor, desain ini juga diimplementasikan pada prosesor komputer lain,
seperti pada beberapa mikroprosesor Intel 960, Itanium (IA64) dari Intel
Corporation, Alpha AXP dari DEC, R4x00 dari MIPS Corporation, PowerPC dan
Arsitektur POWER dari International Business Machine. Selain itu, RISC juga
umum dipakai pada Advanced RISC Machine (ARM) dan StrongARM (termasuk di
antaranya adalah Intel XScale), SPARC dan UltraSPARC dari Sun Microsystems,
serta PA-RISC dari Hewlett-Packard.
Karakteristik RISC
·
Siklus mesin ditentukan oleh waktu yang
digunakan untuk mengambil dua buah operand dari register, melakukan operasi
ALU, dan menyimpan hasil operasinya kedalam register, dengan demikian instruksi
mesin RISC tidak boleh lebih kompleks dan harus dapat mengeksekusi secepat
mikroinstruksi pada mesin-mesin CISC
·
Operasi berbentuk dari register-ke
register yang hanya terdiri dari operasi load dan store yang mengakses memori .
Fitur rancangan ini menyederhanakan set instruksi sehingga menyederhanakan pula
unit control
·
Penggunaan mode pengalamatan sederhana,
hampir sama dengan instruksi menggunakan pengalamatan register.
·
Penggunaan format-format instruksi
sederhana, panjang instruksinya tetap dan disesuaikan dengan panjang word.
Karakteristik-Karakteristik Eksekusi Instruksi
Salah satu evolusi
komputer yang besar adalah evolusi bahasa pemprograman. Bahasa pemprograman
memungkinkan programmer dapat mengekspresikan algoritma lebih singkat, lebih
memperhatikan rincian, dan mendukung penggunaan pemprograman terstruktur,
tetapi ternyata muncul masalah lain yaitu semantic gap, yaitu perbedaan antara
operasi-operasi yang disediakan oleh HLL dengan yang disediakan oleh arsitektur
komputer, ini ditandai dengan ketidakefisienan eksekusi, program mesin yang
berukuran besar,dan kompleksitas kompiler.
Untuk mengurangi
kesenjangan ini para perancang menjawabnya dengan arsitektur. Fitur-fiturnya
meliputi set-set instruksi yang banyak, lusinan mode pengalamatan, dan statemen
–statemen HLL yang diimplementasikan pada perangkat keras.
Operasi
Beberapa penelitian
telah menganalisis tingkah laku program HLL (High Level Language). Assignment
Statement sangat menonjol yang menyatakan bahwa perpindahan sederhana merupakan
satu hal yang penting. Hasil penelitian ini merupakan hal yang penting bagi
perancang set instruksi mesin yang mengindikasikan jenis instruksi mana yang
sering terjadi karena harus didukung optimal.
Operand
Penelitian Paterson
telah memperhatikan [PATT82a] frekuensi dinamik terjadinya kelaskelas variabel.
Hasil yang konsisten diantara program pascal dan C menunjukkan mayoritas
referensi menunjuk ke variable scalar. Penelitian ini telah menguji tingkah
laku dinamik program HLL yang tidak tergantung pada arsitektur tertentu.
Penelitian [LUND77] menguji instruksi DEC-10 dan secara dinamik menemukan
setiap instruksi rata-rata mereferensi 0,5 operand dalam memori dan rata-rata
mereferensi 1,4 register. Tentu saja angka ini tergantung pada arsitektur dan
kompiler namun sudah cukup menjelaskan frekuensipengaksesan operand sehingga
menyatakan pentingnya sebuah arsitektur.
Procedure Calls
Dalam HLL procedure
call dan return merupakan aspek penting karena merupakan operasi yang
membutuhkan banyak waktu dalam program yang dikompalasi sehingga banyak berguna
untuk memperhatikan cara implementasi opperasi ini secara efisien.
Adapun aspeknya yang penting adalah jumlah parameter dan variabel yang
berkaitan dengan prosedur dan kedalaman pensarangan (nesting).
3. Arsitektur CISC
Pengertian CISC
Complex
instruction-set computing atau Complex Instruction-Set Computer (CISC)
“Kumpulan instruksi komputasi kompleks”) adalah sebuah arsitektur dari set
instruksi dimana setiap instruksi akan menjalankan beberapa operasi tingkat
rendah, seperti pengambilan dari memory, operasi aritmetika, dan penyimpanan ke
dalam memory, semuanya sekaligus hanya di dalam sebuah instruksi. Karakteristik
CISC dapat dikatakan bertolak-belakang dengan RISC.
Sebelum proses RISC
didesain untuk pertama kalinya, banyak arsitek komputer mencoba menjembatani
celah semantik”, yaitu bagaimana cara untuk membuat set-set instruksi untuk
mempermudah pemrograman level tinggi dengan menyediakan instruksi “level
tinggi” seperti pemanggilan procedure, proses pengulangan dan mode-mode
pengalamatan kompleks sehingga struktur data dan akses array dapat
dikombinasikan dengan sebuah instruksi. Karakteristik CISC yg “sarat informasi”
ini memberikan keuntungan di mana ukuran program-program yang dihasilkan akan
menjadi relatif lebih kecil, dan penggunaan memory akan semakin berkurang.
Karena CISC inilah biaya pembuatan komputer pada saat itu (tahun 1960) menjadi jauh
lebih hemat.
Memang setelah itu
banyak desain yang memberikan hasil yang lebih baik dengan biaya yang lebih
rendah, dan juga mengakibatkan pemrograman level tinggi menjadi lebih
sederhana, tetapi pada kenyataannya tidaklah selalu demikian. Contohnya, arsitektur
kompleks yang didesain dengan kurang baik (yang menggunakan kode-kode mikro
untuk mengakses fungsi-fungsi hardware), akan berada pada situasi di mana akan
lebih mudah untuk meningkatkan performansi dengan tidak menggunakan instruksi
yang kompleks (seperti instruksi pemanggilan procedure), tetapi dengan
menggunakan urutan instruksi yang sederhana.
Istilah RISC dan CISC
saat ini kurang dikenal, setelah melihat perkembangan lebih lanjut dari desain
dan implementasi baik CISC dan CISC. Implementasi CISC paralel untuk pertama
kalinya, seperti 486 dari Intel, AMD, Cyrix, dan IBM telah mendukung setiap
instruksi yang digunakan oleh prosesor-prosesor sebelumnya, meskipun efisiensi
tertingginya hanya saat digunakan pada subset x86 yang sederhana (mirip dengan
set instruksi RISC, tetapi tanpa batasan penyimpanan/pengambilan data dari
RISC). Prosesor-prosesor modern x86 juga telah menyandikan dan membagi lebih
banyak lagi instruksi-instruksi kompleks menjadi beberapa “operasi-mikro”
internal yang lebih kecil sehingga dapat instruksi-instruksi tersebut dapat
dilakukan secara paralel, sehingga mencapai performansi tinggi pada subset
instruksi yang lebih besar.
Karakteristik CISC
·
Sarat informasi memberikan keuntungan di
mana ukuran program-program yang dihasilkan akan menjadi relatif lebih kecil,
dan penggunaan memory akan semakin berkurang. Karena CISC inilah biaya
pembuatan komputer pada saat itu (tahun 1960) menjadi jauh lebih hemat
·
Dimaksudkan untuk meminimumkan jumlah
perintah yang diperlukan untuk mengerjakan pekerjaan yang diberikan. (Jumlah
perintah sedikit tetapi rumit) Konsep CISC menjadikan mesin mudah untuk
diprogram dalam bahasa rakitan
4. Arsitektur
Harvard
Arsitektur Havard
menggunakan memori terpisah untuk program dan data dengan alamat dan bus data
yang berdiri sendiri. Karena dua perbedaan aliran data dan alamat, maka
tidak diperlukan multiplexing alamat dan bus data. Arsitektur ini
tidak hanya didukung dengan bus paralel untuk alamat dan data, tetapi juga
menyediakanorganisasiinternal yang berbeda sedemikian rupa instruksi
dapat diambil dan dikodekan ketika dan data, tetapi juga menyediakan organisasi
internal yang berbeda sedemikian rupa instruksi dapaLebih lanjut lagi,
bus data bisa saja memiliki ukuran yang berbeda dari bus alamat. Hal ini
memungkinkan pengoptimalan bus data dan bus alamat dalam pengeksekusian
instruksi yang cepat.t diambil dan dikodekan ketika berbagai data sedang
diambil dan dioperasikan. Sebagai contoh, mikrokontroler Intel keluarga MCS-51
menggunakan arsitektur Havard karena ada perbedaan kapasitas memori untuk
program dan data, dan bus terpisah (internal) untuk alamat dan data.
Begitu juga dengan keluarga PIC dari Microchip yang menggunakan
arsitektur Havard.
5. Arsitektur Blue
Gene
Blue Gene adalah
sebuah arsitektur komputer yang dirancang untuk menciptakan beberapa
superkomputer generasi berikut, yang dirancang untuk mencapai kecepatan operasi
petaflop (1 peta = 10 pangkat 15), dan pada 2005 telah mencapai kecepatan lebih
dari 100 teraflop (1 tera = 10 pangkat 12). Blue Gene merupakan proyek antara
Departemen Energi Amerika Serikat (yang membiayai projek ini), industri
(terutama IBM), dan kalangan akademi. Ada lima projek Blue Gene dalam
pengembangan saat ini, di antaranya adalah Blue Gene/L, Blue Gene/C, dan Blue
Gene/P.
Komputer pertama dalam
seri Blue Gene. Blue Gene/L dikembangkan melalui sebuah “partnership” dengan
Lawrence Livermore National Laboratory menghabiskan biaya AS$100 juta dan
direncanakan dapat mencapai kecepatan ratusan TFLOPS, dengan kecepatan puncak
teoritis 360 TFLOPS. Ini hampir sepuluh kali lebih cepat dari Earth Simulator,
superkomputer tercepat di dunia sebelum Blue Gene. Pada Juni 2004, dua
prototipe Blue Gene/L masuk dalam peringkat 500 besar superkomputer berada
dalam posisi ke-4 dan ke-8.
Pada 29 September 2004
IBM mengumumkan bahwa sebuah prototipe Blue Gene/L di IBM Rochester (Minnesota)
telah menyusul Earth Simulator NEC sebagai komputer tercepat di dunia, dengan
kecepatan 36,01 TFLOPS, mengalahkan Earth Simulator yang memiliki kecepatan
35,86 TFLOPS. Mesin ini kemudian mencapai kecepatan 70,72.
Pada 24 Maret 2005,
Departemen Energi AS mengumumkan bahwa Blue Gene/L memecahkan rekor komputer
tercepat mencapai 135,5 TFLOPS. Hal ini dimungkinkan karena menambah jumlah rak
menjadi 32 dengan setiap rak berisi 1.024 node komputasi. Ini masih merupakan
setengah dari konfigurasi final yang direncanakan mencapai 65.536 node.
Pada 27 Oktober, 2005,
Lawrence Livermore National Laboratory dan IBM mengumumkan bahwa Blue Gene/L
sekali lagi telah menciptakan rekor dengan mengalahkan rekornya sendiri setelah
mencapai kecepatan 280.6 TFLOPS.
C. MODEL-MODEL
KOMPUTASI ARSITEKTUR KOMPUTER
1. SISD
Yang merupakan
singkatan dari Single Instruction, Single Data adalah satu-satunya yang
menggunakan arsitektur Von Neumann. Ini dikarenakan pada model ini hanya
digunakan 1 processor saja. Oleh karena itu model ini bisa dikatakan sebagai
model untuk komputasi tunggal. Sedangkan ketiga model lainnya merupakan
komputasi paralel yang menggunakan beberapa processor. Beberapa contoh komputer
yang menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP
2. SIMD
Yang merupakan
singkatan dari Single Instruction, Multiple Data. SIMD menggunakan banyak
processor dengan instruksi yang sama, namun setiap processor mengolah data yang
berbeda. Sebagai contoh kita ingin mencari angka 27 pada deretan angka yang
terdiri dari 100 angka, dan kita menggunakan 5 processor. Pada setiap processor
kita menggunakan algoritma atau perintah yang sama, namun data yang diproses
berbeda. Misalnya processor 1 mengolah data dari deretan / urutan pertama
hingga urutan ke 20, processor 2 mengolah data dari urutan 21 sampai urutan 40,
begitu pun untuk processor-processor yang lain. Beberapa contoh komputer yang
menggunakan model SIMD adalah ILLIAC IV, MasPar, Cray X-MP, Cray Y-MP,
Thingking Machine CM-2 dan Cell Processor (GPU
3. MISD
Yang merupakan
singkatan dari Multiple Instruction, Single Data. MISD menggunakan banyak
processor dengan setiap processor menggunakan instruksi yang berbeda namun
mengolah data yang sama. Hal ini merupakan kebalikan dari model SIMD. Untuk
contoh, kita bisa menggunakan kasus yang sama pada contoh model SIMD namun cara
penyelesaian yang berbeda. Pada MISD jika pada komputer pertama, kedua, ketiga,
keempat dan kelima sama-sama mengolah data dari urutan 1-100, namun algoritma
yang digunakan untuk teknik pencariannya berbeda di setiap processor. Sampai
saat ini belum ada komputer yang menggunakan model MISD.
4. MIMD
Yang merupakan singkatan
dari Multiple Instruction, Multiple Data. MIMD menggunakan banyak processor
dengan setiap processor memiliki instruksi yang berbeda dan mengolah data yang
berbeda. Namun banyak komputer yang menggunakan model MIMD juga memasukkan
komponen untuk model SIMD. Beberapa komputer yang menggunakan model MIMD adalah
IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM
BG/L.
Thread Programming
Thread: sekumpulan instruksi (proses) yang dieksekusi secara
independen
Multithreading: suatu kemampuan yang memungkinkan beberapa
kumpulan instruksi (proses) dijalankan secara bersamaan (time slicing) dalam
sebuah program
Multithreading bermanfaat untuk membuat proses yang interaktif,
misalnya pada program permainan (game). Program tetap dapat menggerakkan
beberapa objek sambil memberi kesempatan pengguna melakukan respon melalui
mouse atau keyboard
Multithreading adalah suatu kemampuan yang memungkinkan
beberapa kumpulan instruksi atau proses dapat dijalankan secara bersamaan dalam
sebuah program. Satu kumpulan instruksi yang akan dieksekusi secara independen
dinamakan thread. Thread adalah alur kontrol dari suatu proses.atau
sekumpulan perintah (instruksi) yang dapat dilaksanakan (dieksekusi) secara
teratur dengan proses lainnya.Proses melakukan setiap langkah-langkah/intruksi
yang berurutan, setiap intruksi untuk mengeksekusi baris kode/listing – listing
program.Nah Karena langkah-langkah yang berurutan itu, setiap langkah
membutuhkan jumlah waktu tertentu.
MESSAGING PASSING, OPEN MP
Jenis model ini menunjukkan karakteristik sebagai berikut:
- Tugas
pertukaran data melalui komunikasi dengan mengirim dan menerima pesan.
- Transfer
data biasanya memerlukan kerjasama operasi yang akan dilakukan oleh
masing-masing proses.
(Open Multi-Processing) adalah sebuah antarmuka pemrograman aplikasi (API)
yang mendukung multi processing shared memory pemrograman di C, C++ dan Fortran
pada berbagai arsitektur, termasuk UNix dan Microsoft Windows platform. OpenMP
Terdiri dari satu set perintah kompiler, perpustakaan rutinitas, dan variabel
lingkungan yang mempengaruhi run-time. Banyak Aplikasi dibangun dengan model
hibrida pemrograman paralel dapat dijalankan pada komputer cluster dengan
menggunakan OpenMP dan Message Passing Interface (MPI), atau lebih transparan
dengan menggunakan ekstensi OpenMP non-shared memory systems.
PEMROGRAMAN CUDA (GRAPHICAL PROCESSING UNIT)
Sebagaimana telah kita ketahui bahwa Cuda adalah platform komputasi paralel
dan model pemrograman yang diciptakan oleh perusahaan perangkat keras dunia
yaitu NVIDIA. hal ini memungkinkan peningkatan dramatis dalam kinerja komputasi
dengan memanfaatkan kekuatan dari Graphics Processing Unit(GPU).
Sebuah GPU (Graphical Processing Unit) pada awalnya adalah sebuah prosesor
yang berfungsi khusus untuk melakukan rendering pada kartu grafik saja, tetapi
seiring dengan semakin meningkatnya kebutuhan rendering, terutama untuk
mendekati waktu proses yang realtime /sebagaimana kenyataan sesungguhnya, maka
meningkat pula kemampuan prosesor grafik tersebut. akselerasi peningkatan
teknologi GPU ini lebih cepat daripada peningkatan teknologi prosesor
sesungguhnya (CPU), dan pada akhirnya GPU menjadi General Purpose, yang artinya
tidak lagi hanya untuk melakukan rendering saja melainkan bisa untuk proses
komputasi secara umum.
Penggunaan Multi GPU dapat mempercepat waktu proses dalam mengeksekusi
program karena arsitekturnya yang natively parallel. Selain itu Peningkatan
performa yang terjadi tidak hanya berdasarkan kecepatan hardware GPU saja,
tetapi faktor yang lebih penting adalah cara membuat kode program yang benarbenar
bisa efektif berjalan pada Multi GPU.
CUDA merupakan singkatan dari Compute Unified Device
Architecture,didefinisikan sebagai sebuah arsitektur komputer parallel,
dikembangkan oleh Nvidia. Teknologi ini dapat digunakan untuk menjalankan
proses pengolahan gambar, video, rendering 3D, dan lain sebagainya. VGA – VGA
dari Nvidia yang sudah menggunakan teknologi CUDA antara lain : Nvidia GeForce
GTX 280, GTX 260,9800 GX2, 9800 GTX+,9800 GTX,9800 GT,9600 GSO, 9600 GT,9500
GT,9400 GT,9400 mGPU,9300 mGPU,8800 Ultra,8800 GTX,8800 GTS,8800 GT,8800
GS,8600 GTS,8600 GT,8500 GT,8400 GS, 8300 mGPU, 8200 mGPU, 8100 mGPU, dan seri
sejenis untuk kelas mobile (VGA notebook).
Singkatnya, CUDA dapat memberikan proses dengan pendekatan bahasa C,
sehingga programmer atau pengembang software dapat lebih cepat menyelesaikan
perhitungan yang komplek. Bukan hanya aplikasi seperti teknologi ilmu
pengetahuan yang spesifik. CUDA sekarang bisa dimanfaatkan untuk aplikasi
multimedia. Misalnya meng-edit film dan melakukan filter gambar. Sebagai
contoh dengan aplikasi multimedia, sudah mengunakan teknologi CUDA. Software
TMPGenc 4.0 misalnya membuat aplikasi editing dengan mengambil sebagian proces
dari GPU dan CPU. VGA yang dapat memanfaatkan CUDA hanya versi 8000 atau lebih
tinggi.
Keuntungan dengan CUDA sebenarnya tidak luput dari teknologi aplikasi yang
ada. CUDA akan mempercepat proses aplikasi tertentu, tetapi tidak semua
aplikasi yang ada akan lebih cepat walaupun sudah mengunakan fitur CUDA.
Tidak ada komentar:
Posting Komentar