Ejercicio 1

Ejercicio 1

de Veronica Viviana Pintos Fernandez -
Número de respuestas: 5

Hola buenas tardes,

No entiendo bien el ejercicio que pide mostrar un ejemplo de localidad espacial y uno temporal del código:

for (i = 0; i < 20; i++)

  for (j = 0; j < 10; j++)

      a[i] = a[i] * a[j]

Lo que observo en el código es que sobreescribo a[i] j veces (j = 0, .., 9) para i = 0,..,19.

Si supongo la memoria caché vacía inicialemente tengo un miss pero luego de ir a buscar a memoria prinicipal, cuáles datos "llevo" a MP?

Muchas gracias,

Verónica

En respuesta a Veronica Viviana Pintos Fernandez

Re: Ejercicio 1

de Federico Rivero -

Estimada:

Me parece que te estàs yendo por las ramas. La idea del ejercicio es que muestres còmo los principios de localidad aplian al código en cuestion.

Saludos!

 

En respuesta a Federico Rivero

Re: Ejercicio 1

de Veronica Viviana Pintos Fernandez -

No se igual cómo ver lo que tu decis.

Si es localidad espacial, se que al elemento que referencie en cierto momento, los adyacentes también podrán ser accesidos poco después.

Si el localidad temporal, un elemento referenciado puede ser referenciado nuevamente poco tiempo después.

Como sobreescribo a[i] "aplican" ambas localidades? Sobre todo la temporal?

Gracias!

En respuesta a Veronica Viviana Pintos Fernandez

Re: Ejercicio 1

de Marco Andres Baldi Monaco -
Esto es viejo, pero voy a aprovechar el titulo.

Está bien este razonamiento?:
En este caso la localidad temporal se da en el a[i] ya que se lee y reasigna 20 veces seguidas por el for interno.
Y la localidad espacial se da porque se leen 10 elementos consecutivos del arreglo "a" mediante el a[j], también por el for interno.