Sabtu

BRANCH PREDICTION. DATA FLOW ANALYSIS. SPECULATIVE EXECUTION


Prediksi cabang adalah teknik modern untuk memberikan kinerja tinggi dalam mikro-arsitektur pipelined. Hal ini memungkinkan prosesor untuk memecahkan kode instruksi cabang di luar untuk menjaga pipa instruksi penuh. Keluarga P6 cabang mengimplementasikan algoritma prediksi yang sangat optimal untuk memprediksi arah dari aliran instruksi melalui beberapa tingkat cabang, panggilan prosedur, dan kembali.


Branch Prediction (Cabang Prediktor)

Cabang prediktor 

Tidak menjadi bingung dengan predikasi Cabang .
Dalam arsitektur komputer , sebuah prediktor cabang adalah sirkuit digital yang mencoba menebak mana cara cabang (misalnya struktur if-then-else ) akan pergi sebelum ini diketahui pasti. Tujuan dari cabang prediktor adalah untuk meningkatkan aliran dalam pipa instruksi . Prediktor cabang penting dalam pipelined hari ini mikroprosesor untuk mencapai tinggi kinerja .
Dua arah percabangan biasanya diimplementasikan dengan lompat bersyarat instruksi. Sebuah lompat bersyarat 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 kode adalah disimpan. 

Data Flow analisis

DEFINISI :

ANALISIS ALIRAN DATA adalah analisis yang dilakukan untuk mempelajari pemanfaatan data pada setiap aktifitas. Menampilkan hasil pengamatan dalam apa yang disebut ‘Data Flow Diagram’ (DFD) atau diagram alir data.Diagram Alir Data, yaitu satu tampilan grafis yang memunculkan relasi/hubungan antara proses dan data beserta kamus data yang menjelaskan rincian data yang dipergunakan.
Data flow analisis adalah Metoda untuk melacak gerakan berbagai jenis informasi melalui sistem komputer, terutama dalam hubungan sekurity dan kontrol yang diterapkan untuk memastikan integritas informasi.
Penentuan kualitas atau mutu suatu perangkat lunak mutlak diperlukan. Kualitas suatu perangkat lunak dapat dinyatakan baik bila telah sesuai dengan requirement pengguna tanpa mengabaikan segi strukturalnya. Dengan tidak mengabaikan fungsional program, uji coba struktural juga harus dilakukan karena uji coba fungsional tak mampu menangani hal-hal yang berhubungan dengan struktural program.. Uji coba fungsional tidak dapat menentukan apakah dieksekusi selama pengujian akan tersembunyi dalam package program dan bila didalamnya terdapat kesalahan maka kesalahan tersebut akan tersembunyi dalam jangka waktu tertentu. Data flow analysis adalah suatu metode yang digunakan untuk mengumpulkan informasi dalam program tanpa mengeksekusi program yang diuji coba. Metode ini merupakan bagian dari metode pengujian secara structural yang sangat efektif untuk menemukan kesalahan yang berupa data flow anomaly dengan cara memeriksa kode program. Dengan metode ini, seluruh pernyataan program yang diuji coba akan dianalisa.
Analisis sistem adalah penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahan, kesempatan, hambatan yang terjadi dan kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan.
Tahap analisis dilakukan setelah tahap perencanaan sistem dan sebelum tahap desain sistem. Dapat dilakukan dengan 2 cara :
1. Analisis terstruktur (structured analysis)
2. Analisis aliran data (data flow analysis)
Data-flow analisis
Data-flow analisis adalah sebuah teknik untuk mengumpulkan informasi tentang kemungkinan set nilai-nilai dihitung pada berbagai titik dalam sebuah program komputer . Sebuah program flow control grafik (CFG) digunakan untuk menentukan bagian-bagian dari sebuah program untuk mana suatu nilai tertentu yang diberikan ke variabel mungkin merambat. Informasi yang dikumpulkan sering digunakan oleh kompiler ketika mengoptimalkan program. Contoh kanonik dari analisis aliran data mencapai definisi .

Sebuah cara sederhana untuk melakukan analisis aliran data dari program adalah untuk mengatur-persamaan aliran data untuk setiap node dari grafik kontrol aliran dan menyelesaikannya dengan berulang kali menghitung output dari input secara lokal pada setiap node sampai seluruh sistem stabil, yaitu, mencapai suatu fixpoint . Pendekatan umum yang dikembangkan oleh Gary Kildall saat mengajar di Naval Postgraduate School .
DATA FLOW ANALYSIS
Adalah suatu teknik perancangan yg digunakan untuk memperoleh modul-modul dg tingkat kohesi yg tinggi.

Data-flow analisis adalah sebuah teknik untuk mengumpulkan informasi tentang kemungkinan set nilai-nilai dihitung pada berbagai titik dalam sebuah program komputer .Sebuah program flow control grafik (CFG) digunakan untuk menentukan bagian-bagian dari sebuah program untuk mana suatu nilai tertentu yang diberikan ke variabel mungkinmerambat. Informasi yang dikumpulkan sering digunakan olehkompiler ketikamengoptimalkanprogram. Contoh kanonik dari analisis aliran data mencapai definisi . Sebuah cara sederhana untuk melakukan analisis data flow program adalah untuk mengatur persamaan data flow untuk setiap node dari grafik kontrol aliran dan menyelesaikannya dengan berulang kali menghitung output dari input secara lokal padasetiap node sampai seluruh sistem stabil, yaitu mencapai sebuah fixpoint . Pendekatan umum yang dikembangkan oleh Gary Kildallsaat mengajar diNaval Postgraduate School.
Ini adalah proses pengumpulan informasi tentang cara variabel yang digunakan,didefinisikan dalam program ini. analisis aliran data upaya untuk memperoleh informasitertentu di setiap titik dalam sebuah prosedur. Biasanya, itu sudah cukup untuk memperoleh informasi ini pada batas blok dasar, karena dari yang mudah untuk menghitung informasi pada titik-titik di blok dasar. Dalam analisis aliran ke depan,negara keluar dari blok adalah fungsi dari negara masuk blok. Fungsi ini adalahkomposisi efek laporan di blok tersebut. Keadaan masuknya blok adalah fungsi darinegara keluar dari pendahulunya
KEUNTUNGAN ANALISIS ALIRAN DATA :
•notasi yang dipergunakan sederhana, mudah dimengerti sekalipun oleh orang awam;
•usulan untuk modifikasi diagram agar dicapai keakurasian yang tinggi dalam aktifitas bisnis dapat dilakukan;
•mudah dikoreksi sebelum proses perancangan ,karenadapat dikaji rinci/ditelusuri
•memberikan kemungkinan untuk mengisolasi daerah kajian yang diminati secara khusus
memberikan fasilitas penjabaran diagram berdasarkan tingkat pengamatan





Data flow,
Disimbolkan dengan tanda panah dimana arah panah menunjukkan arah mengalirnya data.
Data flow mengalir menuju proses atau meninggalkan proses.
Data flow yang meninggalkan external entity selalu menuju ke proses.
Data flow dapat berupa:
masukan untuk sistem atau hasil dari proses sistem dan dapat berbentuk formulir atau dokumen yang digunakan sistem
laporan tercetak yang dihasilkan sistem
masukan untuk komputer
output ke layar monitor
data yang dibaca dari suatu file atau yang direkam ke suatu file
komunikasi ucapan
surat atau memo
suatu isian yang dicatat pada buku agenda
Arus data diberi nama yang jelas dan bermakna (meaningfull) yang dapat mewakili data yang mengalir. 
sesor inti eksekusi menggunakan data-aliran analisis untuk menjalankan semua petunjuk yang tersedia di kolam instruksi dan menyimpan hasilnya di Eksekusi spekulatif mengacu pada kemampuan prosesor untuk mengeksekusi instruksi yang berada di luar cabang kondisional yang belum diselesaikan, dan akhirnya melakukan hasil dalam urutan dari aliran instruksi asli. Untuk membuat eksekusi spekulatif mungkin, mikroarsitektur P6 keluarga decouples pengiriman dan pelaksanaan instruksi dari komitmen hasil. Out-of-order proregister sementara.

Tidak ada komentar: