Pertemuan 18 CODE OPTIMIZATION

Slides:



Advertisements
Presentasi serupa
Oleh : Suparno Blog : Penterjemahan Data (Compiler – Interpreter) Pengenalan Pengelolahan Data Elektronik.
Advertisements

Pencarian ( Searching)
Bab 1 PENDAHULUAN.
ALGORITMA 6 April 2017 Pseudocode #3 STIKOM.
STRUKTUR DATA Materi 1 Latifah Rifani.
MESIN INFERENSI.
DASAR-DASAR PEMROGRAMAN
Pertemuan 2 INDUKSI MATEMATIKA & FUNGSI REKURSIF
sebuah fungsi yang memanggil dirinya sendiri
ALGORITMA PSEUDOCODE Pertemuan Ke-2 Meilia Nur Indah Susanti, ST.,MKom
Pertemuan 6 TREE & BINARY TREE
PERTEMUAN 1 Pendahuluan Materi - Endra Rahmawati, S.Kom -
Operasi Perulangan pada FORTRAN Pertemuan 6
Matakuliah: T0034 / Perancangan & Analisis Algoritma Tahun: 2008 Pertemuan 1 PENGENALAN PERANCANGAN & ANALISIS ALGORITMA.
Matakuliah : T0034 / Perancangan & Analisis Algoritma
Algoritma dan Pemrograman
Pertemuan 23 BRANCH AND BOUND (1)
Pertemuan 24 BRANCH AND BOUND (2)
Pertemuan 3 ALGORITMA & FUNGSI KOMPLEKSITAS
Pertemuan 7 PRIORITY QUEUE & HEAP
Pertemuan-2 Kriteria kebaikan suatu algoritme Correctness
Pertemuan 16 DYNAMIC PROGRAMMING : TRAVELING SALESMAN PROBLEM (TSP)
Pertemuan 5 STACK & QUEUE
Pertemuan 4 ANALISIS KOMPLEKSITAS ALGORITMA
Matakuliah: T0034 / Perancangan & Analisis Algoritma Tahun: 2008 Pertemuan 9 DIVIDE AND CONQUER (1)
Pertemuan 21 BASIC SEARCH AND TRAVERSAL
Instruksi dalam CPU.
Mahasiswa diharapkan dapat:
Algoritma dan Pemrograman – Pertemuan 3 & 4 Sorting (Pengurutan)
Materi Kuliah 1. Pertemuan ke : 1 Pengenalan Komputer dan Pemrograman
Pertemuan 22 BACKTRACKING
Struktur Keputusan pada Structure English dan Pseudocode
Pengantar Pemrograman Basis Data (PPBD)
Pengertian Algoritma Pemrograman Pertemuan 1
Pertemuan 25 MERANCANG ALGORITMA DENGAN KOMPLEKSITAS TERTENTU
MODE PENGALAMATAN DAN SET INSTRUKSI
ALGORITMA & PEMROGRAMAN
PENGANTAR LOGIKA & TEKNIKPEMROGRAMAN
MODUL 3 PSEUDOCODE.
ALGORITMA & LOGIKA PEMROGRAMAN
BAHASA PEMROGRAMAN.
Mode Pengalamatan &Jenis-Jenis Instruksi
Pengantar By Serdiwansyah N. A..
Teknik Pemrograman Terstruktur 2
Pertemuan 13 DYNAMIC PROGRAMMING : FIBONACCI SEQUENCE PROBLEM
Pertemuan 26 PRAKTEK ANALISIS ALGORITMA
Metode Perancangan Program
Mata kuliah : K0144/ Matematika Diskrit Tahun : 2008
Algoritma dan Pemrograman Pertemuan 1
Pertemuan 20 GRAPH COLORING
Pertemuan 4 ALGORITMA lanjutan….
Faktor analisa algoritma
Semantics Analyser Contoh : A := ( A+B) * (C+D)
Pseudo-code.
Pertemuan 1.
ALGORITMA & PEMROGRAMAN 1A
Array Buat algoritma untuk mencari nilai terbesar dari 5 nilai mahasiswa yang diinputkan dengan array.
BINARY SEARCH Tim Algoritma Pemrograman Teknik Informatika
Mata kuliah : K0144/ Matematika Diskrit Tahun : 2008
I Gusti Agung Made Wirautama, S.Kom
ALGORITMA DAN PEMROGRAMAN Struktur Algoritma
JENIS DAN SIMBOL FLOWCHART PRODI MIK | FAKULTAS ILMU-ILMU KESEHATAN
Bahasa Pemrograman Poltek Balikpapan 2010.
PENGANTAR LOGIKA & TEKNIK PEMROGRAMAN
Lecturer Note II Turbo Pascal & Pemrograman
Kenalan Alghoritma Wahab Sya’roni, M.Kom
STRUKTUR DATA Materi 1.
Pertemuan 19 HUFFMAN CODE
Pengulangan FOR - DO Temu 9.
Algoritma dan struktur data
Transcript presentasi:

Pertemuan 18 CODE OPTIMIZATION Matakuliah : T0034 / Perancangan & Analisis Algoritma Tahun : 2008 Pertemuan 18 CODE OPTIMIZATION

MENGAPA PERLU OPTIMISASI? Perbedaan algoritma dapat membawa perbedaan yang sangat besar pada kinerja sebuah program. Optimisasi algoritma adalah membuat sebuah algoritma dapat bekerja secara lebih optimal. Bisa dilakukan dari tingkat yang paling sederhana hingga tingkat yang paling sulit. Terkadang sebuah optimisasi yang kelihatan sepele dapat menyebabkan perbedaan yang besar ketika sebuah algoritma diimplementasikan menjadi program komputer. [buku utama, bab 10.1] Bina Nusantara

LEVEL BAHASA PEMROGRAMAN Bahasa pemrograman tingkat tinggi  lebih dekat ke bahasa manusia Bahasa pemrograman tingkat rendah  lebih dekat ke bahasa mesin Komputer memproses peritnah kita dalam instruksi-instruksi sederhana yang terdiri atas kode instruksi dan data. Bina Nusantara

INSTRUKSI LOAD X = load accumulator dengan isi dari memori lokasi X STORE X = Store isi dari accumulator ke memori lokasi X OP X, OP mungkin ADD, SUB, MPY, atau DIV. Definisi : Suatu terjemahan dari suatu ekspressi E ke dalam suatu mesin atau bahasa assembly pada suatu mesin tertentu, adalah optimal jika dan hanya jika mempunyai jumlah instruksi yang minimal. Bina Nusantara

OPTIMISASI BAHASA TINGKAT RENDAH Misalkan suatu ekspressi matematik: ( a+ b ) / ( c + d ) akan diterjemahkan ke bahasa assembly, ada dua macam bentuk instruksi yang dapat di buat: LOAD a LOAD c ADD b ADD d STORE T1 STORE T1 LOAD c LOAD a ADD d ADD b STORE T2 DIV T1 LOAD T1 DIV T2 ( a ) ( b ) Dapat dilihat bahwa instruksi (a) mempunyai dua instruksi lebih panjang dari instruksi (b). Jadi instruksi (b) adalah yang optimal. Bina Nusantara

OPTIMISASI BAHASA TINGKAT TINGGI Berfokus pada bagaimana menyederhanakan Fungsi Kompleksitas Trik dasar Mengurangi jumlah perulangan Meningkatkan efektivitas kondisi dalam if Menempatkan penyaringan kondisi di lokasi yang benar Mencari pola pikir lain untuk menyelesaikan masalah (kembali ke dasar) Bina Nusantara

CONTOH KASUS 1 for i=1 to 10 do 2 for j=1 to 3 do 3 A[i,j]=7 4 end for [buku utama, pseudocode 10.1] Bina Nusantara

ANALISIS Terdapat redundansi 7 Bina Nusantara

HASIL OPTIMISASI 1 for i=1 to 10 do 2 for j=1 to 3 do 3 A[i,j]=7 4 end for 5 end for 6 for i=1 to 3 do 7 for j=4 to 5 do 8 A[i,j]=7 9 end for 10 end for [buku utama, pseudocode 10.1b] Bina Nusantara

CONTOH KASUS 2 1 for i=1 to 1000000 do 2 for j=1 to 560000 do 3 if (i mod 2)=0 then 4 display A[i,j] 5 end if 6 end for 7 end for 1 for i=1 to 1000000 do 2 if (i mod 2)=0 then 3 for j=1 to 560000 do 4 display A[i,j] 5 end for 6 end if 7 end for [buku utama, pseudocode 10.2] [buku utama, pseudocode 10.2b] Bina Nusantara

LATIHAN Metode Binary Search adalah teknik pencarian data tertentu di dalam sebuah array yang sudah berurut. Pembahasan Binary Search sudah diberikan di Pertemuan 10. Adakah cara untuk meningkatkan kecepatan pencarian Binary Search? Coba lakukan optimisasi pada psesudocode 5.7 atau pseudocode 5.8 di buku utama ! Bina Nusantara

Apa yang sudah dipahami? Apa yang akan dibahas selanjutnya? REVIEW Apa yang sudah dipahami? Apa yang akan dibahas selanjutnya? Bina Nusantara