Bonsoir,

Que signifie exactement NRC ?

La représentation mémoire d'un stockage NRC est-elle bien la suivante ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
 
int** matrix = new int*[height];
matrix[0] = new int[height*width];
for(int i = 0; i < height; ++i)
     matrix[i] = matrix[i-1] + width ;
L'avantage est-il bien que le cache tire parti de la localité spatiale du tableau en matrix[0] ?

Quel que soit i,j, des appels successifs à matrix[i][j] sont forcément des caches hits ?

Quelle est la différence (du point de vue du cache) entre le stockage NRC et int* matrix = new int[width*height] ?

Merci