Luasnya adopsi multi-core hardware dalam banyak kasus sesungguhnya memperlambat proses komputer. Skenario yang ada berupa, perusahaan memiliki data aplikasi software dan ingin membuat software tersebut berjalan secepat mungkin. Ketika mesin single core sudah tidak berlaku, maka perusahaan akan membali multi-core hardware baru,dan dengan multi-core justru aplikasi akan berjalan lebih lambat.
Ketika ditanyakan kepada technical support soal masalah ini, maka hal pertama yang menjadi jawabannya seperti sudahkan hardware di-upgrade? Seringkali, ketika aplikasi dipindah ke single-core hardware lagi, maka masalah tersebut akan menghilang. Bagaimana hal itu bisa terjadi ? Bukankah lebih banyak core akan membuat software semakin cepat? Jawabannya tidak. Kecuali software ditulis untuk paradigm multi-core, maka multi-core hardware mungkin akan menghabiskan uang hanya untuk peningkatan performance.
Ketika processor semakin bertambah, kecepatan bus atau disk makin cepat, dan program akan berjalan lebih cepat. Namun, dengan paradigm multi-core, maka aplikasi harus berhati-hati karena banyak prossesor yang sedang aktif. Aplikasi kemudian harus menyesuaikan dengan system operasi multi-tasking dan menyadari bahwa multi-core processor akan berjalan secara parallel dan menghasilkan banyak task untuk banyak processor. Model pemrograman untuk multi-core processor ini adalah dengan menjaga track ketika setiap task sudah completed maka aksi berikutnya baru bisa dilakukan. Hal lainnya berkaitan dengan resource yang di-share antar processor, jika satu bagian memory dirubah oleh processor yang berbeda, maka task harus menunggu mekanisme antrian.
Dalam model multi-core, maka user dapat memperoleh masalah besar yang sulit di-debug dan dioptimalkan. Seringkali pekerjaan antrian task menjadi tidak efisien, di sisi lain , satu proses akan mengunci share resource A, kemudian ingin share dengan B, dimana B akan dikunci oleh proses yang menggunakan resource B dan menginginkan resource A. Akhirnya, deadlock, dan hanya sejumlah kecil programmer yang dapat mengatasi hal ini.
Berita buruknya, banyak aplikasi yang tidak cocok dengan proses parallel ini, atau proses yang dijalankan secara bersamaan. Penyebab kelambatan aplikasi ini karena clock speed multi-core processor di tiap core dapat berjalan lebih lambat daripada processor single core yang digantikan. Beberapa power multi-core processor digunakan untuk menahan track dari sharing resources di semua processor . Ketiga, banyak core processor yang ada di area yang sama di memory. Keempat, masalah terjadi ketika banyak waktu yang habis terbuang ketika mengindentifikasi dimana proses sedang berjalan. Namun, jika user memiliki 10 program yang berjalan secara terpisah, maka mesin multi-core ini akan dapat menjalankan program tersebut dalam sekali waktu dan lebih cepat, karena multi-core processor memiliki memory yang baru dan dapat diakses dengan cepat. Keuntungan lainnya termasuk adanya penyimpanan SSD dan akses jaringan lebih cepat, dan sebagainya.
Ketika processor semakin bertambah, kecepatan bus atau disk makin cepat, dan program akan berjalan lebih cepat. Namun, dengan paradigm multi-core, maka aplikasi harus berhati-hati karena banyak prossesor yang sedang aktif. Aplikasi kemudian harus menyesuaikan dengan system operasi multi-tasking dan menyadari bahwa multi-core processor akan berjalan secara parallel dan menghasilkan banyak task untuk banyak processor. Model pemrograman untuk multi-core processor ini adalah dengan menjaga track ketika setiap task sudah completed maka aksi berikutnya baru bisa dilakukan. Hal lainnya berkaitan dengan resource yang di-share antar processor, jika satu bagian memory dirubah oleh processor yang berbeda, maka task harus menunggu mekanisme antrian.
Dalam model multi-core, maka user dapat memperoleh masalah besar yang sulit di-debug dan dioptimalkan. Seringkali pekerjaan antrian task menjadi tidak efisien, di sisi lain , satu proses akan mengunci share resource A, kemudian ingin share dengan B, dimana B akan dikunci oleh proses yang menggunakan resource B dan menginginkan resource A. Akhirnya, deadlock, dan hanya sejumlah kecil programmer yang dapat mengatasi hal ini.
Berita buruknya, banyak aplikasi yang tidak cocok dengan proses parallel ini, atau proses yang dijalankan secara bersamaan. Penyebab kelambatan aplikasi ini karena clock speed multi-core processor di tiap core dapat berjalan lebih lambat daripada processor single core yang digantikan. Beberapa power multi-core processor digunakan untuk menahan track dari sharing resources di semua processor . Ketiga, banyak core processor yang ada di area yang sama di memory. Keempat, masalah terjadi ketika banyak waktu yang habis terbuang ketika mengindentifikasi dimana proses sedang berjalan. Namun, jika user memiliki 10 program yang berjalan secara terpisah, maka mesin multi-core ini akan dapat menjalankan program tersebut dalam sekali waktu dan lebih cepat, karena multi-core processor memiliki memory yang baru dan dapat diakses dengan cepat. Keuntungan lainnya termasuk adanya penyimpanan SSD dan akses jaringan lebih cepat, dan sebagainya.
0 komentar:
Posting Komentar