martes, 22 de abril de 2008

Apuntes de clase 22/04/08

Comenzamos la clase comentando los fallos de la practica 4, que por lo general tiene un nivel mas bajo que las prácticas anteriores. Algunos de los fallos mas comunes son:

- Lo del nombre y el e-mail era solo para la primera práctica

- Demasiados pantallazos y nada de análisis: hay que hacer medias y representarlas

- Algunos miden cantidades irrelevantes: bytes/s (en un programa de red), paginación (en un programa que lee/escribe en disco), swap (en un sistema sin problemas debería ser 0)

- No se pone el objetivo, o se hace algo diferente a lo que se dice en el objetivo

- Se aplican cargas de trabajo que hacen bastante uso de la tarjeta gráfica pero sin embargo no se monitoriza

- Faltas de ortografía

- Errores de representación de las gráficas

*Como capturar gráficas (excel u openoffice): En vez de capturar pantalla, se le da a exportar y se selecciona la carpeta donde exportar el gráfico. Lo exportamos como html y ya tenemos el gráfico. También es posible con openoffice guardar el archivo como ods y descomprimirlo después (Yo directamente le he dado a ctrl+c con excel y me ha funcionado...)

Vemos como ejemplo de práctica la de nuestro compañero tupakamaru. El objetivo esta bien definido. La gráfica tiene varios defectos, como que por ejemplo no compara los resultados magnitud a magnitud sino que tiene barra con magnitudes diferentes juntas. Otro fallo es que en el eje x no indica cual es el sistema 1 y el sistema 2. Con estas gráficas no podemos detectar con certeza si el sistema falla o no, sobre todo con el uso del HD, ya que esa magnitud medida es algo ambigua.

Vemos ahora un ejercicio de autoevaluacion del blog aullidosdigitales.

Ejercicio de autoevaluación 3.1

Seguimos viendo algunos ejercicios del compañero Alejandro Peña Lorenzo, aunque no los comentamos.

Seguimos ahora con el temario...

3.4 Mejora de prestaciones de la CPU

Para mejorar la CPU, hay que seguir los siguientes pasos:

- Cambiar el setup de la BIOS de forma que la CPU vaya más rápida, en un pequeño incremento.

- Cambiar en el setup también la velocidad del bus del sistema, para que se empareje con la velocidad de la CPU. Ambas velocidades son submúltiplos de la velocidad del reloj del sistema, que, en general, es el doble de la velocidad del procesador.

- Si es posible, cambiar el voltaje al que funciona la CPU, en alguna pequeña cantidad, tratando de disminuirlo, siempre dentro de los límites de tolerancia de los componentes. Algunas placas madre, tales como las Abit (http://www.abit.com.tw) lo permiten.

- También es conveniente añadir un ventilador para el procesador solo (o cambiar el que hay por otro más potente), para evitar que se caliente demasiado.

- Si no se queda colgado, probar algún benchmark sobre el nuevo sistema, a ver qué incremento de velocidad se ha conseguido.

- Volver al principio, a intentar conseguir velocidades superiores.

En el caso de los sistemas multiprocesador, los dos procesadores deben acceder a memoria, para lo que tienen lo que se conoce como mutexes, que son objetos de exclusion mutua. Es decir, si un procesador esta trabajando en una zona de la memoria, este elemento impide la entrada del otro procesador a esa zona.Si uno de los procesadores no da el rendimiento esperado, puede que sea culpa de los mutexes. Para linux se puede utilizar un monitor que se conoce como mpstat, disponible dentro del paquete systat.

3.5 Sintonización de la memoria

Las dos tareas principales de la memoria son la paginacion y el intercambio(swapping). Para ver como funciona swap, el profesor ejecuta un programa. Una vez que se llena la memoria física, se empieza a utilizar la memoria swap almacenando los programas que no tienen espacio hasta que haya mas memoria física libre.Para evitar problemas con la memoria física podemos hacer lo siguiente:

- Limitar el tamaño de los procesos

- Usar librerías compartidas: Las librerias estáticas son las que se crean cuando se compila un programa, mientras las librerias dinámicas son aquellas que son compartidas por varios programas

- Modificar el algoritmo de paginación (aunque es bastante arriesgado). El parámetro mas relevante swappiness, que establece la tendencia del kernel a la hora de hacer swapping (cuanto mas alto este el valor, mas pronto realizará swapping)

- Cambiar el tamaño de la partición de swap

- Usar herramientas de gestión de prioridad por proceso

Algunos enlaces interesantes sobre el tema:

Wiki bandaancha.st

Guia de tuning para linux

Red Paper sobre el mismo tema (pdf)

3.6 Mejora de prestaciones en entrada/salida

Es bastante complicado mejorar las prestaciones de E/S ya que en estas operaciones intervienen multitud de dispositivos.Centrandonos en los discos duros, la eficiencia de estos sistemas estará en tres factores diferentes: throughput por proceso, throughput total, y eficiencia en el almacenamiento.

Por hoy ya dejamos el temario,y como siempre para finalizar...

Video del dia: comparativa DD/SSD

No hay comentarios: