2015.6.16 出題分 コンピュータアーキテクチャII 課題解答例 課題 1 教科書 p.418 (第 3 版では p.430)の時間的局所性と空間的局所性の定義をよく読み,次のプログ ラムに関して,データアクセスの時間的局所性,空間的局所性の有無を検討し,下記の表に示せ. 1)比較的小さなループ処理で,かつ比較的小さな配列の要素を順次計算するプログラム. 2)非常に大きな配列の要素をランダムに読むプログラム. 3)非常に大きな配列の要素を順次に読むプログラム. 4)非常に大きな配列に対し,その添え字をランダムに決め,その要素に対して多数回の演算 を行う,という処理を繰り返すプログラム. 空間的局所性 時間的局所性 空間的局所性 時間的局所性 プログラム1 有 有 プログラム2 無 無 プログラム3 有 無 プログラム4 無 有 プログラム1 プログラム2 プログラム3 プログラム4 また,その理由を述べよ. 解答例 2 理由 1. 小さな配列であるため,近傍データが常にアクセスされる(空間的局所性有).また,自分 自身がすぐに繰り返し参照される(時間的局所性有). 2. 非常に大きい配列であり,要素がランダムにアクセスされることから,近傍データが引き続 きアクセスされる可能性は少ない(空間的局所性無).また,引き続き自分自身が参照され る確率も少ない(時間的局所性無). 3. 非常に大きい配列であるが,添え字を連続的に変化させてアクセスするので近傍データが引 き続き参照される(空間的局所性有).しかし,自身が参照されるのはしばらくたってから である(時間的局所性無). 4. 非常に大きな配列であり,演算する要素がランダムに決められるので,近傍データが参照され ることは少ない(空間的局所性無).しかし,自身は引き続き参照される(時間的局所性有). 1
© Copyright 2024 ExpyDoc