Rancang bangun penjadwalan tugas (task) pada komputasi paralel dengan menggunakan algoritma cost...

of 21 /21
USULAN PENELITIAN RANCANG BANGUN PENJADWALAN TUGAS (TASK) PADA KOMPUTASI PARALEL DENGAN MENGGUNAKAN ALGORITMA COST-TIME OPTIMIZATION Diajukan Untuk Membuat Skripsi Program Sarjana (S-1) pada Jurusan Teknik Informatika Fakultas Sains dan Teknologi UIN Malang Oleh: M. Fikri Muhtadi H NIM. 08650121

Embed Size (px)

description

http://ceritaberitasekolah.blogspot.com/ htpp://belajarmakalah.blogspot.com www.lagu-karo.tk

Transcript of Rancang bangun penjadwalan tugas (task) pada komputasi paralel dengan menggunakan algoritma cost...

  • 1. USULAN PENELITIANRANCANG BANGUN PENJADWALAN TUGAS (TASK) PADA KOMPUTASI PARALEL DENGAN MENGGUNAKAN ALGORITMA COST-TIME OPTIMIZATIONDiajukan Untuk MembuatSkripsi Program Sarjana (S-1) pada Jurusan Teknik InformatikaFakultas Sains dan Teknologi UIN Malang Oleh:M. Fikri Muhtadi H NIM. 08650121JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI (UIN) MALANG2010

2. USULAN PENELITIANRANCANG BANGUN PENJADWALAN TUGAS (TASK) PADA KOMPUTASI PARALEL DENGAN MENGGUNAKAN ALGORITMA COST-TIME OPTIMIZATIONNama: Dinil MaghfirohNim : 07650082Jurusan : Teknik InformatikaFakultas: Sains dan Teknologi Tanggal .................. Yang MengajukanM. Fikri Muhtadi H NIM. 08650121Telah disetujui oleh :Penguji IPenguji II Penguji IIIMengetahui,Ketua JurusanTeknik InformatikaRIRIEN KUSUMAWATI, S.Si, M.Kom.NIP. 3. A. JUDUL RANCANG BANGUN PENJADWALAN TUGAS (TASK) PADA KOMPUTASI PARALEL DENGAN MENGGUNAKAN ALGORITMA COST-TIME OPTIMIZATIONB. LATAR BELAKANGKomputer pribadi (personal computer) harganya relatif murah. Hargayang terjangkau membuat komputer jenis ini menjadi pilihan bagi beberapainstansi, termasuk diantaranya instamsi pendidikan. Laboratorium-laboratorium di instansi pendidikan kebanyakan memakai komputer pribadi.Komputer pribadi di laboratorium cenderung untuk praktikum pelajaran yangrelatif sederhana. Paradigma tersebut dinamai dengan komputasi tradisional(lihat Gambar 1). Komputasi tradisional adalah komputasi yangmenggunakan prosesor tunggal. Praktium dengan komputasi yang tinggi bah-kan membutuhkan super komputing laboratorium tidak melayani. Hal ituterjadi karena komputer pribadi mempunyai kemampuan komputasi yangrelatif rendah, walaupun sudah ada komputer pribadi dengan prosesor quadcore. Gambar 1 : komputasi dengan prosesor tunggal. Sumber : Berney, 2010Perangkat lunak yang memerlukan komputasi tinggi atau super biasanyadijalankan di super komputer atau mainframe (Stallings, 2003). Superkomputer atau mainframe mempunyai harga yang sangat mahal. Kedua jeniskomputer tersebut tidak terjangkau oleh institusi pendidikan, sehinggaperangkat lunak yang membutuhkan komputasi tinggi tidak bisa dijalankan.Komputer pribadi perlu ditingkatkan daya gunanya. Komputer pribadi-komputer pribadi dapat berbagi tugas dengan komputer pribadi yang lain.Antar komputer pribadi dapat saling komunikasi menggunakan media jaringankomputer local (Local Arena Network, LAN). Tugas-tugas (job, task, data)komputasi dapat disebar (distributed) ke komputer-komputer pribadi yanglain. Komputer yang berfungsi sebagai penyebar tugas disebut sebagai simpulkepala (head node), sedangkan komputer yang berfungsi sebagai penerimatugas disebut dengan simpul (node).Komputasi dengan menggunakan lebih dari satu prosessor disebut dengankomputasi paralel (lihat Gambar 1). Rangkaian tugas-tugas yang biasanya diproses secara berurutan oleh prosesor tunggal (Gambar 1), dibagi-bagi 4. kemudian disebar ke beberapa prosesor atau prosesor jamak (Gambar 1). berdasarkan konsep penyebaran tugas, komputer-komputer pribadi dapat digunakan sebagai sarana komputasi paralel. Komputer pribadi yang saling bekerja sama untuk memproses rangkain tugas ke dalam bentuk paralel dapat berkomunikasi dengan media jaringan komputer lokal. Proses pemecahan dan penyebaran rangkain tugas membutuhkan suatu komputer yang berfungsi sebagai simpul kepala. Simpul kepala harus memiliki fungsi untuk mengatur pembagian tugas, penyeimbangan beban kerja semua simpul, sinkronisasi antar simpul dan menjaga keabsahan data.Gambar 2 : komputasi dengan prosesor tunggal. Sumber : Berney, 2010 Agent merupakan salah satu obyek yang dapat beroperasi secara mandiri dan dapat berpindah tempat ke komputer lain (Wooldridge, 2002). Agent mempunyai thread tersendiri sehingga agent dapat beroperasi secara mandiri. Kemampuan berpindah memungkinkan agent untuk memproses tugas yang diterima ke komputer lain. Algoritma penjadwalan dibutuhkan karena yang mengambil keperluan proses aplikasi dan keperluan kualitas service pengguna seperti deadline, budget dan optimasinya dalam pertimbangan dalam pemilihan. Apabila user menginputkan sejumlah besar task dengan perbedaan operasi maka dibutuhkan sebuah penjadwalan untuk task-task tersebut agar mendapat pelayanan yang sesuai kebutuhan danpemakaian prosessor bisa dimaksimalkan saat pengeksekusiannya. Jadi pada komputasi paralel ini memerlukan penjadwalan (task) denganmenggunakan algoritma Cost-Time Optimization. 5. C. RUMUSAN MASALAHBerdasarkan penjelasan pada latar belakang diatas, maka rumusan masalah dalam penelitian ini sebagai berikut: 1. Bagaimana menerapkan algoritma coste time optimization untukpenjadwalan tugas pada komputasi paralel berbasis multi agent ? D. BATASAN MASALAH Batasan masalah dalam tugas akhir ini antara lain :1. Bahasa pemrograman yang digunakan java.2. Agent yang digunakan Jade (Java Agent Development) (Bellifemine, 2003).3. Titik berat pada pembuatan penjadwalan rangkaian tugas ke komputer simpul dengan mengguakan algoritma cost-time optimizationE. TUJUANTujuan dari penelitian ini adalah Membangun sistem penjadwalan komputasi paralel dengan menggunakan algoritma cost-time optimizationF. MANFAAT Manfaat yang dapat diambil dari penelitian ini adalah : 1. Dapat meningkatkan kemampuan laboratorium untuk memproses data-datadengan komputasi tingkat tinggi. 2. Pengguna laboratorium baik pengajar maupun pelajar dapat mengenal danmelakukan komputasi tingkat tinggi.G. TINJAUAN PUSTAKA1. JavaJava Platform adalah sebuah istilah yang merujuk pada sekumpulan program-program dari Sun Microsystem yang memungkinkan seseorang untuk membangun dan menjalankan program yang dibuat dengan menggunakan bahasa pemrograman Java. Platform ini tidak tergantung dengan prosessor dan sistem operasi tertentu. Untuk bekerja, ia membutuhkan mesin eksekusi yang disebut virtual machine dan compiler dengan standar pustaka tertentu.Pada platform Java, terdapat beberapa edisi, yaitu: a. Java ME (Micro Edition) b. Java SE (Standard Edition) c. Java EE (Enterprise EditionJava Virtual Machine adalah inti dari platform Java. Di dalamnya terdapat JIT (Just In-Time) compiler yang menerjemahkan byte code menjadi instruksi pada prosesor, pada saat program dijalankan dan menampung kode-kode asli program tersebut di memori selama proses eksekusi. Hal ini lah yang membuat Java tidak tergantung dengan jenis prosessor dan sistem operasi apapun.2. AgentAgen menunjukan kemampuan yang menjanjikan untuk menjadi paradigma baru dalam pengembangan perangkat lunak. Agen adalah suatu 6. komponen perangkat lunak khusus yang bersifat otonom yang menyediakan interface yang bersifat interoperabel ke berbagai sistem, dan dapat berlaku seperti agen pada manusia, yang bekerja pada client-nya, dalam rangka mencapai agenda yang diberikan padanya. Karakteristik Agen, agen memiliki cirri-ciri sebagai berikut: a. Otonom b. Sosial c. Reaktif d. Proaktif e. Bergerak f. Terpercaya g. Berusaha mencapai tujuan h. Rasional i. Dapat belajar3.JADE Salah satu keutamaan JADE adalah penerapan dari abstraksinya yang dilakukan dengan bahasa pemrograman berorientasi objek yang telah dikenal luas, yaitu Java, yang mempunyai API yang baik. Dalam pengembangan tersebut, rancangan-rancangan JADE banyak dipengaruhi oleh abstraksi agen, diantaranya adalah: a. Agen bersifat autonomous dan proaktif b. Agen dapat menolak suatu permintaan dan agen tidak berorientasi pada koneksi c. Sistem yang bersifat Peer to Peer d. Sistem distributive e. Mengikuti spesifikasi FIPA f. Pengiriman pesan-pesan yang tidak serempak secara efisien g. Layanan white-pages dan yellow-pages h. Pengaturan siklus hidup agen secara sederhana dan efektif i. Dukungan mobilitas agen j. Mekanisme berlangganan k. Graphical tools l. Dukungan untuk Ontology dan Content Language m. Pustaka protokol-protokol interaksi n. Penggabungan dengan berbagai teknologi berbasis web o. Dukungan terhadap platform J2ME dan lingkungan nirkable p. Antarmuka untuk peluncuran dan pengendalian platform dan komponen terdistribusinya yang dilakukan dari aplikasi eksternal q. Kernel yang dapat diperluasJADE RMA (Remote Monitoring Agent) adalah suatu alat yang mengimplementasikan sebuah graphical platform management console. Alat ini mengimplemenatsikan kelas yang dalam jade.tools.rma.rma. pemakaiannya lebih sering dimunculkan dengan menggunakan GUI (yaitu dengan menambahkan perintah gui ). RMA menyediakan fasilitas untuk memonitor dan mengatur sebuah platform JADE, yang terdiri dari beberapa host dan container. Salah satu layanan yang disediakan adalah pembentukan 7. Agen Sniffer, yang berguna untuk memeriksa komunikasi berupa pengiriman pesan yang terjadi antar agen. Selain itu juga terdapat Agen Instropector yang berguna untuk melakukan pemeriksaan berbagai jenis behaviour sedang dimiliki oleh suatu agen, dan behaviour mana saja yang sedang aktif, serta yang mana saja yang sedang di-block.4.Komputasi Paralel Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di industry keuangan, bioinformatika, dll) ataupun karena tuntutan proses komputasi yang banyak. Kasus kedua umum ditemui di kalkulasi numerik untuk menyelesaikan persamaan matematis di bidang fisika (fisika komputasi), kimia (kimia komputasi) dll. Untuk melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah. Untuk itu diperlukan aneka perangkat lunak pendukung yang biasa disebut sebagai middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi. Tidak berarti dengan mesin paralel semua program yang dijalankan diatasnya otomatis akan diolah secara paralel. Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan (komputasi paralel), baik dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU. Bila komputer yang digunakan secara bersamaan tersebut dilakukan oleh komputer-komputer terpisah yang terhubung dalam suatu jaringan komputer lebih sering istilah yang digunakan adalah sistem terdistribusi (distributed computing). Tujuan utama dari pemrograman paralel adalah untuk meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu yang sama), semakin banyak pekerjaan yang bisa diselesaikan. Analogi yang paling gampang adalah, bila anda dapat merebus air sambil memotong-motong bawang saat anda akan memasak, waktu yang anda butuhkan akan lebih sedikit dibandingkan bila anda mengerjakan hal tersebut secara berurutan (serial). Atau waktu yg anda butuhkan memotong bawang akan lebih sedikit jika anda kerjakan berdua. Performa dalam pemrograman paralel diukur dari berapa banyak peningkatan kecepatan (speed up) yang diperoleh dalam menggunakan tehnik paralel. Secara informal, bila anda memotong bawang sendirian membutuhkan waktu 1 jam dan dengan bantuan teman, berdua anda bisa melakukannya dalam 1/2 jam maka anda memperoleh peningkatan kecepatan sebanyak 2 kali. 8. 5. Penjadwalan CPUPenjadwalan merupakan salah satu fungsi dasar dari sistem operasi. Hampir semua sumber daya komputer dijadwalkan sebelum digunakan. Ketika CPU mengalami waktu idle, sistem operasi harus memilih salah satu proses untuk masuk kedalam antrian yang akan untuk dieksekusi. Pemilihan tersebut dilakukan oleh penjadwal jangka pendek atau penjadwal CPU. Ada tiga tipe penjadwal yang berada bersama pada sistem operasi kompleks, yaitu: a. Penjadwal jangka pendek yang bertugas menjadwalkan alokasi pemrosesdi antara proses-proses yang telah siap di memori utama. b. Penjadwal jangka menengah akan menangani serta mengendalikantransisi dari suspended-toready dari proses-proses swapping. c. Penjadwal jangka panjang bekerja terhadap antrian batch dan memilihbatch berikutnya yang harus dieksekusi. d. Gambar 3 : Tipe-tipe penjadwalanSumber : Konsep Sistem OperasiPenjadwalan memilih proses yang ada di memori serta siap untuk dieksekusi, dan mengalokasikan CPU untuk mengeksekusinya.6.Algoritma Penjadwalan Penjadwalan dan penyusunan eksekusi pada system terdistribusi terlihatsangan simple, akan tetapi kekompleksan timbul ketika user menggunakkanbatasan QoS seperti deadline (eksekusi berdasarkan penyelesaian waktu) danpembatasan komputasi cost (budget) Algoritma penjadwalan membutuhkan untuk penyesuaian perubahanmuatan dan kondisi tersedianya resource untuk mencapai hasil dan padawaktu yang sama dalam batasan deadline dan budget. Pada aplikasi ini ada 3 adaptive scheduling algorithma untuk pembatasdeadline dan budget adalah sebagai berikut : - Cost optimization, - Time optimization, - Conservative Time optimization 9. Dan juga ada pengembangan lain yang disebut Cost-Time Optimizationscheduling.Tabel : Adaptive scheduling algorithms constraints and objectivesAdaptive SchedulingExecution Time Execution Cost Algorithm(not beyond deadline)(not beyond budget)Cost OptimisationLimited by deadline MinimizeTime OptimisationMinimizeLimited by budgetConservative TimeLimited by deadline Limited by budgetOptimisationCost-Time Optimisation MinimizeMinimizea. Cost OptimizationAlgoritma penjadwalan Cost optimization mencoba menyelesaikan percobaan seekonomis mungkin dengan tidak melebihi deadline. - Mengurutkan resource berdasarkan peningkatan cost - Untuk setiap resource dalam urutan, menugaskan job sebanyak mungkin untuk resource, tanpa melebihi deadlineb. Time OptimizationAlgoritma penjadwalan Time optimization mencoba menyelesaikan percobaan secepat mungkin dengan budget yang tersedia. - Untuk setiap resource, ??? - Mengurutkan resource berdasarkan penyelesaian waktu selanjutnya - Menugaskan satu job ??c. Conservative Time OptimizationAlgoritma penjadwalan Conservative Time optimization mencoba untuk menyelesaikan percobaan dengan pembatas deadline dan cost, meminimalisir waktu ketika budget terbesar tersedia. Ini menghabiskan budget dengan sangat hati-hati dan memastikan menggunakan seminimal mungkin budget per job dari seluruh budget yang tersedia untuk setiap job yang tidak terproses.d. Cost-Time Optimization Algoritma penjadwalan Cost-Time Optimization hampir sama dengan cost optimization akan tetapi jika ada banyak resource dengan cost yang sama, maka diperlakukan strategi time optimization. 10. 1. RESOURCE DISCOVERY: mengdentifikasi sumberdaya dan kemampuan mereka menggunakan informasi layanan Grid2. RESOURCE TRADING: Mengidentifikasi biaya seluruh sumber daya dan kemampuan untuk dikirimkan per cost-unit, biaya unit. Biaya sumber daya dapat dinyatakan dalam satuan seperti pengolahan biaya- per-MI, biaya-per-pekerjaan, biaya per waktu unit CPU, dll dan kebutuhan penjadwalan untuk memilih unit yang sesuai untuk perbandingan.3. Jika user memasukkan D dan B-faktor, kemudian menentukan batas waktu absolut dan anggaran berdasarkan kemampuan sumber daya dan biaya, dan persyaratan pengolahan aplikasi (misalnya, total MI diperlukan).4. SCHEDULING: mengulangi sementara job yang tidakterproses yang tersedia dan waktu saat ini dan pengolahan beban berada dalam batas waktu dan batas anggaran. a. untuk setiap sumber daya, memprediksi dan menetapkan tingkatkonsumsi pekerjaan atau sumber daya yang tersedia melalui ukurandan strategi ekstrapolasi dengan mempertimbangkan waktu yangdibutuhkan untuk proses sebelumnya pekerjaan. b. mengurutkan sumber daya dengan urutan kenaikan biaya. Jika duaatau lebih sumber daya yang dengan biaya yang sama, agar merekaseperti yang kuat (misalnya, pekerjaan yang lebih tinggi atauketersediaan sumber daya) adalah pilihan pertama. c. membuat sumber daya yang mengandung sumber daya dengan biayayang sama. d. mengurutkan kelompok sumber daya dengan urutan kenaikan biaya. e. Jika salah satu sumber daya telah ditugaskan untuk pekerjaan dalamacara penjadwalan sebelumnya, tetapi tidak dikirim ke sumber dayauntuk pelaksanaan dan ada variasi dalam ketersediaan sumber daya,kemudian bergerak sesuai jumlah pekerjaan ke Daftar-Pekerjaan-belum dibagi. Ini membantu dalam memperbarui jadwal keseluruhanberdasarkan ketersediaan sumber daya informasi terbaru. f. mengulangi langkah-langkah berikut untuk setiap kelompok sumberdaya selama ada ada pekerjaan ditugaskan dengan mengulangi langkah-langkah berikut ini untuk setiap pekerjaan di Pekerjaan-Daftar-belum dibagi, tergantung pada biaya 11. pengolahan dan ketersediaan anggaran: [ini menggunakan strategi optimasi waktu.] -Pilih pekerjaan dari Pekerjaan-Daftar-belum dibagi. -Untuk setiap sumber daya, menghitung / memperkirakan waktupenyelesaian pekerjaan dengan mempertimbangkan sebelumnyaditugaskan pekerjaan dan penyelesaian pekerjaan tingkatketersediaan dan berbagi sumber daya. -mengurutkan sumber daya oleh meningkatnya urutan waktupenyelesaian. -metetapkan pekerjaan untuk sumber daya pertama danmelepasnya dari Pekerjaan-Daftar-belum dibagi jika waktu penyelesaian pekerjaan diperkirakan kurang dari tenggatwaktu. 5. DISPATCHERmenulangi langkah-langkah berikut untuk setiap sumber daya jikamemiliki pekerjaan harus dikirim:a. mengidentifikasi jumlah pekerjaan yang dapat diajukan tanpa overloading sumber daya, kebijakan default ini adalah untuk mengirimkan pekerjaan selama jumlah pengguna dikerahkan pekerjaanH. METODOLOGI PENELITIAN1. Persiapan proposal Pada tahap ini peneliti melakukan persiapan dan penyusunan proposal penelitian untuk tugas akhir2. Survey dan pengumpulan dataa. Studi Literatur3. Perancangan dan pembuatan aplikasia. Context Diagram 0Sistem User Input j ob Eeksekusi JobNode Komputasihasi l komputasi Hasil eksekusib. Proses pembuatan system komputasi Pada penelitian ini komponen sistem terdiri dari head node dan node, untuk lebih jelas dapat dilihat di gambar. Komunikasi antara head node dan node menggunakan jaringan komputer lokal (LAN). Data input dimasukkan 12. ke head node kemudian diatur untuk dijadwalkan ke node. Kesimbanganpembagian tugas dilakukan oleh load balancing. Agent membawa subrangkaian tugas ke node kemudian agent menjalankan operasi sesuai dengantugas yang diemban dan membawa kembali hasil ke head node. HEAD NODEPNODE 1 AGENTE BLOADUBALANCINGN FAGENTLFG ESCHEDULERA NODE 2 AGENT INPUTRG NMHEAD MANAGEMENTU E AGENTSynchronitation NODE 3M Dispatcher AGENTN ORA YAGENTNODE n Gambar : Motodologi dari komputasi paralel berbasis multi agent c. InputanPada penelitian ini pengguna sebagai pemakai utama dari komputasiparalel. Masukan yang diterima sistem berbentuk vektor. Data yangdimasukkan oleh user diatur oleh scheduler dan load balancing untukdijadwalkan sesuai dengan algoritma yang dipakai. Pada penelitian ini,operasi-operasi yang dimiliki oleh paralel komputing adalah operasiyang berkenaan dengan vektor. d. Load BalancingLoad balancing bekerja untuk menyeimbangkan beban kerja dilakukanoleh node-node. Penyeimbangan beban kerja disebar secara merata kesemua node. Penyeimbangan beban kerja digunakan untukmenghindari beban berlebih pada node tertentu e. SchedulerScheduler berfungsi untuk menjadwalkan rangkaian tugas ke node-node. Penjadwalan digunakan untuk menghindari penumpukan agentpada node terntentu. Hal-hal yang perlu diperhatikan adalah kapannode sedang sibuk operasi suatu agent dan tidak perlu dikirimi agentlagi. Atau kapan suatu node dinyatakan diperlu dikirim agent, ataukapan suatu agent dinyatakan mati atau tidak kembaliPada sistem penjadwalan job sendiri, setidaknya ada dua layanan yangperlu disediakan. Layanan- layanan tersebut adalah sebagai berikut. 13. Layanan pengiriman job yang digunakan untuk mengirim job ke sistem penjadwalan job. Layanan eksekusi job yang digunakan untuk menjalankan job yang diterima.Array Add, sub,imageconfulusion HEAD NODENODE Data command Syncroniser Job control agentagent INPUTPublic relation job queueagent Node collector Dispacher agentagent List NodeComputaional Block table agent displayagentJob SchedulerNode SchedulerBlock queuemanager agentmanager agent Recepeintblok schedul Operation log agentResult manageragentGambar : a. InputanUser yang berupa komputer yang bertanggung jawab mengatur semuajalannya system paralel yang akan dibangun menginputkan data bisa yangbisa berupa command atau array sebuah image ke dalam head node. b. Head NodeHead node adalah sebuah komputer yang menagtur jalannya system dandidalam head node inilah yang akan mengidentifikasi data mekanismeyang tersedia. Mulai dari pengontrolan job-job, pemecah job-job menjaditask-task yang lebih kecil dan menjadwalkan job-job yang akan dieksekusioleh node-node. c. Node 14. Node-node adalah sekumpulan komputer yang diparalelkan yang akanmenerima job-job berdasarkan penjadwalannya masing-masing yang telahditentukan oleh head node. Dalam hal ini system mengolah data yang berupa array. Dalam rancanganpenelitian ini, menggunakan contoh data yang berupa matrik dan commandatau operasi yang dilakukan adalah operasi penambahan dan perkalianmatriks. Data di inputkan oleh user melalui komputer induk (head node).Dalam head node data diolah terlebih dahulu. Pengolahan head node adalahsebagai berikut:- JobControl Agent Agent yang berfungsi untuk menerima tugas (job), diberi id_job masing- masing dan menyimpan dalam bentuk antrian (queue)Job[id] Job[id]Job[id] Job[id]Job[id]QUEUE- Dispatcher AgentAgent yang berfungsi untuk memecah tugas-tugas menjadi sub-sub tugasyang atomic dan membentuk satu table blok. Satu sub tugas yang atomicdan membentuk satu table blok.Table Block ( [id_job], [id_task])Job[id_job] [no]Sub task[no]Sub task[no]Sub task- Job Scheduler Manager agentJob Scheduler Manager Agent yang berfungsi penjadwalkan table blok-tabel blok yang akan dieksekusi terlebih dahulu berdasarkan - Node Scheduler Manager AgentNode Scheduler Manager Agent yang berfungsi menjadwalkan node-nodeyang akan mengeksekusi table blok-table blok dengan menggunakanalgoritma cost-time optimization. Dimana dalam algoritma ini menentukanresource-resource setiap node dengan parameter CPU, Memory danharddisk yang dimiliki oleh setiap node.Cost Time Optimisation dengan R1=R2=R3=R4QUEUE R1 R2Table blok R3Table blokTable blok R4 15. - Node Collector Agent- Synchronizer Agent4. Implementasi Software5. Ujicoba dan IntregasiPengujian dilakukan menggunakan komputer laboratorium6. Penulisan dan pembuatan laporanPada tahap ini dilakukan penulisan dan pembuatan laporan dari hasil penelitian yang dilakukan selama proses pembuatan aplikasi untuk dokumentasi tugas akhirI. PENELITIAN TERKAITJ. JADWAL PENELITIAN Penelitian dibuat dengan menganut jadwal yang tertera pada tabel 4.1.Jadwal penelitian mengatur empat pokok kegiatan, yaitu : studi literatur,perancangan, pembuatan, evaluasi, dan dokumentasi.Tabel 4.1 : Jadwal pelaksanaan penelitian.BulanKegiatan1 2 34 5 6Studi literatur lanjutXPerancangan sistemXPembuatan antar muka untuk pengguna XPembuatan penjadwalan tugas sederhana X XUji coba tahap prototipeXEvaluasi dan reka ulang sistemXXPembuatan penjadwalan tugas dengan metode XpriorityUji coba sistem tahap 2XEvaluasi Evaluasi dan reka ulang tahap 2 XPenulisan dan Pembuatan LaporanXK. DAFTAR PUSTAKABarney, Blaise. 2010. Introduction to Parallel Computing. diunduh dari https://computing.llnl.gov/tutorials/parallel_comp/ pada tanggal 22 Maret 2010Bellifemine. 2003. Jade White Paper. Exp Volume 3 Nomor 3.Turban, Efraim; Aroson, Jay E.; Liang, Ting Peng. 2005. Decision Support Systems and Intelligent System. Pearson Education.Stalling, William. 2003. Computer Oraganization and Architekture : Designing for Performance Sixth Edition. Prentice-Hall Inc.