Senin, 03 Januari 2011

Memaksimalkan prosesor


By: Dita Septiana/PCA-10-01/30310005
MEMAKSIMALKAN PROSESOR



Dewasa ini berbagai macam cara telah dilakukan untuk meningkatkan kinerja prosesor. Dalam buku ini akan dibahas cara meningkatkan kinerja prosesor dengan cara proses paralel dan pipeline.
1)      Konsep Paralelisme

Paralelisme (parallelism) lahir dari pendekatan yang biasa dipergunakan oleh para perancang sistem untuk menerapkan konsep pemrosesan konkuren. Teknik ini meningkatkan kecepatan proses dengan cara memperbanyak jumlah modul perangkat keras yang dapat beroperasi secara simultan disertai dengan membentuk beberapa proses yang bekerja secara simultan pada modul-modul perangkat keras tersebut. Secara formal, pemrosesan paralel adalah sebuah bentuk efisien pemrosesan informasi yang menekankan pada eksploitasi dari konkurensi kejadian-kejadian dalam proses komputasi.
·         Tingkat Paralelisme
Berdasarkan tingkat paralelismenya prosesor paralel dapat dibagi menjadi beberapa tingkat sebagai berikut :
1.       Komputer Array :
a.     Prosesor array : beberapa prosesor yang bekerja sama untuk mengolah set instruksi yang sama dan data yang berbeda – beda atau biasa disebut SIMD (Single Instruction-stream Multiple Data)
b.     Prosesor vektor : beberapa prosesor yang disusun seperti pipeline.
2.       Multiprosesor, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang saling berbagi memori.
3.       Multikomputer, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang masing-masing prosesor memiliki memori sendiri.

·         Jenis-jenis pemrosesan paralel
Pemrosesan paralel dapat dibagi ke dalam beberapa klasifikasi, sebagai berikut :
1.    Berdasarkan simetri penjadwalannya, pemrosesan parallel dapat dibagi dalam beberapa jenis: 
a)      Asymmetric Multiprocessing (ASMP)
b)      Symmetric Multiprocessing (SMP)
c)       Clustering
2.    Berdasarkan aliran instruksi dan datanya, pemrosesan parallel dapat dibagi dalam beberapa jenis:   
a)      SISD (Single Instruction on Single Data Stream)
b)      SIMD (Single Instruction on Multiple Data Stream)
c)       MISD (Multiple Instruction on Single Data Stream)
d)      MIMD (Multiple Instruction on Multiple Data Stream)
3.    Berdasarkan kedekatan antar prosesor, pemrosesan parallel dapat dibagi dalam beberapa jenis: 
a)   Multikomputer (Loosely Coupled/ local memory) dengan memori yang terdistribusi
b)   Multiprosesor (Tightly Coupled/ global memory) dengan memori yang dapat digunakan bersama (shared memory)

·         Arsitektur Sistem Paralel
1.       Multiprocessor
Sistem multiprosesor adalah, suatu sistem dengan lebih dari satu CPU yang memiliki sebuah memori bersama, seperti sekelompok orang dalam suatu ruangan yang memili papan tulis bersama. Karena setiap CPU dapat membaca atau menulis bagian apa saja dari memori, mereka harus berkoordinasi (dalam software) agar tidak saling berebut jalurnya masing -masing.
Multiprosesor memiliki keunggulan dibanding jenis - jenis komputer paralel yaitu:
a)      Peningkatan throughput, karena lebih banyak proses / thread yang berjalan dalam satu waktu sekaligus (jika proses yang antri di ready queue sedikit). Perlu diingat hal ini tidak berarti daya komputasinya menjadi meningkat sejumlah prosesornya. Yang meningkat ialah jumlah pekerjaan yang bisa dilakukannya dalam waktu tertentu.
b)      Economy of scale (ekonomis), ekonomis dalam devices yang dibagi bersama – sama. Prosesor - prosesor terdapat dalam satu komputer dan dapat membagi peripheral (ekonomis) seperti disk dan catu daya listrik.
c)       Peningkatan kehandalan (reliabilitas), Jika satu prosesor mengalami suatu gangguan, maka proses yang terjadi masih dapat berjalan dengan baik karena tugas prosesor yang terganggu diambil alih oleh prosesor lain. Hal ini dikenal dengan istilah Graceful Degradation. Sistemnya sendiri dikenal bersifat fault tolerant atau failoft system.

2.       Multikomputer
Dalam multikomputer, setiap prosesor mempunyai modul memori untuk menyimpan dan mengambil data selama pemrosesan. Masing-masing prosesor mempunyai satu atau lebih hubungan langsung ke prosesor lain untuk transmisi data. Jika prosesor tidak mempunyai koneksi langsung ke prosesor lain, komunikasi dapat dilangsungkan melalui prosesor antara (intermediate processor) untuk mengirim data.
2)      Pipeline
Konsep pipeline menjelaskan strategi lebih jauh. Pelaksanaan instruksi sering dibagi ke dalam banyak bagian dan bukan hanya ke dalam dua bagian saja, di mana masing-masing bagian ditangani oleh seperangkat hardware khusus, dan keseluruhan bagian tersebut dapat beroperasi secara parallel.
·         Kekurangan Pipeline
o   Kekurangan structural
Kekurangan struktural  disebabkan oleh perangkat keras yang tidak mendukung adanya proses pipeline seperti yang diharapkan. Dalam analogi mobil di atas kekurangan struktural ini terjadi apabila pekerja yang mengeringkan mobil dan memoles mobil ternyata adalah orang yang sama maka dua langkah tersebut tidak bisa dipisahkan.
o   Data
Kekurangan data disebabkan adanya proses yang membutuhkan data hasil proses sebelumnya. Maka proses selanjutnya tidak bisa dimulai sebelum proses yang sedang berlangsung telah selesai. Dalam hal ini terjadi ketergantungan proses.
o   Control
Kekurangan kontrol terjadi apabila suatu langkah waktu eksekusinya berbeda-beda tergantung dari data yang diolahnya. Sebagai contoh waktu untuk mencuci menggunakan sabun untuk mobil sedan tidak akan sama dengan mobil minibus, walaupun langkah keduanya sama, yaitu mencuci mobil menggunakan sabun.

3)      Supersaklar
Prosesor Superskalar adalah istilah bagi prosesor yang mampu melakukan banyak instruksi setiap siklusnya, dengan menggunakan sebuah teknik yang disebut dengan pipelining. Prosesor superskalar umumnya menggunakan beberapa unit fungsional, menciptakan jalur paralel di mana berbagai instruksi yang berbeda dapat dieksekusi secara parallel. Dengan pengaturan tersebut, maka dimungkinkan untuk memulai eksekusi beberapa instruksi secara paralel tiap siklus detak. Tentu saja, eksekusi paralel harus mempertahankan kebenaran logikan program, sehingga hasil yang diperoleh harus sama dengan hasil dari eksekusi secara serial.

Tidak ada komentar:

Posting Komentar