SIMD adalah singkatan dari single instruction, multiple data, merupakan sebuah istilah dalam komputasi yang merujuk kepada sekumpulan operasi yang digunakan untuk menangani jumlah data yang sangat banyak dengan efisien secara paralel, seperti yang terjadi dalam prosesor vektor atau prosesor larik. SIMD pertama kali dipopulerkan pada superkomputer skala besar, meski sekarang telah ditemukan pada komputer pribadi.

Contoh aplikasi yang dapat mengambil keuntungan dari SIMD adalah aplikasi yang memiliki nilai yang sama yang ditambahkan ke banyak titik data (data point), yang umum terjadi dalam aplikasi multimedia. Salah satu contoh operasinya adalah mengubah kecerahan dari sebuah gambar. Setiap pixel dari sebuah gambar 24-bit berisi tiga buah nilai berukuran 8-bit brightness dari porsi warna merah (red), hijau (green), dan biru (blue). Untuk melakukan perubahan brightness, nilai R, G, dan B akan dibaca dari memori, dan sebuah nilai baru ditambahkan (atau dikurangkan) terhadap nilai-nilai R, G, B tersebut dan nilai akhirnya akan dikembalikan (ditulis kembali) ke memori.

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 komplet 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 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 (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).

📚 Artikel Terkait di Wikipedia

Karina (penyanyi Korea Selatan)

Girls On Top yang debut pada 3 Januari 2022. Karina resmi mengeluarkan single terbaru "UP" yang merupakan lagu solo pertamanya yang di rilis bersama 3

Sistem anti-tank portabel perorangan

MilitaryToday.com". www.militarytoday.com. Diakses tanggal 2023-08-13. "M202 Multiple-Barrel Incendiary Rocket Launcher | MilitaryToday.com". www.militarytoday

Only Connect

Only Connect adalah program kuis asal Inggris dengan pembawa acara Victoria Coren Mitchell. Dalam program ini, para tim berkompetisi dalam turnamen untuk

Indonesia

Cupillard C, et al. (2016). "Pleistocene Mitochondrial Genomes Suggest a Single Major Dispersal of Non-Africans and a Late Glacial Population Turnover in

Flo

untuk "Fly Girl" dengan Missy Elliott. Flo merilis "Walk Like This" sebagai single utama dari album studio debut mereka pada 8 Maret 2024, dengan video musik

Fortnight (lagu)

satu kedua belas Swift dan kelima Malone. Itu membuat Swift mendapatkan single nomor satu kelimanya di the Billboard Global 200 grafik dan memuncak di

Orfenadrin

JJ, Thijssen C, Keijser GG, Hespe W (1982). "Difference between single and multiple dose pharmacokinetics of orphenadrine hydrochloride in man". European

Kabupaten Kuningan

Pemerintah Daerah) dan Single Sign-On (SSO) guna mengintegrasikan semua layanan SKPD dalam satu pintu. Hal ini memungkinkan penyajian data lintas sektor menjadi