在空间和时间局部重复访问相同的数组地址?

时间:2017-01-30 03:08:53

标签: architecture spatial cpu-architecture temporal

所以我对这部分代码是否具有任何空间局部性存在疑问。我有一种强烈的感觉,它确实有时间局部性。我的同行说有一些空间局部性,但我觉得它没有空间局部性。代码部分是:

for (i = 0; i < S; i++) {
read A[2];
}

1 个答案:

答案 0 :(得分:0)

空间位置是指靠近内存位置访问。在您的示例中,数组始终由常量索引,因此只访问一个内存位置(准确地说,它将访问数组索引的缓存行对齐地址)。因此它只有时间局部性。