TEKNIK OPTIMASI
Pengertian Teknik Optimasi
Pentingnya sebuah
kejelasan dalam sebuah karya ilmiah agar tidak terjadi salah tafsir/persepsi
atau pun bermakna ambigu yang berimplikasi terhadap perubahan makna dan maksud
penulis. Ada beberapa hal yang akan penulis bahas berkenaan dengan
isitilah-istilah pengertian kalimat optimasi.
Optimasi
Optimal = paling
bagus/tinggi;tertinggi;terbagus;paling menguntungkan.
Optimal a (ter) baik: tertinggi; paling menguntungkan: dengan kondisi fisik yang-- kami yakin akan menang dalam pertandingan sore nanti; kita telah bekerja secara --;
Optimal a (ter) baik: tertinggi; paling menguntungkan: dengan kondisi fisik yang-- kami yakin akan menang dalam pertandingan sore nanti; kita telah bekerja secara --;
Mengoptimalkan v
menjadikan paling baik; menjadikan paling tinggi;
Pengoptimalan proses cara, perbuatan mengoptimalkan (menjadikan paling baik, paling tinggi, dsb). Optimasi berasal dari bahasa inggris optimization (n), kata benda yang berasal dari kata kerja (v) optimize. Kata kerja optimize berasal dari kata sifat (adj) optimal. Bentukan kata optimal dengan imbuhan ize akan membuat al pada optimal dipenggal sehingga hasilnya adalah optimize.
Pengoptimalan proses cara, perbuatan mengoptimalkan (menjadikan paling baik, paling tinggi, dsb). Optimasi berasal dari bahasa inggris optimization (n), kata benda yang berasal dari kata kerja (v) optimize. Kata kerja optimize berasal dari kata sifat (adj) optimal. Bentukan kata optimal dengan imbuhan ize akan membuat al pada optimal dipenggal sehingga hasilnya adalah optimize.
Teknik Optimasi
Teknik Optimasi ada
tiga(3) yaitu
1.
Dependensi optimasi bertujuan untuk menghasilkan kode
program yang berukuran lebih kecil dan lebih cepat.
2.
Optimasi lokal adalah optimasi yang
dilakukan hanya pada bagian blok tertentu dari source code.di dalam optimasi
lokal terdapat lima(5) cara pengomptimasiannya.
a. Folding yaitu mengganti konstanta atau ekspresi yang bisa dievaluasi pada saat compile time dengan nilai komputasinya. misalnya : A = 5+4+B bisa di ganti dengan A=9+B karena 9 dapat menggantikan ekspresi 5+4.
a. Folding yaitu mengganti konstanta atau ekspresi yang bisa dievaluasi pada saat compile time dengan nilai komputasinya. misalnya : A = 5+4+B bisa di ganti dengan A=9+B karena 9 dapat menggantikan ekspresi 5+4.
b.
Redundant-Subexpression Elimination
: hasilnya digunakan lagi dari pada dilakukan komputasi ulang, contohnya
c.
Loop Unrolling : mengganti suatu
loop dengan menulis statement yang ada di dalam loop ditulis beberapa kali,
contoh: For i=1 to 2 do A[i]=0; dapat diganti dengan A[1]=0; A[2]=0;
d. Frequency Reduction : pemindahan statement ke tempat yang lebih jarang dieksekusi. Contoh for i=1 to 10 do begin X=5 A=A+1 end karena X itu diisi dengan nilai yang tetap yaitu 5 maka bisa dipindahkan menjadi x=5 for i=1 to 10 do begin A=A+1 end
e.Strength Reduction : penggantian suatu operasi dengan operasi lain yang lebih cepat dieksekusi, contoh A=A+1 dapat diganti dengan INC(A)
d. Frequency Reduction : pemindahan statement ke tempat yang lebih jarang dieksekusi. Contoh for i=1 to 10 do begin X=5 A=A+1 end karena X itu diisi dengan nilai yang tetap yaitu 5 maka bisa dipindahkan menjadi x=5 for i=1 to 10 do begin A=A+1 end
e.Strength Reduction : penggantian suatu operasi dengan operasi lain yang lebih cepat dieksekusi, contoh A=A+1 dapat diganti dengan INC(A)
3.
Optimasi Global : dilakukan dengan
suatu graph terarah yang menunjukan jalur yang mungkin selama eksekusi program ada 2 kegunaan optimasi global yaitu
bagi programer dan juga bagi copiler itu sendiri
-
bagi programmer
a.
Unreachable/dead code
: kode yang tidak pernah dieksekusi contoh x=5 if x=0 then
A=A+1 intruksi A=A+1 tidak pernah dikerjakan karena kondisi x tidak pernah menjadi 0
b. Unused parameter : parameter yang tidak pernah digunakan dalam procedure. contoh
procedure penjumlahan (a,b,c :integer) var x:integer; begin x=a+b; end; parameter c tidak pernah dugunakan sehingga tidak perlu diikut sertakan pada procedure
A=A+1 intruksi A=A+1 tidak pernah dikerjakan karena kondisi x tidak pernah menjadi 0
b. Unused parameter : parameter yang tidak pernah digunakan dalam procedure. contoh
procedure penjumlahan (a,b,c :integer) var x:integer; begin x=a+b; end; parameter c tidak pernah dugunakan sehingga tidak perlu diikut sertakan pada procedure
c.
Unused variable :
variable yang tidak pernah dipergunakan. Contoh var a,b : integer; begin a=5 end variable
b tidak pernah dipergunakan dalam manipulasi sehingga tidak perlu
dideklarasikan.
d
Variable : variable yang
dipakai tanpa nilai awal. Contoh var
a,b : integer begin
a=5 a=a+b end variable b di pergunakan tetapi tidak memiliki harga awal
a=5 a=a+b end variable b di pergunakan tetapi tidak memiliki harga awal
-
bagi compiler
a. meningkatkan
efisiensi eksekusi program
b. menghilangkan
useless code/kode yang tidak terpakai
sumber :
SUPAWI PAWENANG,MODUL EKONOMI MANAJERIAL,UNIBA:2017
Komentar
Posting Komentar