Apa itu SMP (symmetric multiprocessing)?

SMP (symmetric multiprocessing) adalah pemrosesan komputer yang dilakukan oleh beberapa prosesor yang berbagi sistem operasi (OS) dan memori yang sama. Dalam symmetric multiprocessing, prosesor berbagi bus input/output (I/O) atau jalur data yang sama. Satu salinan OS bertanggung jawab untuk semua prosesor.

Sistem SMP lebih cocok untuk pemrosesan transaksi daring dibandingkan dengan sistem massively parallel processing (MPP), di mana banyak pengguna mengakses database yang sama dengan serangkaian transaksi yang relatif sederhana. Berbeda dengan sistem MPP, sistem SMP dapat secara dinamis menyeimbangkan beban kerja di antara komputer sehingga dapat melayani lebih banyak pengguna dengan lebih cepat.

Arsitektur komputer SMP adalah arsitektur perangkat keras dan perangkat lunak multiprosesor yang memiliki beberapa prosesor identik. Prosesor berbagi memori utama secara setara dan memiliki akses ke semua perangkat I/O. Saat ini, sebagian besar OS modern mendukung mesin SMP. Di masa lalu, pengguna harus mempelajari keterampilan pemrograman khusus untuk menggunakan SMP.

Bagaimana SMP digunakan?

Sistem symmetric multiprocessing terutama digunakan dalam lingkungan komputasi yang membutuhkan banyak sumber daya. Lingkungan ini membutuhkan daya komputasi yang besar untuk menjalankan tugas dan proses aplikasi. Sebagian besar sistem multiprosesor menggunakan arsitektur SMP.

SMP paling berguna untuk sistem time-sharing dan multithreading. Time-sharing adalah distribusi sumber daya komputasi ke beberapa pengguna secara bersamaan. Sementara itu, multithreading adalah fitur unit pemrosesan pusat (CPU) yang memungkinkan beberapa tugas berjalan secara bersamaan dalam satu proses. Secara lebih spesifik, multithreading memungkinkan beberapa thread instruksi berjalan secara independen, semuanya berbagi sumber daya pemrosesan yang sama.

Time-sharing menggunakan SMP karena dapat mendistribusikan sumber daya komputasi ke beberapa pengguna dan menjalankan beberapa proses secara paralel. Proses ini didukung oleh SMP, yang dirancang untuk menjalankan lebih dari satu proses pada unit pemrosesan yang berbeda. SMP juga digunakan dalam multithreading karena menangani beberapa proses sekaligus dan membagi thread ke setiap prosesor.

Namun, SMP tidak umum digunakan di PC atau aplikasi yang belum dimodifikasi untuk mendukung pemrograman multithread. Aplikasi dan program harus dirancang agar dapat mendukung multithreading sehingga thread dapat dijadwalkan di prosesor yang berjalan secara paralel.

Apa kelebihan dan kekurangan SMP?

Kelebihan symmetric multiprocessing meliputi:

  • Peningkatan throughput. Menggunakan beberapa prosesor untuk menjalankan tugas mengurangi waktu yang diperlukan untuk menyelesaikan tugas.
  • Keandalan. Jika satu prosesor gagal, seluruh sistem tidak langsung gagal. Namun, efisiensi tetap dapat terpengaruh.
  • Efisiensi biaya. SMP merupakan cara yang lebih murah dalam jangka panjang untuk meningkatkan throughput sistem dibandingkan sistem dengan satu prosesor, karena prosesor dalam sistem SMP berbagi penyimpanan data, catu daya, dan sumber daya lainnya.
  • Kinerja. Karena throughput yang meningkat, kinerja sistem komputer SMP secara signifikan lebih tinggi dibandingkan sistem dengan satu prosesor.
  • Pemrograman dan eksekusi kode. Program dapat berjalan pada prosesor mana pun dalam sistem SMP dengan tingkat kinerja yang relatif sama, sehingga membuat pemrograman dan eksekusi kode menjadi lebih mudah.
  • Prosesor yang dapat ditambah. Jika suatu tugas memerlukan waktu terlalu lama untuk diselesaikan, prosesor tambahan dapat ditambahkan untuk mempercepat proses.

Namun, SMP juga memiliki beberapa kekurangan, di antaranya:

  • Biaya memori. Karena semua prosesor dalam SMP berbagi memori yang sama, memori utama harus cukup besar untuk mendukung semua prosesor yang digunakan.
  • Kompatibilitas. Agar SMP dapat bekerja, OS, program, dan aplikasi harus mendukung arsitektur ini.
  • OS yang kompleks. OS harus mengelola semua prosesor dalam sistem SMP, sehingga desain dan pengelolaan OS menjadi lebih rumit, terutama dalam lingkungan komputasi yang membutuhkan banyak sumber daya.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *