Skip to content Skip to navigation

OpenStax-CNX

You are here: Home » Content » Ejercicios

Navigation

Recently Viewed

This feature requires Javascript to be enabled.
 

Exercise 1

El siguiente segmento de código recorre una cadena de apuntadores:

while ((p = (char *) *p) != NULL);
¿Cómo interactuará este código con la cache si todas las referencias caen en una pequeña porción de memoria? ¿Cómo interactuará con la cache si las referencias se prolongan a través de varios megabytes?

Exercise 2

¿Cómo se comportará el código en Exercise 1 en un sistema de memoria multibanco que no tenga cache?

Exercise 3

Hace mucho tiempo, la gente escribía regularmente código automodificable -programas que escriben en la memoria de instrucciones y cambian su propio comportamiento. ¿Cuáles son las implicaciones de código automodificable en una máquina con una arquitectura de memoria Harvard?

Exercise 4

Asuma una arquitectura de memoria con una velocidad de cache L1 de 10 ns, una velocidad L2 de 30 ns, y una velocidad de memoria de 200 ns. Compare el rendimiento promedio del sistema de memoria con: 1) L1 80%, L2 10% y memoria 10%; y 2) L1 85% y memoria 15%.

Exercise 5

En un sistema de cómputo, ejecute ciclos que procesen arreglos de longitudes variables de 16 a 16 millones:

ARRAY(I) = ARRAY(I) + 3
¿Cómo cambia el número de sumas por segundo conforme la longitud del arreglo cambia? Experimente con REAL*4, REAL*8, INTEGER*4, e INTEGER*8.

¿Qué tiene un impacto más significativo en el rendimiento, elementos de arreglo más grandes o números enteros versus números de punto flotante? Realice pruebas en una variedad de computadoras diferentes.

Exercise 6

Elabore un arreglo bidimensional de 1024x1024. Recorra el array, con los renglones como ciclo interno y después con las columnas como ciclo interno. Realice alguna operación simple en cada elemento. ¿Se comportan distinto los ciclos? ¿Por qué? Experimente con diferentes dimensiones de arreglos y vea el impacto en el rendimiento.

Exercise 7

Escriba un programa que ejecute repetidamente ciclos temporizados de diferentes tamaños, para determinar el tamaño de cache de su sistema.

Content actions

Download module as:

Add module to:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks