jueves, 5 de junio de 2008

Practica 6

DyEC: Practica 6

David Muñoz Gallardo

Objetivo de la práctica

El objetivo es comprobar en una misma máquina con distintos sistemas operativos, cual de ellos es mejor para realizar cálculos y lecturas de archivos de texto.

Descripción de la práctica.

Para realizar las pruebas utilizaremos el siguiente pc (portatil)::

-Intel Puntium M 2.0GHz

-1Gb de RAM 677MHZ

-100GB disco duro a 5400rpm

-Ati mobility radeon 9700 256mb.

En el pc están instalados 2 sistemas operativos:

-Linux Ubuntu 7.10

-Windows XP sp2. (windows ue v7.0)

Se han creado 2 programas en un lenguaje bastante interesante llamdado PERL.

El primer programa ejecuta un bucle de unas 100.000.000 sumas y mide el tiempo que tarda en realizarse.

use Benchmark;
my $t_ini = new Benchmark;

my $i = 0;
for($i = 0; $i < 10000; $i++){

my $j;
for($j = 0; $j < 10000; $j++){

my $res = $j + $i;
}

}

my $t_fin = new Benchmark;

my $t_total = timediff($t_fin, $t_ini);

print "Se tardo en ejecutar el codigo: ",timestr($t_total),"\n";

El segundo programa lee un fichero de texto de 44.866Kb y mide el tiempo que tarda en realizarse la operación. (el fichero no loadjunto porque pesa unos 44mb xD)


use Benchmark;
use File::Slurp;


my $t_ini = new Benchmark;

my @text = read_file( 'tama.txt' );

my $t_fin = new Benchmark;

my $t_total = timediff($t_fin, $t_ini);

print "Se tardo en ejecutar el codigo: ",timestr($t_total),"\n";

Para el segundo test, es interesante señalar el tipo de sistema de archivos de cada sistema operativo. Linux corre bajo un sistema ext3, mientras que windows esta usando NTFS. Ambos sistemas operativos estan instalados en el mismo disco duro, en disitintas particiones.

Métricas:

Se tomarán las medidas en segundos, y se medirá la velocidad de calculo y de lectura de ficheros de los 2 sistemas operativos. Esta medida es del tipo menos es mejor.

Bateria de pruebas:

Las pruebas seran las mismas para los 2 sistemas operativos:

Linux:

-Encender el pc

-Abrir una terminal

-Ejecutar perl bench.pl 3 veces y hacer la media de los resultados

-Ejecutar perl bench2.pl 3 veces y hacer la media de los resultados

Windows:

-Encender el pc

-Ejecutar cmd

-Ejecutar perl bench.pl 3 veces y hacer la media de los resultados

-Ejecutar perl bench2.pl 3 veces y hacer la media de los resultados

Resultados:

A continuación mostrare las tablas con los resultados de las 2 pruebas con sus correspondientes gráficas:


Cálculo(s)

Lectura(s)

Windows XP

28

8

Linux Ubuntu

25

2

A raíz de estos resultados, tomaremos como sistema base el mas lento (Windows XP, y porque no tengo vista que sino no sería necesario hacer las pruebas para saber cual sería el sistema mas lento xD) para poder presentar los resultados con índices.

Tabla de índices:

Indices

Cálculo

Lectura

Windows XP

1

1

Linux Ubuntu

1,12

4

Tabla de Índice Final:


IndiceFinal

Windows XP

1

Linux Ubuntu

2,12

Conclusión:

Como se esperaba, la tabla final de índices no miente, victoria aplastante de nuestro amigo Linux Ubuntu frente al malvado Windows XP.

En las gráficas podemos ver como en el procesamiento de operaciones aritmeticas no hay mucha diferencia entre los 2 sistemas operativos, pero a la hora de leer fichero, Linux es 4 veces más rapido que Windows, lo que nos quiere decir que ext3 es más rápido que el archiconocido NTFS.

martes, 20 de mayo de 2008

4.3.4 Doombench

Ejercicios de autoevaluación.

  1. Ejecutar un benchmark sintético, tal como el mencionado anteriormente, sobre algunos sistemas y presentar y comentar los resultados.
Aun a riesgo de no ser muy original, he elegido como benchmark sintético el Codecreatures Benchmark Pro que realiza una serie de pruebas gráficas a nuestra tarjeta y al final muestra un resumen del resultado de éstas (max fps, min fps, media pfs.....).

Realizaré el benchmark sobre mi tarjeta gráfica ati mobility radeom 9700, overclockeada 2 veces.
Aquí está la tabla de resultados:


Los valores de GPU y MEM se miden en MHz.
La 4 últimas columnas son los resultados con el antialiasing activado a 4x.



Sus correspondientes gráficas:







Podemos ver que el overclock ha aumentado un poco los fps y los polígonos, pero también nos ha aumentado la temperatura del portátil, por lo que no es muy recomendable realizarlo sino se dispone de un buen sistema de refigeración, y os puedo asegurar que este no es el caso...

4.2.5 Juegos de benchmarking

Ejercicios de autoevaluación.

Mostrar en un benchmark publicado la existencia de alguno de estos juegos de benchmarking.

Tras un largo rato buscando por internet, el "único" juego de benchmarking que he encontrado se encuentra en esta url: http://www.tomshardware.com/reviews/vga-charts-vi,1040.html , en concreto en la 2ª página. Se trata de comparar muchas tarjetas gráficas de 3 marcas diferentes (ati, nvidia e intel). Pero como todos sabemos, las intel vienen incluidas en la placa base, por lo que no se puede usar la misma configuración (tipo de pc) para realizar las pruebas a los 3 tipos de tarjetas.
Si bien es cierto, que esto no sería un juego de benchmarking propiamente dicho, ya que la página que ha realizado estos benchmark no nos está intentando vender ninguna tarjeta (o eso creo). Mas bien estaríamos ante un error por intentar comparar las intel con las ati y envidia con distintivos pcs.

4. Selección y Configuración de Sistemas Informáticos: Benchmarking - Introducción

Ejercicios de autoevaluación


1. Localizar por internet, y aplicarlo a un par de sistemas (de los que tenga uno a mano, claro), benchmarks para medir la velocidad de una impresora, un lector de CD y una tarjeta gráfica.

Para realizar el benchmark al lector de cd yo suelo usar esta herramienta gratuita: Nero cd-dvd Speed. A continuación podemos ver una captura del resultado del benchmark:



Y para realizar el benchmark a la tarjeta gráfica, he usado una herramienta que encontré para hacer la práctica 5, la cual somete a unas pruebas a la tarjeta gráfica. Codecreatures Benchmark Pro.





martes, 13 de mayo de 2008

Practica 5

Después de un largo rato intentando subir mi práctica y no conseguir nada he decidido no subirla, porque no quedaba nada bien con el formato del blog y no se veían las tablas...

domingo, 11 de mayo de 2008

3.6.4 Conservando el espacio del disco duro

Ejercicios de autoevaluación

1. Consultar los parámetros físicos de los discos duros del sistema personal, y decir si la configuración maestro/esclavo que se está usando es la más adecuada.

Dispongo de 2 discos duros en mi sobremesa y un lector-gravadora de dvds. El disco duro principal (350gb) esta solo en maestro, en el otro bus, tengo la grabadora en maestro y el disco duro secundario en slave (solo lo uso para almacenar peliculas y series).

3.6.2 Particiones y filesystems

Ejercicios de autoevaluación

1. Buscar comparativas entre prestaciones de diferentes filesystems y sacar conclusiones sobre su adecuación para alguna tarea en particular.

Me parece interesante poner una imagen que compara NTFS y FAT, ya que son los filesystem más conocidos de windows...aunque linux hay más variedad.

3.4 Mejora de prestaciones de la CPU

Ejercicios de autoevaluación:

1. Contar una experiencia de overclocking propia o encontrada en algún sitio de Internet.

Ya que tengo un pentium M en mi portátil, he buscado por internet algun overclocking a este tipo de procesadores y me he encontrado con esto (overclockean un intel pentium m 1.6GHz hasta los 3.16Ghz!!, eso si, con un buen sistema de refigeraciñon).

3.3 Políticas de gestión del sistema

Ejercicios de autoevaluación:

1. Comparar dos programas que hagan la misma labor (por ejemplo, dos procesadores de textos), ejecutando simultáneamente un monitor, y calcular a ojo de buen cubero los recursos de CPU y memoria que consumen. ¿Si hay varias copias del programa, cómo evoluciona el consumo de recursos?

Realizaré este ejercicio con el reproductor Windows Media 11 y Winamp 5.32.
Winamp consume mucha más cpu que wm11 al iniciarse ya que winamp carga una lista de reproducción de unas 600 canciones, mientras que wm11 no carga nada.
En uso ambos reproductores consumen cerca de 5-6% de cpu.
Ninguno de los 2 programas me permite abrir varias copias del programa.


2. Monitorizar la CPU y memoria de un ordenador recién encendido; eliminar servicios innecesarios del arranque, y volver a hacer la monitorización. ¿Ha mejorado algo?

Con el sistema base, la cpu suele estar a 3-4% de uso, si eliminamos algunos servicios que arrancan con el sistema (daemontools, herramienta de actualizacion de quicktime, herramienta de detección de discos de nero) no conseguimos bajar el uso de cpu, pero si mejoramos el tiempo de arranque del sistema.

3. Solución de problemas en un sistema informático- Introducción

Ejercicios de autoevaluación:

1. Busca en Internet o en el manual de tu sistema operativo cómo puedes alterar los parámetros siguientes de tu sistema operativo: tamaño de la rodaja temporal, índice de supervivencia de página, número máximo de usuarios, número máximo de procesos.

En este aspecto, windows no nos deja modificar muchos parametros del sistema a no ser que "trasteemos" con el registro. Lo cual si no sabemos exactamente lo que hacemos es mejor no tocarlo...doy fe de ello.

2. Mirando las pantallas de configuración de tu ordenador, dí qué parámetros del hardware se pueden cambiar: reloj del sistema, por ejemplo, o frecuencia del bus del sistema.

En el panel de control de windows tenemos algunas opciones para configurar el sistema:

- Hora y fecha.
- Puertos
- ...

Usando programas ajenos a los incluidos por defecto en windows podemos:

-Overclockear nuestra tarjeta gráfica (Ati Tray Tools)
-Controlar la velocidad del ventilador (Speedfan)
-Monitorizar todo nuestro sistema.

En la bios del pc también podemos aplicar overclock a nuestro procesador.

3. Buscar en Internet algún contrato de prestación de servicios que incluya condiciones sobre las prestaciones de un sistema que va a contratar; presentar el enlace.

Aquí esta el contrato de una página de hosting web.

2.3 Errores comunes en la representación gráfica de resultados

Ejercicios de autoevaluación.

1. ¿Qué tipo de gráfico (líneas o barras) se usaría para trazar:


  • Uso de CPU para 12 meses del año: Lineas.
  • Uso de CPU en función del tiempo en meses: Lineas.
  • Número de E/S a 3 discos duros: A, B, y C: Barras.
  • Número de E/S como una función del número de discos duros en el sistema: Barras.

2.2 Reglas para representaciones gráficas

Ejercicios de autoevaluación.

  1. Partiendo del gráfico por defecto de algún programa que los elabore a partir de datos, irlo convirtiendo en uno que cumpla las reglas anteriores.
La siguiente gráfica cumple los requisitos. En ella se representan las medidas de 3 sistemas, los cuales corresponden a una misma tarjeta gráfica overclockeada.


1.5.4 Programas de monitorización de la actividad del sistema

1. Ejercicios de autoevaluacion:

Ejecutar permanentemente un programa de monitorización del sistema (por ejemplo, incluyéndolo como widget en la barra de tareas) y observar qué ocurre cuando hacemos alguna de las cosas siguientes:


  • Abrir el navegador y cerrarlo: Casi no aumenta nada el uso de cpu, apenas llega al 20%.
  • Ejecutar un videojuego de ultima generación: CPU 100% y temperatura del portatil aumentando exponencialmente.
  • Compilar algún programa: 80% de uso de cpu, aunque durante muy poco tiempo, que ya el programa más largo que tenia que compilar era la práctica final de mp2.

1.5 Medición de la carga de un sistema

Ejercicios de autoevaluación:

1.Buscar y usar un profiler sobre un programa propio, en el lenguaje de programación que sea. Indicar qué es necesario para usarlo, y, una vez aplicado sobre un programa, decir qué mejoras se pueden hacer sobre el mismo.

Este ejercicio de autoevaluación es similar a la práctica 3 por lo que explicaré el profiler usado.

Para ésta práctica usé el profiler por defecto del compilador GNU (gprof).

Para compilarlo (generando información para el profiler), ejecutarlo y mostrar el contenido del profiler en un fichero txt con el nombre nombre.txt hacemos lo siguiente:

  1. g++ -pg -o programa.cpp
  2. ./programa
  3. gprof programa > nombre.txt

Con esto tendremos un fichero txt con el resultado del profiler, el cual suele ser bastante extenso.

Si queremos mejorar la eficiencia del programa, debemos optimizar las primero funiones que aparecen en el .txt.

1.4 Técnicas de evaluación de un sistema informático

Ejercicios de autoevaluación:

1.Buscar sistemas gratuitos de simulación, especialmente para hardware.

Aunque no sea un sistema de simulación de hardware, me parece interesante hablar de VMware, ya que es el software de virtualización más conocido por nosotros. Tiene una version shareware (VMware Workstation) y dos versiones freeware (VMware server y VMware player).

Otro de los sistemas de emulación más conocidos es MAME, famoso por simular multiples máquinas de videojuegos arcade («emulador múltiple de máquinas recreativas»).

Por último, como simulador de hardware, conozco el simulador “Hardware in the Loop” de SEAT, ya que en las últimas reivisiones que le he hecho a mi coche lo han usado para comprobar el correcto funcionamiento de sus sistemas. (Desconozco si es gratuito o no aunque dudo que lo sea y aun más dudo que este en venta).

sábado, 15 de marzo de 2008

1.3 Selección de las métricas de prestaciones

Ejercicios de autoevaluación

  1. Indicar las métricas que se usarían, y de qué tipo son (más-es-mejor, menos-es-mejor, nominal-es-mejor), en los siguientes sistemas: tarjeta gráfica, impresora, programa servidor web, ordenador servidor web .

-Tarjeta Gráfica:

Hay distintas métricas para una tarjeta gráfica, pero a mi parecer las más importantes son:

-Fps (Más es mejor)

-Temperatura (Menos es mejor)

-Impresora:

-Páginas por minuto (Más es mejor)

-Tinta consumida por página (Menos es mejor)

-Cantidad de tinta por punto (Nominal es mejor)

-Programa servidor web:

-Recursos consumidos y cpu usada (Nominal es mejor)

-Ordenador servidor web:

-Conexiones máximas permitidas (Más es mejor)

sábado, 8 de marzo de 2008

1.2. Fases en la evaluación de un sistema informático.

Ejercicios de autoevaluación

Especificar en qué consistirían los 10 pasos de la sección 1.2 en el caso de la evaluación de alguno de los siguientes sistemas: un compilador, un proveedor de servicio ADSL, una tarjeta gráfica, una impresora.

Este ejercicio lo voy a hacer para tarjetas gráficas.

1. Especificar los objetivos y definir el sistema:

El objetivo es escoger una tarjeta gráfica que soporte los juegos de última generación, es decir, una tarjeta gráfica para un “Gamer”. Esta tarjeta debe tener la Píxel Shader y Vertex Shader 3.0 (para que nos hagamos una idea de lo que son, podríamos decir que son los encargados del “humo” de los juegos, pero eso es una de sus múltiples utilidades). En principio con 256mb de video serán suficientes, aunque lo más recomendado serían 512mb, para así poder cargar mejor las texturas.

2. Servicios que ofrece el sistema:

Las tarjetas gráficas ofrecen un abanico de servicios, entre ellos: mostrar fuentes por pantalla, resolución del área de trabajo (aunque para esto necesitamos un monitor compatible para dicha resolución), reproducción de video, carga de imágenes en 3D (este es el factor que nosotros queremos testear, ya que incluye los juegos), posibilidad de usar múltiples monitores, posibilidad de clonar la imagen.…

3. Métricas:

En este apartado tenemos 2 métricas muy importantes para nuestro test, la temperatura en grados y las fps (imágenes por segundo). La temperatura será del tipo Menos es mejor y las fps Más es mejor.

4. Parámetros que pueden afectar a las mediciones:

Y que en nuestro caso, AFECTAN a las mediciones. Estos parámetros son: tener la cpu en uso el momento de hacer las mediciones, no disponer de suficiente RAM (requisitos del juego), o no haberla vaciado antes de hacer el test, no tener una fuente de alimentación de suficiente potencia, versión de los drivers, sistema operativo (no es lo mismo hacer el test en xp que en vista) y por último la temperatura (debemos hacer las pruebas a la misma temperatura, ya que sabemos que cuando un sistema se sobrecalienta, disminuye su productividad)

5. Factores a estudiar:

Debemos estudiar la temperatura y las fps principalmente.

6. Técnicas de evaluación:

Para nuestro caso, usaremos un Benchmark con varios test que medirán en tiempo real los fps y la temperatura. (3dmark).

7. Carga de trabajo:

Haremos correr en nuestro sistema distintos motores gráficos modificando en el programa que realiza el Benchmark el uso de píxel shader y vertex shader, así como la resolución y el tamaño de las texturas.

8. 9. 10. Estos pasos se deben realizar tras haber hecho los anteriores.

viernes, 22 de febrero de 2008

Tema1.1 - 2.Ejercicios de autoevaluación

  1. Indicar qué tipo de medidas sueles tomar para medir las prestaciones de un ordenador.

Normalmente, cuando quiero ver las prestaciones de un ordenador, uso un programa llamado Everest, que incorpora varios test para probar en el ordenador.

  1. Indicar en qué casos de los que te encuentras en tu trabajo (u otro quehacer) diario necesitarás medir las prestaciones del ordenador.

Actualmente, en “mi trabajo” (universidad) no necesito medir las prestaciones de mi pc, ya que la mayoría de los programas que usamos suelen ser ligeros. Únicamente necesito medir las prestaciones con los juegos. Para ello me voy a SystemRequirementslab y ahí elijo el juego que quiero saber si funcionará en mi pc.


  1. Indicar en qué casos percibes una falta de prestaciones de los ordenadores que sueles manejar.

Normalmente esto suele pasar en prácticas de algunas asignaturas de mi universidad, donde en algunos casos se imparten en aulas con ordenadores desfasados, que pueden con el programa que usamos pero en muchos casos se nota ese falta de requerimientos. Ejemplo: Usar matemática 3.0 en un Pentium II.

Otro caso muy usual es cuando intentas instalar un juego de ultima generación y te das cuenta de que tu pc no llega siquiera a la mitad de los requisitos mínimos (vease Crysis).

  1. Mirar qué servicios hay activos en nuestro ordenador personal y en algún otro ordenador al que tengamos acceso. ¿Qué usas para saber los servicios que hay activos? ¿Sabes lo que hacen? ¿Si suprimes alguno de ellos, qué pasa?
Aquí muestro una captura de pantalla de algunos procesos que hay en mi sistema (54 procesos no caben en una captura de pantalla)



de los cuales explicaré:
-winamp.exe: Sin comentarios
-svchost.exe: Es el encargado en Windows XP de ejecutar los servicios que corren desde una DLL (dynamic-link libraries).
Hay virus que intentan engañarnos usando un nombre parecido al de este proceso:
scvhost.exe Lo instala el virus W32/Agobot-S. Se trata de un gusano y troyano backdoor de IRC que se copia asi mismo aprovechando los recursos compartidos con passwords débiles. E intenta propagarse utilizando las vulnerabilidades del RPC Locator y DCOM RPC.
svchosts.exe Lo instala el virus Sdbot-N. Es un troyano backdoor que permite a un usuario remoto controlar nuestra máquina a través del IRC. Se ejecuta en background, y trata de conectarse a un canal específico de un servidor de IRC y luego queda a la escucha de ciertos comandos para llevar a cabo sus correspondientes acciones.
svshost.exe Lo instala el virus Worm.P2P.Spybot.gen
-daemon.exe: Programa usado para crear una unidad virtual de cd/dvd en la que montar los archivos de imagenes (.iso, .img, ...)

ya no explicaré más porque esto se podría convertir en una biblia...

¿Si suprimes alguno de ellos, qué pasa?

Como mucho, nos puede hacer que el pc se reinicie...

-explorer.exe: Si suprimimos este proceso nos quedaremos con una bonita imagen de fondo de pantalla y todo lo demás desaparecerá hasta que se vuelva a iniciar este proceso.
-firefox.exe: Si suprimo este proceso sería una "gran cagada" ya que soy tan listo que estoy haciendo estos ejercicios directamente sobre la página del blog, por lo que si terminara el proceso de firefox, perdería todo lo que he hecho...

martes, 19 de febrero de 2008

Asi que esto es un blog.....

Nunca me imaginaba creando un blog, pero el trabajo, el duro trabajo, me ha obligado a hacerlo...
He creado este blog para publicar los ejercicios de autoevaluación de la asignatura DEC (diseño y evaluación de configuraciones)
Creo que he dejado bien claro mi user de DyEC en el blog (davis87)
Y ahora una imagen que nunca viene mal: