Kamis, 24 Januari 2013

2. Tugas ke-4 Prosesor Paralel



ARTIKEL 2 : PROSESOR PARALEL

1.    Jaringan interkoneksi

            Penggabungan teknologi komputer dan komunikasi berpengaruh sekali terhadap bentuk organisasi sistem komputer. Dewasa ini, konsep "pusat komputer", dalam sebuah ruangan yang berisi sebuah komputer besar, tempat dimana semua pengguna mengolah pekerjaannya, merupakan konsep yang sudah ketinggalan jaman. Model komputer tunggal yang melayani seluruh tugas-tugas komputasi suatu organisasi telah diganti oleh sekumpulan komputer berjumlah banyak yang terpisah-pisah tetapi saling berhubungan dalam melaksanakan tugasnya. Sistem seperti ini disebut sebagai Jaringan Komputer (Computer Network) .
            Apa jaringan komputer itu dan apa manfaatnya?
Jaringan Komputer dapat diartikan sebagai suatu himpunan interkoneksi sejumlah komputer otonom. Dua buah komputer dikatakan membentuk suatu network bila keduanya dapat saling bertukar informasi. Pembatasan istilah otonom disini adalah untuk membedakan dengan sistem master/slave. Bila sebuah komputer dapat membuat komputer lainnya aktif atau tidak aktif dan mengontrolnya, maka komputer komputer tersebut tidak otonom. Sebuah sistem dengan unit pengendali (control unit) dan sejumlah komputer lain yang merupakan slave bukanlah suatu jaringan; komputer besar dengan remote printer dan terminalpun bukanlah suatu jaringan.

Manfaat Jaringan

            Secara umum, jaringan mempunyai beberapa manfaat yang lebih dibandingkan dengan komputer yang berdiri sendiri dan dunia usaha telah pula mengakui bahwa akses ke teknologi informasi modern selalu memiliki keunggulan kompetitif dibandingkan pesaing yang terbatas dalam bidang teknologi.
            Jaringan memungkinkan manajemen sumber daya lebih efisien. Misalnya, banyak pengguna dapat saling berbagi printer tunggal dengan kualitas tinggi, dibandingkan memakai printer kualitas rendah di masing-masing meja kerja. Selain itu, lisensi perangkat lunak jaringan dapat lebih murah dibandingkan lisensi stand-alone terpisah untuk jumlah pengguna sama.
Jaringan membantu mempertahankan informasi agar tetap andal dan up-to-date. Sistem penyimpanan data terpusat yang dikelola dengan baik memungkinkan banyak pengguna mengaskses data dari berbagai lokasi yang berbeda, dan membatasi akses ke data sewaktu sedang diproses.
Jaringan membantu mempercepat proses berbagi data (data sharing). Transfer data pada jaringan selalu lebih cepat dibandingkan sarana berbagi data lainnya yang bukan jaringan.
            Jaringan memungkinkan kelompok-kerja berkomunikasi dengan lebih efisien. Surat dan penyampaian pesan elektronik merupakan substansi sebagian besar sistem jaringan, disamping sistem penjadwalan, pemantauan proyek, konferensi online dan groupware, dimana semuanya membantu team bekerja lebih produktif.
Jaringan membantu usaha dalam melayani klien mereka secara lebih efektif. Akses jarak-jauh ke data terpusat memungkinkan karyawan dapat melayani klien di lapangan dan klien dapat langsung berkomunikasi dengan pemasok.
            Ada tiga tipe jaringan yang umum yang digunakan antara lain :
Jaringan WorkGroup,
Janringan Lan, dan
Jaringan Wan

2.   Mesin SIMD  :

• SIMD = Singe Instruction, Multiple Data
– All processors do exactly the same thing
– Simple hardware
            Instruksi tunggal, beberapa data (SIMD), adalah kelas komputer paralel dalam taksonomi Flynn. Ini menggambarkan komputer dengan elemen pemrosesan ganda yang melakukan operasi yang sama pada titik data secara bersamaan. Dengan demikian, mesin tersebut mengeksploitasi paralelisme data tingkat. SIMD terutama berlaku untuk tugas-tugas umum seperti menyesuaikan kontras dalam gambar digital atau menyesuaikan volume audio digital. Desain CPU yang paling modern memiliki instruksi SIMD dalam rangka meningkatkan kinerja penggunaan multimedia.            
            Instruksi SIMD secara luas digunakan untuk memproses grafis 3D, meskipun kartu grafis modern dengan tertanam SIMD sebagian besar telah mengambil alih tugas ini dari CPU. Beberapa sistem juga termasuk fungsi menukar urutan yang kembali pack elemen dalam vektor, membuat mereka sangat berguna untuk pengolahan data dan kompresi. Mereka juga digunakan dalam kriptografi [2] [3]. [4] Kecenderungan tujuan umum komputasi pada GPU (GPGPU) dapat mengakibatkan penggunaan yang lebih luas SIMD di masa depan.
            Adopsi sistem SIMD dalam perangkat lunak komputer pribadi pada awalnya lambat, karena sejumlah masalah. Salah satunya adalah bahwa banyak instruksi SIMD set awal cenderung memperlambat kinerja keseluruhan sistem karena penggunaan ulang yang ada register floating point. Sistem lain, seperti MMX dan 3DNow, dukungan yang ditawarkan untuk jenis data yang tidak menarik untuk khalayak luas dan memiliki petunjuk konteks mahal beralih ke beralih antara menggunakan FPU dan register MMX!. Compiler juga sering kekurangan dukungan, membutuhkan programmer untuk menggunakan coding bahasa assembly.
            SIMD pada x86 memiliki awal yang lambat. Pengenalan 3DNow! oleh AMD dan Intel SSE oleh hal-hal yang agak bingung, tapi hari ini sistem tampaknya telah menetap (setelah AMD mengadopsi SSE) dan compiler baru harus menghasilkan lebih banyak perangkat lunak SIMD-enabled. Intel dan AMD sekarang keduanya menyediakan perpustakaan matematika dioptimalkan yang menggunakan instruksi SIMD, dan alternatif open source seperti libSIMD, SIMDx86 dan SLEEF sudah mulai muncul.
            Apple Computer telah sukses agak lebih, meskipun mereka memasuki pasar SIMD lambat daripada yang lain. AltiVec menawarkan sistem yang kaya dan dapat diprogram menggunakan kompiler semakin canggih dari Motorola, IBM dan GNU, sehingga perakitan bahasa pemrograman jarang diperlukan. Selain itu, banyak dari sistem yang akan mendapat manfaat dari SIMD yang disediakan oleh Apple sendiri, untuk iTunes contoh dan QuickTime. Namun, pada tahun 2006, komputer Apple pindah ke prosesor Intel x86. Apple API dan alat-alat pengembangan (Xcode) yang ditulis ulang untuk menggunakan SSE2 SSE3 dan bukannya AltiVec. Apple adalah pembeli yang dominan chip PowerPC dari IBM dan Freescale Semiconductor dan meskipun mereka meninggalkan platform, pengembangan lebih lanjut dari AltiVec dilanjutkan dalam desain Arsitektur Daya beberapa dari Freescale dan IBM.
            SIMD dalam register, atau Swar, adalah berbagai teknik dan trik yang digunakan untuk melakukan SIMD dalam tujuan umum register pada perangkat keras yang tidak memberikan dukungan langsung untuk instruksi SIMD. Hal ini dapat digunakan untuk mengeksploitasi paralelisme dalam algoritma tertentu bahkan pada hardware yang tidak mendukung SIMD secara langsung.
            Salah satu prosesor terbaru untuk menggunakan pengolahan vektor adalah Processor your dikembangkan oleh IBM bekerjasama dengan Toshiba dan Sony. Ia menggunakan sejumlah prosesor SIMD (masing-masing dengan RAM independen dan dikendalikan oleh CPU tujuan umum) dan diarahkan pada dataset besar diperlukan oleh aplikasi pengolah 3D dan video.
            Sebuah kemajuan baru oleh Ziilabs adalah produksi prosesor SIMD tipe yang dapat digunakan pada perangkat mobile, seperti media player dan ponsel. [5]
            Besar skala komersial SIMD prosesor yang tersedia dari ClearSpeed ​​Technology, Ltd dan Stream Processors, CSX600 Inc ClearSpeed ​​(2004) memiliki 96 core masing-masing dengan 2 ganda-presisi floating point unit sedangkan CSX700 (2008) memiliki 192. Prosesor aliran dipimpin oleh Bill komputer arsitek Dally. Storm-1 prosesor mereka (2007) berisi 80 core SIMD dikendalikan oleh CPU MIPS.

3.    Mesin MIMD  : Multiple Instruction, Multiple Data
– “traditional” parallel processing
– N processors all doing their own thing

            MIMD (multiple instruksi, beberapa data) adalah teknik yang digunakan untuk mencapai paralelisme. Mesin menggunakan MIMD memiliki sejumlah prosesor yang berfungsi asynchronous dan independen. Setiap saat, prosesor yang berbeda dapat menjalankan instruksi yang berbeda pada bagian yang berbeda dari data. Arsitektur MIMD dapat digunakan di sejumlah area aplikasi seperti desain dibantu komputer / komputer-dibantu manufaktur, simulasi, pemodelan, dan sebagai saklar komunikasi. Mesin MIMD dapat menjadi baik memori bersama atau kategori memori terdistribusi. Klasifikasi ini didasarkan pada bagaimana MIMD memori prosesor akses. Mesin memori bersama mungkin jenis bus berbasis, diperpanjang, atau hirarkis. Mesin memori terdistribusi mungkin memiliki hypercube atau skema interkoneksi mesh.

            Dalam mesin memori terdistribusi MIMD, prosesor masing-masing memiliki lokasi memori tersendiri. Setiap prosesor tidak memiliki pengetahuan langsung tentang memori prosesor lain. Untuk data yang akan dibagi, maka harus lulus dari satu prosesor yang lain sebagai pesan. Karena tidak ada memori bersama, pertentangan ini tidak besar masalah dengan mesin ini. Hal ini tidak layak secara ekonomis untuk menghubungkan sejumlah besar prosesor langsung satu sama lain. Sebuah cara untuk menghindari ini banyak sambungan langsung adalah untuk menghubungkan setiap prosesor hanya beberapa orang lain. Jenis desain dapat menjadi tidak efisien karena waktu tambahan yang dibutuhkan untuk menyampaikan pesan dari satu prosesor yang lain sepanjang jalur pesan. Jumlah waktu yang dibutuhkan untuk prosesor untuk melakukan pengiriman pesan yang sederhana dapat menjadi substansial. Sistem yang dirancang untuk mengurangi kerugian ini waktu dan hypercube dan mesh antara dua skema interkoneksi populer.

            Sebagai contoh memori terdistribusi (multicomputers): MPP (prosesor paralel masif) dan KK (Clusters Workstation). Yang pertama adalah rumit dan mahal: banyak super-komputer digabungkan dengan broad-band jaringan. Contoh: hypercube dan interconections mesh. KK adalah "home-made" versi untuk sebagian kecil dari harga.

Hypercube interkoneksi jaringan

            Dalam mesin MIMD memori didistribusikan dengan sistem interkoneksi jaringan hypercube berisi empat prosesor, prosesor dan modul memori yang ditempatkan di setiap titik sudut persegi. Diameter dari sistem ini adalah jumlah minimum langkah yang diperlukan untuk satu prosesor untuk mengirim pesan ke prosesor yang terjauh. Jadi, misalnya, diameter kubus 2-adalah 1. Dalam sistem hypercube dengan delapan prosesor dan setiap modul prosesor dan memori yang ditempatkan di titik kubus, diameter adalah 3. Secara umum, sebuah sistem yang berisi 2 ^ N prosesor dengan masing-masing prosesor langsung terhubung ke N prosesor lainnya, diameter sistem ini N. Salah satu kelemahan dari sistem hypercube adalah bahwa hal itu harus dikonfigurasi dalam kekuatan dari dua, sehingga mesin suatu keharusan dibangun yang berpotensi memiliki prosesor lebih banyak daripada yang benar-benar diperlukan untuk aplikasi.

4.    ARSITEKTUR PENGGANTI

           Intel Indonesia Corporation akan mengalihkan teknologi prosesor dari 65 nanometer (nm) ke teknologi 45 nm yang memiliki performa lebih tinggi dengan energi yang lebih hemat.
"Prosesor yang menggunakan teknologi 65 nanometer di pertengahan tahun akan sama jumlahnya dengan prosesor yang menggunakan teknologi 45 nanometer. Mereka akan berada di titik tengah yakni 50 persen 50 persen.
          Dia mengatakan pada akhir tahun 2008 diharapkan penggunaan prosesor lama dengan teknologi 90 nm dan 65 nm akan berkurang dan berganti dengan teknologi 45 nm.
          Dia menjelaskan teknologi 90 nm saat ini sebenarnya masih dijual untuk komponen industri. Di pasaran sendiri teknologi 45 nm, 65 nm, dan 90 nm akan tetap ada.
         Teknologi 45 nm yang baru diluncurkan di Indonesia tersebut merupakan peningkatan transitor terbesar yang dilakukan Intel selama 40 tahun terakhir, karena prosesor tersebut menggunakan bahan ’high-k metal gate’ (Hi-K) berbasis Hafnium dan rencananya akan mulai menggunakan bahan halogen pada tahun 2008.
         Prosesor Intel Core 2 Exteme dan Xeon merupakan produk pertama yang diproduksi menggunakan teknologi 45 nm tersebut, yang dapat meningkatkan kinerja dan mengurangi penggunaan daya.
         Terobosan ini, menurut dia, memberikan jalan bagi Intel untuk menciptakan produk berukuran 25 persen lebih kecil dari versi sebelumnya dan lebih hemat biaya, serta dapat meraih kesempatan untuk menciptakan ’system on chip’ bagi produk elektronik rumahan dan perangkat bergerak.

1. Tugas ke-4 Pelipening dan RISC


ARTIKEL 1 : PELIPENING DAN RISC

   1 .   Pipelining

            Pipelining:adalah sebuah teknik yang memungkinkan dapat melakukan eksekusi secara simultan.
Sehingga proses instruksi lebih efiisien.
            Sebuah teknik membusuk proses berurutan
ke suboperations, dengan masing-masing subproses menjadi
dieksekusi dalam segmen khusus parsial yang
beroperasi bersamaan dengan semua segmen lainnya


   2.   PROSEDUR VEKTOR PIPELINING

Aplikasi Pengolah Vektor
Permasalahan yang dapat dirumuskan secara efisien dalam hal vektor
Long-range prakiraan cuaca
minyak eksplorasi
Seismik analisis data
medis diagnosis
Aerodinamika dan simulasi penerbangan ruang angkasa
Kecerdasan buatan dan sistem pakar
Pemetaan genom manusia
pengolahan citra

Vector Processor (komputer)
Kemampuan untuk vektor proses, dan struktur data terkait seperti matriks
dan multi-dimensi array, jauh lebih cepat daripada komputer konvensional
Prosesor vektor juga dapat pipelined



   3.   RISC

            RISC singkatan dari Reduced Instruction Set Computer. Merupakan bagian dari arsitektur mikroprosessor, berbentuk kecil dan berfungsi untuk negeset istruksi dalam komunikasi diantara arsitektur yang lainnya.
Sejarah RISC
            Proyek RISC pertama dibuat oleh IBM, stanford dan UC –Berkeley pada akhir tahun 70 dan awal tahun 80an. IBM 801, Stanford MIPS, dan Barkeley RISC 1 dan 2 dibuat dengan konsep yang sama sehingga dikenal sebagai RISC. RISC mempunyai karakteristik :
            • one cycle execution time : satu putaran eksekusi. Prosessor RISC mempunyai CPI (clock per instruction) 
atau waktu per instruksi untuk setiap putaran. Hal ini dimaksud untuk mengoptimalkan setiap instruksi pada CPU.
pipelining:adalah sebuah teknik yang memungkinkan dapat melakukan eksekusi secara simultan.Sehingga 
proses instruksi lebih efiisien
large number of registers: Jumlah register yang sangat banyak. RISC di Desain dimaksudkan untuk dapat 
menampung jumlah register yang sangat banyak untuk mengantisipasi agar tidak terjadi interaksi yang berlebih dengan memory.

            Disingkat dengan CISC. Rangkaian instruksi built-in pada processor yang terdiri dari perintah-perintah yang kompleks. Instruksi-instruksi yang tersedia memudahkan para programmer untuk mengembangkan aplikasi untuk plattform CISC. Di lain pihak, banyaknya instruksi dalam CISC dapat mengurangi kecepatannya. Chip Intel x86 merupakan chip dari jenis CISC karena ia menggunakan set instruksi kompleks.
             merupakan kebalikan dari RISC, biasanya digunakan pada keluarga processor untuk PC (AMD, Cyrix). Para pesaing Intel seperti Cyrix dan AMD juga telah menggunakan chip RISC tetapi ia telah dilengkapi dengan penukar (converter) CISC.
            Di sini chip jenis RISC akan membahagikan operasi besar kepada beberapa operasi  lebih mudah sehingga terdapat perintah-perintah kecil yang mampu memproses dengan cepat.
            Para perancang mikroprosesor mencari kinerja lebih bagus di dalam keterbatasan  kontemporer. Pada tahun 1970-an misalnya, memori diukur dengan kilobyte dan sangat mahal saat itu. CISC merupakan pendekatan dominan karena menghemat memori.
            Pada arsitektur CISC seperti Intel x86, yang diperkenalkan pada tahun 1978, bisa terdapat ratusan instruksi program - perintah-perintah sederhana yang menyuruh sistem menambah angka, menyimpan nilai dan menampilkan hasilnya. Bila semua instruksi panjangnya sama, instruksi sederhana akan memboroskan memori. Instruksi sederhana membutuhkan ruang penyimpanan 8 bit, sementara instruksi yang paling kompleks mengkonsumsi sebanyak 120 bit.
            Walaupun instruksi dengan panjang bervariasi lebih sulit diproses oleh chip, instruksi CISC yang lebih panjang akan lebih kompleks. Bagaimanapun, untuk memelihara kompatibilitas software, chip x86 seperti Intel Pentium III dan AMD Athlon harus bekerja dengan instruksi CISC yang dirancang pada tahun 1980-an, walaupun keuntungan awalnya yaitu menghemat memori tidaklah penting sekarang.
            Kelebihan dan kekurangan dari dua arsitektur tersebut sering menjadi perdebatatan diantara para ahli. Namun demikian teknologi terkini menggunakan arsitektur RISC ini.

Perbedaan RISC dengan CISC dilihat dari segi instruksinya
RISC ( Reduced Instruction Set Computer )
- Menekankan pada perangkat lunak, dengan sedikit transistor
 Instruksi sederhana bahkan single
- Load / Store atau memory ke memory bekerja terpisah
- Ukuran kode besar dan kecapatan lebih tinggi
- Transistor didalamnya lebih untuk meregister memori
CISC ( Complex Instruction Set Computer )
- Lebih menekankan pada perangkat keras, sesuai dengan takdirnya untuk     
pragramer.
- Memiliki instruksi komplek. Load / Store atau Memori ke Memori bekerjasama
- Memiliki ukuran kode yang kecil dan kecepatan yang rendah.
- Transistor di dalamnya digunakan untuk menyimpan instruksi - instruksi bersifat komplek

            Sudah sering kita mendengar debat yang cukup menarik antara komputer personal IBM dan kompatibelnya yang berlabel Intel Inside dengan komputer Apple yang berlabel PowerPC. Perbedaan utama antara kedua komputer itu ada pada tipe prosesor yang digunakannya. Prosesor PowerPC dari Motorola yang menjadi otak utama komputer Apple Macintosh dipercaya sebagai prosesor RISC, sedangkan Pentium buatan Intel diyakini sebagai prosesor CISC. Kenyataannya komputer personal yang berbasis Intel Pentium saat ini adalah komputer personal yang paling banyak populasinya. Tetapi tidak bisa pungkiri juga bahwa komputer yang berbasis RISC seperti Macintosh, SUN adalah komputer yang handal dengan sistem pipelining, superscalar, operasi floating point dan sebagainya.
            Apakah memang RISC lebih lebih baik dari CISC atau sebaliknya. Tetapi tahukah kita dimana sebenarnya letak perbedaan itu. Apakah prosesor dengan instruksi yang lebih sedikit akan lebih baik dari prosesor yang instruksinya kompleks dan lengkap. Apakah memang perbedaan prosesor itu hanya dari banyak atau tidaknya instruksi saja. Bukankah jumlah instruksi tidak berhubungan dengan ke-handal-an suatu prosesor. Pertanyaan-pertanyaan ini yang hendak dijawab melalui tulisan berikut. Namun supaya lebih dekat dengan elektronika praktis, ElectronicLab akan lebih fokus pada mikrokontroler low-cost yang berbasis RISC dan CISC. Sebagai contoh dari mikrokontroler CISC adalah 68HC11 buatan Motorola dan 80C51 dari Intel. Kita juga mengenal keluarga PIC12/16CXX dari Microchip dan COP8 buatan National Semiconductor sebagai mikrokontroler yang berbasis RISC.
 - Mesin dengan clock cycle yang sangat cepat sehingga
dijalankan pada tingkat satu instruksi per siklus
<- Instruksi Sederhana Set
Panjang Tetap Instruksi Format
Daftar-to-Daftar Operasi
Instruksi Siklus Tiga-Tahap Pipeline Instruksi