Dokumen tersebut membahas tentang mata kuliah Arsitektur Komputer Lanjut yang mencakup pembahasan bab 1, 2, dan 3 dari buku "Advanced Computer Architecture" karya Kai Hwang. Ringkasan dokumen memberikan informasi bahwa dokumen tersebut berisi penyelesaian soal-soal yang terkait dengan konsep arsitektur komputer paralel seperti CPI, MIPS rate, throughput, parallelisme instruksi, dan analisis efisiensi dan utilisasi sistem paralel
1. Tugas Arsitektur Komputer Lanjut (EC6020)
Buku : Kai Hwang, Advanced Computer Architecture : Parallelism, Scalability,
Programmability, Mc-Graw-Hill, 1993
(Pembahasan Soal Bab 1, 2 dan 3)
Nama : Ketut Udy Ariawan
NIM : 23205022
Penyelesaian Soal No 1.4
(a) Arithmetic and logic 1 x 60% x 200.000 = 120.000
Load/store with cache hit 2 x 18% x 200.000 = 72.000
Branch 4 x 12% x 200.000 = 96.000
Memory reference with cache miss 8 x 10% x 200.000 = 160.000
Total ( C ) : 448000
C 448000
CPI = = = 2,24
Ic 200.000
f 40 x 106
(b) MIPS rate = = = 17,86
CPI x 106 2,24 x 106
Penyelesaian Soal No 1.6
Wp (Troughput rate) = MIPS x 106/Ic
Program 1 Komputer A Wp = 1 x 106/108 = 0,01
Program 1 Komputer B Wp = 10 x 106/108 = 0,1
Program 1 Komputer C Wp = 20 x 106/108 = 0,2
Program 2 Komputer A Wp = 1000 x 106/108 = 10
Program 2 Komputer B Wp = 100 x 106/108 = 1
Program 2 Komputer C Wp = 20 x 106/108 = 0,2
Program 3 Komputer A Wp = 500 x 106/108 = 5
2. Program 3 Komputer B Wp = 1000 x 106/108 = 10
Program 3 Komputer C Wp = 50 x 106/108 = 0,5
Program 4 Komputer A Wp = 100 x 106/108 = 1
Program 4 Komputer B Wp = 800 x 106/108 = 8
Program 4 Komputer C Wp = 100 x 106/108 = 1
Dari hasil perhitungan diatas, dapat disimpulkan
Komputer C adalah general purpose
Komputer A dan B special purpose
Penyelesaian Soal No 1.8
(a) Instruksi Load R1,B(I) 4 x 64 = 256
Instruksi Load R2,C(I) 4 x 64 = 256
Instruksi Multiply R1,R2 8 x 64 = 512
Instruksi Load R3,A(I) 4 x 64 = 256
Instruksi Add R3,R1 2 x 64 = 128
Instruksi Store D(I),R3 4 x 64 = 256
Total = 1664 CPU cycle
1664
(b) SIMD excution time = = 26 siklus mesin
64
(c) Speedup gain = 64
3. Penyelesaian Soal No 2.4
a)
S1
S2 S4
S3
b) S1
S2 S4
S3
c)
S1
S2 S3
Penyelesaian Soal No 2.5
a)
S1
S4
S2
S5
S3
b) ya, sebab terdapat beberapa eksekusi yang merupakan flow dependence
4. c)
S1
S4
S2
S5
S3
Juga terdapat sumber – sumber dependence karena banyak eksekusi yang
merupakan flow dependence.
Penyelesaian Soal No 2.7
Terdapat 21 pasang kemungkinan yang dapat diparallelkan, tetapi pasangan
yang dapat diparallelkan adalah 9 pasang
S1||S3, S1||S5, S2||S3, S2||S7, S3||S5, S3||S6, S3||S7, S5||S6, S5||S7
1 2 3 4 5 6 7 8 9
Penyelesaian Soal No 3.11
(a). 1/n ≤ E(n) ≤ U(n) ≤ 1
Efisiensi diperoleh dari perbandingan antara derajat aktual dari performansi
S ( n)
speedup dengan nilai maksimum atau E(n) = , karena 1 ≤ S(n) ≤ n maka
n
1/n ≤ S(n)/n ≤ n/n sehingga
1/n ≤ E(n) ≤ 1 (1)
U(n) adalah sistem utilisasi yang didefinisikan sebagai perkalian antara
redundansi R(n) dan efisiensi E(n) atau
U(n) = R(n).E(n) (2)
Sedangkan R(n) adalah rasio dari O(n) dan O(1), dimana rasio ini menandakan
tingkat kesesuaian antara software parallelism dengan hardware parallelism oleh
karena itu diketahui
1 ≤ R(n) ≤ n (3)
atau nilai R(n) harus lebih besar dari satu.
Dari persamaan (2) diperoleh
1/n ≤ E(n) ≤ R(n).E(n) ≤ 1 (4)
5. Dari persamaan (1), (2), (3), dan (4) dapat diketahui bahwa pernyataan
1/n ≤ E(n) ≤ U(n) ≤ 1
adalah benar.
(b). 1 ≤ R(n) ≤ 1/E(n) ≤ n
Dari persamaan (2) diperoleh
O ( n)
E(n) =
nT (n) R(n)
1 nT (n) R(n)
= sehingga
E ( n) O ( n)
pernyataan R(n) ≤ 1/E(n) dapat kita buktikan sebagai
O ( n) nT (n) R(n)
≤
O(1) O ( n)
1
≤ nT(n)R(n) (5)
O(1)
Dari persaman (3) dapat diketahui pernyataan (5) adalah benar.
Diketahui juga 1/n ≤ E(n) ≤ 1 maka dari sini diperoleh
n ≥ 1/E(n) ≥ 1 (6)
Dari persamaan (5) dan (6) dapat diketahui bahwa pernyataan
1 ≤ R(n) ≤ 1/E(n) ≤ n
adalah benar.
S ( n) E ( n) T 3 (1)
(c). Q(n) = =
R ( n) nT 2 (n)O(n)
Diketahui
T (1)
S(n) = (7)
T ( n)
T (1)
E(n) = (8)
nT (n)
O ( n)
R(n) = (9)
O(1)
Dari persamaan (7), (8) dan (9) dapat diturunkan persamaan
T (1) / T (n).T (1) / nT (n) T 3 (1)
Q ( n) = =
O(n) / O(1) nT 2 (n)O(n)
6. T (1).T (1) O(1) T 3 (1)
Q ( n) = . =
T (n).nT (n) O(n) nT 2 (n)O(n)
Diketahui bahwa dalam suatu sistem uniprosesor T(1) = O(1) maka
T (1).T (1) T (1) T 3 (1)
Q ( n) = . =
nT (n).T (n) O(n) nT 2 (n)O(n)
(d). Pada hypothetical workload pada contoh 3.3. Diketahui :
O(1) = T(1) = n3
O(n) = n3 + n2 log2 n
T(n) = 4n3 / (n + 3)
S(n) = (n + 3) / 4
E(n) = (n + 3) / (4n)
R(n) = (n + log2 n) / n
U(n) = (n + 3) (n + log2 n) / (4n2)
Q(n) = (n + 3)2 / (16(n + log2 n))
Misalkan jumlah prosesor yang digunakan n = 4 maka :
1/n ≤ E(n) ≤ U(n) ≤ 1
1 (n + 3) (n + 3)(n + log 2 n)
≤ ≤ ≤1
n 4n 4n 2
1 (4 + 3) (4 + 3)(4 + log 2 4)
≤ ≤ ≤1
4 4( 4) 4(4) 2
1 7 42
≤ ≤ ≤1
4 16 64
0,25 ≤ 0,4375 ≤ 0,65625 ≤ 1
Dari perhitungan diatas maka dapat diketahui bahwa 1/n ≤ E(n) ≤ U(n) ≤ 1 adalah
benar.
Untuk 1 ≤ R(n) ≤ 1/E(n) ≤ n dapat dihitung pula :
1 ≤ R(n) ≤ 1/E(n) ≤ n
n + log 2 n 1
1≤ ≤ ≤n
n (n + 3)
4n
n + log 2 n 4n
1≤ ≤ ≤n
n (n + 3)
Jika jumlah prosesor yang digunakan n = 4 maka :
7. 4 + log 2 4 4( 4)
1≤ ≤ ≤4
4 (4 + 3)
6 16
1≤ ≤ ≤n
4 7
1 ≤ 1,5 ≤ 2,2857 ≤ 4
Dari perhitungan diatas maka dapat disimpulkan bahwa 1 ≤ R(n) ≤ 1/E(n) ≤ n
adalah benar.