SIMD: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Addbot (bicara | kontrib)
k Bot: Migrasi 20 pranala interwiki, karena telah disediakan oleh Wikidata pada item d:q339387
HsfBot (bicara | kontrib)
k Clean up, replaced: komplit → komplet, removed stub tag using AWB
Baris 6:
Prosesor yang memiliki SIMD menawarkan dua keunggulan, yakni:
* Data langsung dapat dipahami dalam bentuk blok data, dibandingkan dengan beberapa data yang terpisah secara sendiri-sendiri. Dengan menggunakan blok data, prosesor dapat memuat data secara keseluruhan pada waktu yang sama. Daripada melakukan beberapa instruksi "ambil pixel ini, lalu ambil pixel itu, dst", sebuah prosesor SIMD akan melakukannya dalam sebuah instruksi saja, yaitu "ambil semua [[pixel]] itu!" (istilah "semua" adalah nilai yang berbeda dari satu desain ke desain lainnya). Jelas, hal ini dapat mengurangi banyak waktu pemrosesan (akibat instruksi yang dikeluarkan hanya satu untuk sekumpulan data), jika dibandingkan dengan desain prosesor tradisional yang tidak memiliki SIMD (yang memberikan satu instruksi untuk satu data saja).
* Sistem SIMD umumnya hanya mencakup instruksi-instruksi yang dapat diaplikasikan terhadap semua data dalam satu operasi. Dengan kata lain, sistem SIMD dapat bekerja dengan memuat beberapa titik data secara sekaligus, dan melakukan operasi terhadap titik data secara sekaligus.
 
Sayangnya, beberapa desainer SIMD terbentur dengan beberapa pertimbangan desain yang berada di luar kontrol mereka. Salah satu pertimbangan tersebut adalah harus menambahkan banyak register untuk menampung data yang akan diproses. Idealnya, hal ini dapat dilakukan dengan menambahkan unit SIMD ke dalam prosesor agar memiliki registernya sendiri, tetapi beberapa desainer terpaksa menggunakan register yang telah ada, umumnya yang digunakan adalah register floating-point. [[Register]] floating-point umumnya memiliki ukuran 64-bit, yang lebih kecil daripada yang dibutuhkan oleh SIMD agar bekerja secara optimal, meskipun hal ini dapat mendatangkan masalah jika kode hendak mencoba untuk menggunakan instruksi [[floating-point]] dan SIMD secara bersamaan.
 
Pada pendesainan awal SIMD, terdapat beberapa prosesor yang khusus disiapkan untuk melakukan tugas ini, yang seringnya disebut sebagai [[Digital Signal Processor]] (DSP). Perbedaan utama antara SIMD dan DSP adalah DSP merupakan prosesor yang komplitkomplet dengan set instruksinya sendiri (yang meskipun lebih sulit digunakan), sementara SIMD hanya bergantung pada register general-purpose untuk menangani detail program, dan instruksi SIMD hanya menangani manipulasi data.
 
Penggunaan instruksi SIMD pertama kali dilakukan dalam superkomputer vektor dan dipopulerkan oleh Cray pada tahun 1970-an. Akhir-akhir ini, SIMD skala kecil (64-bit atau 128-bit) telah menjadi populer dalam CPU yang bersifat general purpose, yang dimulai pada tahun 1994 dengan set instruks MAX yang diaplikasikan pada [[Hewlett-Packard]] [[PA-RISC]]. Instruksi SIMD, saat ini dapat ditemukan dalam kebanyakan prosesor, seperti halnya [[AltiVec]] dalam prosesor [[PowerPC]]; Intel MMX, [[SSE]], SSE2, SSE3, SSE4, AMD [[3DNow!]] dalam prosesor Intel x86; VIS dalam prosesor prosesor [[SPARC]]; [[MAX]] dalam Hewlett-Packard PA-RISC; [[MDMX]] serta [[MIPS-3D]] dalam [[MIPS]] serta [[MVI]] dalam prosesor [[DEC Alpha]]. Meskipun demikian, perangkat lunak pada umumnya tidak mengeksploitasi instruksi, dan bahkan instruksi ini hanya digunakan dalam aplikasi yang khusus, seperti pengolahan grafik.
 
Meskipun hal ini secara umum telah membuktikan bahwa sulitnya mencari aplikasi komersial yang dikhususkan untuk prosesor SIMD, ada beberapa kesuksesan yang terjadi seperti halnya aplikasi [[GAPP]] yang dikembangkan oleh [[Lockheed Martin]]. Versi yang lebih baru dari GAPP bahkan menjadi aplikasi yang dapat memproses video secara waktu-nyata (''real-time'') seperti halnya konversi antar bermacam-macam standar video yang (seperti konversi [[NTSC]] ke [[PAL]] atau sebaliknya, NTSC ke [[HDTV]] atau sebaliknya dan lain-lain), melakukan deinterlacing, pengurangan noise (''noise reduction''), kompresi [[video]], dan perbaikan citra gambar (''image enhancement'').
 
{{hardware-stub}}
 
[[Kategori:Taksonomi Flynn]]