Tugas Arsitektur Komputer Lanjut Nama : Dedi triyanto NIM : 0504 Soal 1.1 Integer arithmetic 45000 x 1 45000 Data transfer 000 x 4000 Floating point 15000 x 0000 Control transfer 8000 x 1000 + Total (C) 155000 C 155000 CPI 1,55 Ic 100000 f MIPS rate CPIx10 40x10 1,55 x10 5,8 MIPS T Ic x CPI xτ IcxCPI 100000x1,55 f 40x10,875 ms Soal.1 (a) Computational granularity Adalah suatu ukuran dari sejumlah perhitungan yang rumit pada suatu proses software. Ukuran paling sederhana adalah menghitung jumlah instruksi pada suatu grain (program segment). (b) Communication latency Untuk poin (c), (d), dan (e): S1: Load R1, A /R1 Memory(A)/ S: Add R, R1 /R (R1) + (R) S: Move R1, R /R1 (R)/ S4: Store B, R1 /Memory(B) (R1) (c) Flow dependence Statemen S adalah flow dependence pada statemen S1 jika urutan pengambilan eksekusi terjadi dari S1 ke S dan jika sedikitnya 1 output dari s1 diumpankan sebagai input pada S. Pada contoh di atas S flow dependence pada S1 karena variabel memory(a) harus melewati register R1.
(d) Antidependence Statemen S adalah antidependence pada statemen S jika S mengikuti S pada urutan program dan jika output dari S bersamaan waktunya dengan input S. Pada contoh di atas S antidependence pada S karena adanya potensi konflik pada isi register di R1. (e) Output dependence statemen adalah outout dependence jika mereka menghasilkan (write) variabel output yang sama. Pada contoh di atas S adalah output dependence pada S1 karena keduanya mengubah register yang sama yaitu R1. (f) I/O dependence Terjadi karena file yang sama di rujuk oleh I/O statement. S1: Read(4), A(I) /Read array A from tape unit 4/ S: Rewind(4) /Rewind tape unit 4/ S: Write(4), B(I) /Write array B into tape unit 4/ S4: Rewind(4) /Rewind tape unit 4/ S1 dan S adalah I/O dependence satu dengan yang lain karena keduanya mengakses file yang sama dari tape unit 4. (g) Control dependence Ini berkenaan pada situasi dimana perintah eksekusi dari statemen tidak dapat ditentukan sebelum run time. Contohnya, kondisi statemen IF (pada Fortra tidak akan diubah sampai run time. Do 10 I 1, N IF (A(I 1).EQ. 0) A(I) 0 10 Continue (h) Resource dependence Adalah yang menyangkut dengan conflik pada penggunaan shared recources,- seperti unit integer, unit floating point, register, dan wilayah memori,- diantara parallel event. (i) Bernstein conditions Adalah suatu set kondisi berdasarkan dimana proses dapat di eksekusi secara parallel. (j) Degree of parallelism Adalah jumlah prosesor yang digunakan untuk mengeksekusi suatu program untuk tiap priode waktu.
Soal.1 (a) 4 prosesor f1, f, f, f4 : f1: Arithmetic and logic 1 x 0% x 55.000.000 f: Load/store with cache hit x 18% x 55.000 19.800 f: Branch 4 x 1% x 55.000.400 f4: Memory reference with cache miss 1 x 10% x 55.000.000 untuk f1: C.000 CPI 0, Ic 55. 000 untuk f: C 19.800 CPI 0, Ic 55. 000 untuk f: C.400 CPI Ic 55. 000 0,48 untuk f4: C.000 CPI Ic 55. 000 1, 0, + 0, + 0,48 + 1, CPI rate 0, 4 (b) MIPS rate adalah : f MIPS rate CPIx10 40x10 0,x10 0,1 MIPS (c) Pada Soal 1.4 diperoleh nilai T 11, ms Sedangkan untuk multiprosesor : 10 10 T Ic x 55.000 x 0,9075 ms MIPS 0,1 Sehingga speedup factor nya adalah : T 11, S( 1,4 T ( 0,9075 (d) Efisiensi dengan 4 prosesor adalah : S ( 1,4 E(,085 n 4
Problem.11 S( Speedup E( Efficiency U( Utilization Redundancy Q( Quality of a parallel computation (a) Buktikan 1/n E( U( 1, dimana n jumlah prosesor yang digunakan dalam komputasi parallel. (b) Buktikan 1 1/E( n. (c) Buktikan persamaan Q( (Eq..1) (d) Uji dengan menggunakan hypothetical workload pada contoh.. (a). 1/n E( U( 1 Efisiensi diperoleh dari perbandingan antara derajat aktual dari performansi speedup S ( dengan nilai maksimum atau E(, karena 1 S( n maka n 1/n S(/n n/n sehingga 1/n E( 1 (1) U( adalah sistem utilisasi yang didefinisikan sebagai perkalian antara redundansi dan efisiensi E( atau U(.E( () Sedangkan adalah rasio dari dan 1), dimana rasio ini menandakan tingkat kesesuaian antara software parallelism dengan hardware parallelism oleh karena itu diketahui 1 n () atau nilai harus lebih besar dari satu. Dari persamaan () diperoleh 1/n E(.E( 1 (4) Dari persamaan (1), (), (), dan (4) dapat diketahui bahwa pernyataan 1/n E( U( 1 adalah benar. (b). 1 1/E( n Dari persamaan () diperoleh E( nt ( 1 nt ( sehingga E( pernyataan 1/E( dapat kita buktikan sebagai nt ( 1) 1 nt( (5) 1)
Dari persaman () dapat diketahui pernyataan (5) adalah benar. Diketahui juga 1/n E( 1 maka dari sini diperoleh n 1/E( 1 () Dari persamaan (5) dan () dapat diketahui bahwa pernyataan 1 1/E( n adalah benar. S( E( (c). Q ( nt ( Diketahui S( (7) T ( E( (8) nt ( (9) 1) Dari persamaan (7), (8) dan (9) dapat diturunkan persamaan / T (. / nt ( Q ( / 1) nt (. 1) Q (. T (. nt ( nt ( Diketahui bahwa dalam suatu sistem uniprosesor T(1) 1) maka. Q (. nt (. T ( nt ( (d). Pada hypothetical workload pada contoh.. Diketahui : 1) T(1) n n + n log n T( 4n / (n + ) S( (n + ) / 4 E( (n + ) / (4 (n + log / n U( (n + ) (n + log / (4n ) Q( (n + ) / (1(n + log ) Misalkan jumlah prosesor yang digunakan n 4 maka : 1/n E( U( 1 1 ( n + ) ( n + )( n + log 1 n 4n 4n 1 ( 4 + ) ( 4 + )(4 + log 4) 1 4 4(4) 4(4)
1 7 4 1 4 1 4 0,5 0,475 0,55 1 Dari perhitungan diatas maka dapat diketahui bahwa 1/n E( U( 1 adalah benar. Untuk 1 1/E( n dapat dihitung pula : 1 1/E( n 1 n + log n 1 ( n + ) n n 4n n + log n 4n 1 n n ( n + ) Jika jumlah prosesor yang digunakan n 4 maka : 4 + log 4 4(4) 1 4 4 (4 + ) 1 1 n 4 7 1 1,5,857 4 Dari perhitungan diatas maka dapat disimpulkan bahwa 1 1/E( n adalah benar. Referensi : Kai Hwang, Advanced Computer Architecture : Parallelism, Scalability, Programmability, Mc-Graw-Hill, 199