Selasa, 29 November 2011

Komputasi Modern (Kecepatan prosesor)

Untuk ulasan kali ini, saya akan mencoba untuk menganalisis dan menuliskan bagaimana cara untuk menambah kecepatan prosesor. Sebelum kita sampai pada bagaimana menambah kecepatan prosesor, saya akan mencoba menerangkan tentang definisi apa itu prosesor. Prosesor merupakan bagian utama dari computer yang berfungsi untuk mengatur semua aktivitas yang ada pada computer. Satuan kecepatan pada processor adalah MHz dan umumnya computer saat ini rata rata menggunakan kecepatan GHz ( 1000 MegaHertz ). Semakin besar nilai kecepatannya semakin cepat proses eksekusi pada computer. Jika pada tubuh manusia, processor dapat dianalogikan sebagai otaknya. Maka dari itu prosesor menentukan kecepatan pada performa computer. Namun semakin besar kecepat suatu prosesor, maka semakin besar pula daya yang dibutuhkan, dan panas yang dihasilkan juga semakin tinggi. Karena hal inilah produsen-produsen prosesor yang ada saat ini mempunyai teknik khusus untuk menangani masalah ini, yaitu membuat inti prosesor kedua yang dijalankan secara parallel, yang dikenal dengan teknologi dualcore.

Faktor-faktor yang mempengaruhi kecepatan prosesor adalah sebagai berikut:

1. Penambahan kecepatan clock mikroprosesor

Kecepatan prosesor biasanya ditentukan oleh kecepatan clock dari control unitnya., yang diukur dengan jumalh putaran yang terjadi perdetik. Untuk PC kelas tinggi, workstation dan mainframe diukur dengan MIPS (million instruction per second). Dan FLOPS (floating point operations per second) dan GFLOPS (Giga floating point per second) digunakan untuk mengukur kecepatan supercomputer. Pada saat kecepatan prosesor dan kapasitas memori meningkat dengan cepat, interface antara prosesor dan memori utama merupakan lintasan yang penting didalam proses kerja suatu computer. Interface mempunyai tugas untuk membawa aliran konstan perintah-perintah program dan data antar keping memori dan prosesor. Jika memori gagal untuk mengimbangi permintaan prosesor, maka prosesor akan berada dalam masa tunggu yang akan menghilangkan waktu pengolahan.

2. Cache Memori

Cache memori merupakan memori yang berkecepatan tinggi namun berukuran kecil. Cache memori ini digunakan untuk menyimpan salinan data atau instruksi yang sering diproses oleh CPU. Selain itu chace memori berfungsi untuk menjembatani perbedaa kecepatan anatara CPU dan memori utama. Dalam implementasinya biasanya cache memori yang digunakan adalah jenis Statik RAM (SRAM). Pada cache memori operasi yang yang berjalan adalah sebagai berikut:

  1. CPU akan meminta isi suatu lokasi memori.
  2. Memori akan memeriksa apakah data terdapat di cache.
  3. Jika data tersebut ada di cache, maka data akan langsung diambil dari cache (lebih cepat).
  4. Jika data tersebut tidak berada di cache, maka memori akan menyalinnya ke cache. Lalu memori akan mengirimkan data yang diminta CPU(lebih lambat).

Berdasarkan kecepatannya, Jika suatu cache berukuran semakin besar, maka semakin cepat pula kerjanya. Namun waktu pengecekean cache akan lebih lama. Semakin besar cache juga akan semakin besar juga nilai jualnya.

3. Pengoptimalan sistem pendukung ALU (sistem pipeline)

Penggunaan teknologi pipeline yang digunakan pada computer saat ini adalah untuk meningkatkan kinerja dari sebuah computer. Pipeline merupakan cara yang digunakan untuk melakukan sejumlah pemrosesan/ pekerjaan secara bersamaan tetapi dalam tahap yang berbeda yang dialirkan secara continue pada unit pemrosesan. Pipeline ini diterapkan pada berbagai tingkatan dalam system computer, bisa pada level tinggi (pemrosesan aplikasi) dan pada level rendah (instruksi pada microprocesor).

Pada microprocessor yang tidak menggunakan pipeline, satu perintah dilakukan hingga selesai, baru instruksi selanjutnya dapat dilaksanakan. Hal ini jelas akan lebih memakan waktu. Namun pada microprocessor yang menggunakan teknologi pipeline ini bisa langsung melaksanakan 2 instruksi / perintah secara bersamaan, namun instruksi yang dilaksanakan bersamaan ini berada pada tahap yang berbeda. Walaupun dengan menggunakan pipeline dapat mempersingkat waktu pengerjaan, namun terdapat juga kesulitan pada saat penguunaan pipeline ini yaitu:

  1. Terjadinya penggunaan resource yang bersamaan, karena instruksi yang proses secara bersamaan, kemungkinan instruksi ini sama-sama membutuhkan resource yang sama. Maka diperlukan adanya pengaturan yang tepat agar proses tetap lancar.
  2. Ketergantungan terhadap data, masalah ini dapat muncul apabila instruksi yang berurutan memerlukan data dari instruksi sebelumnya. Misalnya jika instruksi 1 sedang diproses di tahap ke 3, sedangkan instruksi 2 yang sedang diproses di tahap ke 1 membutuhkan data dari instruksi 1 yang masih diproses.
  3. Pengaturan jump ke suatu lokasi memori, untuk masalah jump yang perlu diperhatikan adalah ketika sebuah instruksi meminta untuk melompat ke suatu lokasi tertentu, akan terjadi perubahan counter. Sedangkan instruksi yang sedang berjalan dalam satu tahap proses yang berikutnya mungkin tidak mengharapkan terjadinya perubahan program counter.

Dengan menerapkan teknik pipeline ini, akan ditemukan sejumlah perhatian yang khusus terhadap beberapa hal di atas, tetapi tetap akan menghasilkan peningkatan yang berarti dalam kinerja microprocessor.

4. Pendelegasian tugas (Direct Memory Access – DMA)

Jika ukuran data yang ditransfer cukup besar, prosesor akan berulan kali menlakukan context switch (proses lain) hal ini akan mengakibatkan overhead. Untuk menangani hal ini, digunakan suatu control unit yang disediakan untuk mentransfer data langsung ke perangkat external dan memori utama tanpa intervensi terus menerus dari prosesor. Control unit yang digunakan adalah DMA. Setiap pengendali peralatan dapat saja memiliki DMA tersendiri. Alternatif lain adalah dengan memiliki sebuah pengendali DMA pada motherboard yang mengatur transfer ke berbagai peralatan.Untuk memulai transfer data, driver peralatan akan menulis blok perintah DMA memori yang menunjuk sumber data, tujuan, dan jumlah byte yang akan ditransfer. CPU kemudian akan mengirimkan alamat blok perintah ini pada pengendali DMA. pengendali DMA akan memproses informasi ini untuk kemudian mengoperasikan bus memori. Ada tiga langkah yang dilakukan dalam transfer DMA:

  1. Prosesor mempersiapkan DMA transfer dengan menyediakan data-data dari sebuah perangkat, operasi yang akan ditampilkan, alamat memori yang menjadi sumber dan tujuan data serta banyaknya byte yang akan ditransfer.
  2. Pengendali DMA akan memulai operasi yaitu: menyiapkan bus, menyiapkan alamat, menulis dan membaca data. Hingga seluruh blok sudah ditransfer.
  3. Pengendali DMA akan menginterupsi prosessor, untuk melakukakan tindakan selanjutnya.

5. Paralelisme (Multi Core)

Saat ini kita sering mendengar istilah multicore pada satu prosesor, ide dasar dari multicore ini adalah memperbanyak inti pemroses yang akan meningkatkan waktu pemrosesannya, hal ini kareana pemrosesan terjadi secara parallel. Awalnya multicore diawali oleh system multi prosesor. System ini membutuhkan banyak sumber daya untuk masing-masing prosesornya, untuk interkoneksinya dibutukan sebuah BUS berkecepatan tinggi dan setiap element prosessor memiliki RAN dn FSB. Sistem multi prosesor ini bekerja dengan maksimal untuk setiap elemen pemrosesannya. Karena setiap prosessor mempunyai RAM yang didedikasikan khusus untuk satu prosessor. Peningkatan kinerja berbanding dengan kecepatan dan kapasitas RAM yangdigunakan pada masing-masing elemen pemroses.

http://missmeiga.ngeblogs.com/tag/prosesor/


Tidak ada komentar:

Posting Komentar