1. Branch Prediction
Dalam artsitektur komputer, sebuah prediktor cabang adalah sirkuitdigital yang mencoba untuk menebak arah mana cabang (misalnya astruktur if-then-else) akan pergi sebelum ini diketahui pasti. Tuujuan dari prediktor cabang penting dalam mikroprossesor pipeline hari ini untuk mencapai kinerja tinggi.
Dua arah percabangan biasanya diimplementasikan dengan instruksi lompat berrsyarat dapat menjadi "tidak diambil" dan melanjutkan eksekusi dengan cabang pertama dari kode yang mengikuti segera setelah lompat bersyarat atau dapat "diambil" dan melompat ke tempat yang berbeda di memori program dimana cabang kedua kod adalah disimpan. hal ini tidak diketahui secara pasti apakah lompat bersyarat akan diambil smapai kondisi telah dihitung dan lompat bersyarat telah lulus eksekusi dlam pipa intruksi.
Tanpa prediksi cabang prosesor harus menunggu sampai intruksi lompat bersyarat. telah melewati tahap mengeksekusi sebelum intruksi berikutnya dapat memasuki tahap fetch dalam pipa. prediktor cabang upaya untuk mneghindar pemborosan wajtu dengan mencoba untuk menebak apakah lompat bersyarat yang paling mungkin diambil atau tidak diambil dan spekulasi dieksekusi. jika kemudian mendeteksi bahwa salah menebak maka intruksi dieksekusi spekulatif. atau sebagian dieksekusi dibuang dan pipa dimulai atas dengan cabang yang benar.
Waktu yang terbuang dalam kasus misprediction cabang dengan jumlah tahap dalam pioa dari tahap ke tahap fecth mengeksekusi mikroptosesor moder cenderung memiliki pipa yang cukup panjang sehingga penundaan misprediction adalah antara 10 dan 30 siklus clock. semakin lama pipa tinggi kebutuhan untuk prediksi cabang yang baik.
Pertama kali intruksi lompat bersyarat ditemui, tidak ada banyak informasi untuk dasar prediksi. Tapi prediksi cabang menyimpan catatan dari apakah cabang diambil atau tidak diambil. ketika bertemu dengan lompat bersyarat yang telah melihat beberapa kali sebelum kemudian dapat dasar prediksi pada sejarah masa lalu. prediktor cabang mungkin, misalnya, mengakui bahwa lompat bersyarat dimblil lebih sering daripada tidak atau bahwa itu adalah diamnil setiap kali kedua
Prediksi cabang tidak sama dengan prediksi cabang target prediksti cabang upaya untuk menebak pakah lompatan bersyarat akan diambil atau tidak. cabang prediksi targer yang mencoba untuk menebak target lompatan bersyarat atau tanpa syarat diambil sebelum dihitung olleh decoding dan mengeksekusi intruksi itu sendiri. cabang cabang prediksi dan prediksi target sering dikombinasikan ke dalam sirkuit yang sama
2. Dara Flow Analysis
data flow analysis adakah teknik untuk mengumpulkan informasi tentang kemungkinan himpunan nilai-nilai dihitung pada berbagai titk dalam sebuah program komputer. kontrol aliran sebuah program grafik (CFG) digunakan untuk menentukan bagian-bagian dari program yang nilai tertentu ditugaskan ke variabel mungkin merambat informasi yang dikumpulkan sering digunakan oleh compiler ketika mengoptimalkan program sebuah contoh kanonik dari analisis data aliran mencapai definisi.
sebuah cara sederhana untuk melakukan analisis data aliran program adalah untuk mengatur aliran data persamaan untuk setiap node dari grafik kontrol aliran dan menyelesaikannya dengan berulang kali menghitung output dari input lokal di setiap node sampai seluruh sistem stabil yaitu, fixpoint mencapai suatu pendekatan umum ini dikembalikan oleh Gary Kildall saat mengajar di Naval Postgraduate School.
3. Speculative extecuiton
Eksekusi spekulatif dalam sistem komputer adalah melakukan pekerjaan yang hasilnya mungkin tidak diperlukan teknik optimasi kinerja digunakan dalam prosesor pipelined dan sistem lainya.
Nama : Faiz Firmansyah
NIM : 13170370
Dosen : Andrian Eko Widodo
Kelas : 13.3A.35

Komentar
Posting Komentar