<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5774264339009566385</id><updated>2012-02-16T07:39:01.823-08:00</updated><title type='text'>Jesse's Experience</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-3369324418827893575</id><published>2009-06-17T02:24:00.000-07:00</published><updated>2009-06-17T02:32:56.720-07:00</updated><title type='text'>Práctica 6: Diseño y Evaluación de Configuraciones :: Realización de Un BenchMark</title><content type='html'>&lt;h2&gt;Realización del BenchMark---&lt;a href="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/JesseMark.jar"&gt;Descargarlo(Debe contar con una máquina virtual java)&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;  &lt;strong&gt;&lt;span&gt;Lenguaje&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;  &lt;p&gt;El benchMark está hecho en java para que se pueda ejecutar en muchas plataformas, además gráfico y por lo tanto tiene ventanas que lo hacen muy comodo al usuario. Ha sido desarrollado con JBuilder y se debe ejecutar con al menos la versión sexta de JRE&lt;/p&gt;&lt;br /&gt;  &lt;h2&gt;Objetivos&lt;/h2&gt;&lt;br /&gt;  &lt;p&gt;Mis objetivos para esta práctica son los siguientes: Pretendo hacer un benchmark muy comodo e intuitivo capaz de ser usado en cualquier sistema operativo y con cualquier ordenador. Además pretendo que sea gráfico y que pueda ser capaz de comparar con el de forma genérica varios ordenadores para darme una idea de cual es mejor&lt;/p&gt;&lt;br /&gt;  &lt;p&gt;El benchmark se va a ejecutar 3 veces, de las cuales, las 2 primeras se ejecutan en un equipo en diferentes SO, y la segunda se ejecuta en un segundo equipo en Kubuntu&lt;/p&gt;&lt;br /&gt;  &lt;h2&gt;El BenchMark - Instrucciones&lt;/h2&gt;&lt;br /&gt;  &lt;p&gt;Paso a explicar de forma breve el funcionamiento del benchMark, en concreto, este benchMark consta de 3 partes: Menu superior, menú lateral y cuerpo. En el cuerpo se van mostrando los resultados de cada benchMark y en la botonera da a elegir los posibles benchMark que podemos hacer&lt;/p&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark1.png" /&gt;&lt;br /&gt;  &lt;p&gt;Paso a explicar las opciones que da el menú superior, dentro de Archivo, ofrece Salir y dentro de Ayuda ofrece Acerca de... (En este último muestra una ventana con información del creador,es decir, de mi)&lt;/p&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark2.png" /&gt;&lt;br /&gt;  &lt;p&gt;En la botonera de la derecha se pueden obtener varios benchMark y un botón de información, en el botón de información podemos ver un resumen de las características de nuestra máquinaSi presionamos este botón nos mostrará de forma visual las características generales de nuestra máquina&lt;/p&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark3.png" /&gt;&lt;br /&gt;  &lt;p&gt;Ahora podemos pasar a ejecutar cada uno de los benchmark dandonos pantallas como estas donde se nos muestra la información de una manera bastante visual&lt;/p&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark4.png" /&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark5.png" /&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark6.png" /&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark7.png" /&gt;&lt;br /&gt;  &lt;p&gt;Y si ejecutamos el modo gráfico podremos observar que pinta una batería de fotos tal y como estas:&lt;/p&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark8.png" /&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark9.png" /&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/jessemark10.png" /&gt;&lt;br /&gt;  &lt;h2&gt;El BenchMark - Desarrollo&lt;/h2&gt;&lt;br /&gt;  &lt;span&gt;&lt;strong&gt;CPU&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;  &lt;p&gt;Para el benchMark de la CPU he usado hecho sumas y multiplicaciones con enteros y reales, en concreto se hacen 10000000 sumas y multiplicaciones para enteros y para reales, y además esas 10000000 sumas y multiplicaciones se repiten 10 veces para hallar la media de todas estas repeticiones y obtener un valor fiable, por lo tanto en este apartado se llegan a hacer unas 400000000 operaciones&lt;/p&gt;&lt;br /&gt;  &lt;p&gt;Para obtener el tiempo mido al principio y al final y resto ambos, obteniendo asi el tiempo empleado, y para obtener un tiempo más fiable haga la media (esto ya lo he explicado de forma detallada en el parrafo anterior). Las medidas que obtenemos son SE/ms, SR/ms, ME/ms y MR/ms con S me refiero a Suma, con E enteros, con M multiplicaciones y con R a reales por lo tanto obtenemos el tipo de cálculo, por unidad de tiempo&lt;/p&gt;&lt;br /&gt;  &lt;span&gt;&lt;strong&gt;Memoria&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;  &lt;p&gt;En este apartado, lo que hago es ejecutar un algoritmo de ordenación sobre vectores de varios tamaños, en concreto de 1000, 10000, 100000 y 1000000 elementos. El algoritmo es un mergeSort que utilizando la dinámica divide y venceras. Las medidas que obtenemos aquí son milisegundos&lt;br /&gt;  &lt;span&gt;&lt;strong&gt;Disco&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;  &lt;/p&gt;&lt;p&gt;En este apartado obtenemos el resultado de guardar en 4 archivos diferentes, un número de bloques de 512Bytes diferente, tras hacer los cálculos se nos presentará todas las variables ( número de archivos, número de bloques escrito en total, tiempo medio en escribir un bloque y bloques escritos en un milisegundo, esta última será la que utilizaremos para las comparativas)&lt;/p&gt;&lt;br /&gt;  &lt;span&gt;&lt;strong&gt;Gráficos&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;  &lt;p&gt;En este apartado, lo que quiero medir está más bien referido al tiempo invertido en pintar fotos, que en el número de fotos que caben en pantalla(como dice el guión) puesto que me parece más significativo el primer cálculo.En concreto se muestran una batería de 56 fotografías. Para poder hacerlas visibles al ojo, hago un retardo de 1ms entre foto y foto, este tiempo de espera de 1 milisegundo, al final se lo resto al tiempo total de cálculo.Para las medidas, calculo el tiempo total y lo divido entre el número de fotos, aunque los cálculos se muestran mucho mejor en la propia aplicación como vamos a ver ahora.&lt;/p&gt;&lt;br /&gt;  &lt;h2&gt;Ejecución del BenchMark en Diferentes Máquinas&lt;/h2&gt;&lt;br /&gt;  &lt;span&gt;&lt;strong&gt;Ejecución Base&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;  &lt;p&gt;En cuanto a las ejecuciones voy a poner los resultados del benchmark con capturas pues lo he hecho como para que no haga falta interpretarlo, si no que él mismo defina de forma muy visual los resultados&lt;/p&gt;&lt;br /&gt;  &lt;p&gt;Se ejecuta en mi ordenador portatil:&lt;br /&gt;Tipo de procesador    Intel Pentium III Xeon, 2266 MHz (7 x 324)&lt;br /&gt;  En Windows Vista Home Premium&lt;/p&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion1-1.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion1-2.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion1-3.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion1-4.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion1-5.png" /&gt;&lt;br /&gt;          &lt;p&gt;Se ejecuta en mi ordenador portatil:&lt;br /&gt;Tipo de procesador    Intel Pentium III Xeon, 2266 MHz (7 x 324)&lt;br /&gt;  En Ubuntu 9.04&lt;/p&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion2-1.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion2-2.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion2-3.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion2-4.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion2-5.png" /&gt;&lt;br /&gt;  &lt;p&gt;Se ejecuta un ordenador de Mesa: Que consta de KUbuntu 9.04 y tiene un AMD Semprom 2800+ &lt;/p&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion3-1.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion3-2.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion3-3.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion3-4.png" /&gt;&lt;br /&gt;      &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica6/images/ejecucion3-5.png" /&gt;&lt;br /&gt;  &lt;h2&gt;Conclusiones&lt;/h2&gt;&lt;br /&gt;  &lt;p&gt;Según los resultados obtenidos, como podemos ver arriba, gana el caso 2.La diferencia con respecto al primero es mínima, pero esto es lógico debido a que se traba del mismo sistema aunque con diferentes sistemas operativos. Por lo que se puede deducir que Ubuntu es más eficiente que Windows Vista&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Donde más se notan estas diferencias es en cuanto a la CPU, que en Ubuntu puede operar hasta una 4.000 Operaciones más por milisegundo. En cuanto a Disco, es capaz de escribir hasta 1000 bloques más por milisegundo, es decir unos 500Kb más por ms. En cuanto a memoria, tarda más o menos igual, aunque claro está siempre gana Ubuntu, que tarda unos 20 segundos menos en todas las operacionesY por último en cuanto a Gráficos, Ubuntu se muestran una 7.24 fotos por segundo mientras que en Vista se muestran 7.16imagenes/seg. Esta diferencia es la más reducida,, aunque  vemos que también gana Ubuntu&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;En cuanto al último sistema, podemos ver con el BenchMark que es muy pobre comparado con la segunda Ejecución (Y es cierto). En cuanto a CPU se pueden hacer en torno a los 3000 cálculos por milisegundo mientras que el sistema con Ubuntu ronda por los 25.000 calculos por milisegundo.En cuanto a Disco vemos que tarda el triple en manejar su disco (de 327ms del sistema en Ubuntu a 865ms de este sistema).En memoria se puden escribir unos 1000Bloques/ms mientras que en el sistema con Ubuntu es casi el doble puesto que ronda los 2000Bloques/ms.Por último vemos que en cuanto a gráfica también es muy pobre porque es capaz de imprimir por pantalla unas 2.94Fotos/Segundo mientras que el de Ubuntu podía unas 7.24 Imagenes/seg es decir más del doble.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-3369324418827893575?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/3369324418827893575/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-6-diseno-y-evaluacion-de.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/3369324418827893575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/3369324418827893575'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-6-diseno-y-evaluacion-de.html' title='Práctica 6: Diseño y Evaluación de Configuraciones :: Realización de Un BenchMark'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-2361158605762379400</id><published>2009-06-17T02:10:00.000-07:00</published><updated>2009-06-17T02:21:50.070-07:00</updated><title type='text'>Práctica 5: Diseño y Evaluación de Configuraciones :: Mejora de Prestaciones</title><content type='html'>&lt;h2&gt;Mejorar las Prestaciones de un Equipo como Servidor&lt;/h2&gt;&lt;br /&gt;&lt;strong&gt;&lt;span&gt;Introducción:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;La necesidad de mejora del equipo en concreto surje por el hecho de querer convertirlo en un Servidor Web. La necesidad en concreto es mudar una página web de un servicio de hosting a un servidor propio, por motivos económicos. Se muda el servidor web, aunque se mantiene el servidor de base de datos en el servidor antiguo, por la complejidad que tenía la base de datos. En concreto se trata de una tienda online ( generada con Oscommerce, una plataforma OpenSource). Como factores influyentes hay que destacar que el servidor donde se quiere alojar es un ordenador con 4 años de antiguedad, al que se le quiere dar alguna utilidad&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;&lt;span&gt;Fases de Evaluación del Sistema Informático:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Comenzamos el proceso de mejora, haciendolo de una manera ordenada y siguiendo los pasos establecidos en el &lt;a href="http://geneura.ugr.es/%7Ejmerelo/DyEC/Tema1/DyEC-Tema1.html#fases"&gt;tema 1&lt;/a&gt; de la asignatura&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;1. Fijar objetivos y definicir el sistema base&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Nuestro principal objetivo es hacer nuestro servidor mucho más rapido, capaz de soportar gran cantidad de conexiones simultaneas y agilizar el tiempo de servir las páginas web alojadas en él. El sistema base:&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Procesador: AMD Semprom (tn) Procesosr 2800+ Frecuencia: 1602.05 MHz  L2 Caché: 256 KB Sistema Operativo: SO Ubuntu 6.10 (recordemos que el equipo tiene 4 años y hace 3 que no se usa Linux en él)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;2. Hacer una lista de los servicios que ofrece el sistema y sus posibles resultados:&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;El sistema dispone de servicio http, con php 5.2 y apache 2.0, se conecta a una base de datos externa alojada en la misma red local, el servidor en el que se aloja la base de datos está conectado mediante Wifi. Además nuestro servidor dispone de servidor de base de datos que está deshabilitado porque no se está usando&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;3. Seleccionar las métricas&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Las métricas que voy a usar son las siguientes:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Paginas servidas por segundo&lt;/li&gt;&lt;li&gt;Tiempo en responder una petición&lt;/li&gt;&lt;/ul&gt; No Obstante en el análisis iremos apuntando los fallos por petición para tener una idea de la fiabilidad de los datos tomados&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;4. Listar los parámetros que pueden afectar a las prestaciones&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Teniendo en cuenta el objetivo de la mejora los parametros que lo condicionan son diversos:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;A nivel hardware (memoria principal, CPU...) mejoras en la rapidez de la ejecución de los procesos, hace que sean más rapidas las peticiones porque tarda menos tiempo en procesar la petición&lt;/li&gt;&lt;li&gt;A nivel de Software ( un software más actual seguramente sepa aprovechar mejor los recursos )&lt;/li&gt;&lt;li&gt;Configuración de los parametros del servidor&lt;/li&gt;&lt;li&gt;Velocidad de conexión (sobre todo de subida)&lt;/li&gt;&lt;li&gt;Eficiencia del proceso encargado de gestionar la petición (código PHP)&lt;/li&gt;&lt;li&gt;Tiempo de acceso a la información&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;5. Factores a estudiar&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Teniendo en cuenta que el cambio se hace para evitar gastos, es lógico que nuestra mejora tenga que verse restringida al gasto de dinero, por lo tanto los factores que estudiaremos serán la actualización de software, mejora de la eficiencia del código PHP, configuración de PHP y tiempo de acceso a la información&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;6. Seleccionar las técnicas de evaluación:&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Se ejecutará un benchmark que simula una carga de trabajo indicada. El benchmark que más confianza me da y más facilidad de uso tiene es el incorporado por apache llamado apache benchmark&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;7. Seleccionar la carga de trabajo&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;La carga de trabajo que simularemos estará en el rango de una carga de 10 a 20 peticiones y de 1 a 10 peticiones simultaneas, en este rango he seleccionado varias magnitudes para poder hacer varias mediciones por lo tanto las unidades elegidas son:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;10 peticiones con ninguna concurrente&lt;/li&gt;&lt;li&gt;10 peticiones con ninguna concurrente&lt;/li&gt;&lt;li&gt;10 peticiones con ninguna concurrente&lt;/li&gt;&lt;li&gt;20 peticiones con ninguna concurrente&lt;/li&gt;&lt;li&gt;10 peticiones con 5 concurrentes&lt;/li&gt;&lt;li&gt;20 peticiones con 5 concurrentes&lt;/li&gt;&lt;li&gt;10 peticiones con 10 concurrente&lt;/li&gt;&lt;li&gt;20 peticiones con 10 concurrente&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;8. Diseñar los experimentos&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Los experimentos tratan de simular la carga (especificada en el punto anterior) mediante el benchmark de apache desde un servidor totalmente externo y con un ancho de banda bastante amplio, lo suficiente como para que no influya en las mediciones, por lo tanto, especificamente haremos las mediciones desde la IP 150.214.191.99 a la IP 88.3.30.12 que es nuestro servidor. Este sería un benchMark de los que produce Apache BenchMark&lt;/p&gt;&lt;br /&gt;&lt;table&gt;&lt;br /&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;This is ApacheBench, Version 2.3 &lt;$Revision: 655654 $&gt;&lt;br /&gt;Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/&lt;br /&gt;Licensed to The Apache Software Foundation, http://www.apache.org/&lt;br /&gt;&lt;br /&gt;Benchmarking 88.3.30.12 (be patient).....done&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Server Software:        Apache/2.2.11&lt;br /&gt;Server Hostname:        88.3.30.12&lt;br /&gt;Server Port:            80&lt;br /&gt;&lt;br /&gt;Document Path:          /oscommerce/catalog/&lt;br /&gt;Document Length:        29674 bytes&lt;br /&gt;&lt;br /&gt;Concurrency Level:      10&lt;br /&gt;Time taken for tests:   12.921 seconds&lt;br /&gt;Complete requests:      10&lt;br /&gt;Failed requests:        9&lt;br /&gt;  (Connect: 0, Receive: 0, Length: 9, Exceptions: 0)&lt;br /&gt;Write errors:           0&lt;br /&gt;Total transferred:      301486 bytes&lt;br /&gt;HTML transferred:       296576 bytes&lt;br /&gt;Requests per second:    0.77 [#/sec] (mean)&lt;br /&gt;Time per request:       12920.632 [ms] (mean)&lt;br /&gt;Time per request:       1292.063 [ms] (mean, across all concurrent requests)&lt;br /&gt;Transfer rate:          22.79 [Kbytes/sec] received&lt;br /&gt;&lt;br /&gt;Connection Times (ms)&lt;br /&gt;             min  mean[+/-sd] median   max&lt;br /&gt;Connect:       66   85  12.7     88     103&lt;br /&gt;Processing:  1859 9794 3446.8  11134   12847&lt;br /&gt;Waiting:      492 1643 605.9   1881    2382&lt;br /&gt;Total:       1925 9879 3455.5  11226   12921&lt;br /&gt;&lt;br /&gt;Percentage of the requests served within a certain time (ms)&lt;br /&gt; 50%  11226&lt;br /&gt; 66%  11436&lt;br /&gt; 75%  11785&lt;br /&gt; 80%  12118&lt;br /&gt; 90%  12921&lt;br /&gt; 95%  12921&lt;br /&gt; 98%  12921&lt;br /&gt; 99%  12921&lt;br /&gt;100%  12921 (longest request)&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;strong&gt;&lt;span&gt;9. Analizar e interpretar los datos&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Introducción al análisis&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;El análisis lo haremos como ya hemos especificado en los puntos anteriores. En concreto la orden que vamos usar desde el servidor externo es la siguiente "sudo ab -n10 -c5 http://88.3.30.12/oscommerce/oscommerce-2.2rc2a/catalog/" donde la opción -n es el número de peticiones y el -c el de peticiones simultaneas, por lo tanto el valor de -n oscilará entre 10 y 20 y el de -c entre 1, 5 y 10&lt;/p&gt;&lt;br /&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica5/images/Ubuntu6.10.png" /&gt;&lt;br /&gt;&lt;p&gt;Esta imagen corresponde al servidor en Ubuntu 6.10, viendo en un navegador la página web&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;Sistema Base&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Reunimos en una tabla la información obtenida&lt;/p&gt;&lt;br /&gt;&lt;table&gt;  &lt;thead&gt;&lt;br /&gt;  &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Concurrentes&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Totales&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones por segundo&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Tiempo en atender una petición (ms)&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Porcentaje de Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/thead&gt;  &lt;tbody&gt;&lt;br /&gt;  &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;9&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,17&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;5964,258&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;18&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,15&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;6559,390&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;9&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,22&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;4631,657&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;18&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,21&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;4660,543&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;7&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,22&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;4631,735&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;70&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;&lt;br /&gt; &lt;/tbody&gt;&lt;br /&gt;   &lt;tbody&gt;&lt;br /&gt;  &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;19&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,22&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;4584,670&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;95&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Media&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;15&lt;/th&gt;&lt;br /&gt;   &lt;td&gt;13,333&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,19833&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;5172,04&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;88,88&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt; &lt;/table&gt;&lt;br /&gt;&lt;strong&gt;Mejora Número 1&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;La primera mejora era bastante obvia pues el Sistema Operativo era bastante antiguo, actualizarlo implica que esté más evolucionado que trabaje con los recursos del sistema de una manera mucho más eficiente y además nos permite descargar paquetes pues para la versión de Ubuntu6.10 ya no existian paquetes. Asi que actualizamos a Kubuntu 9.04 como podemos ver en la imagen:&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica5/images/Kubuntu9.04.png" /&gt;&lt;br /&gt;  &lt;table&gt;  &lt;thead&gt;&lt;br /&gt;  &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Concurrentes&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Totales&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones por segundo&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Tiempo en atender una petición&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Porcentaje de Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/thead&gt;  &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,17&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;5848,434&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;18&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,16&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;6104,946&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;8&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,22&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;4630,695&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;80&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;19&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,22&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;4565,102&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;95&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;7&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,22&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;4627,724&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;70&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;18&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,22&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;4584,670&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Media&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;15&lt;/th&gt;&lt;br /&gt;   &lt;td&gt;11,83&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,2016&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;5060,2618&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;78,888&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;&lt;br /&gt; &lt;/tbody&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;strong&gt;Mejora Número 2&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Mudamos la base de datos, del sistema externo a nuestro sistema, por lo que habilitamos el servicio de Base de Datos. La base de datos cabe en nuestro sistema sin problemas y además no se espera un gran crecimiento de esta por lo que su traspaso va a hacer que mejore el sistema. La base de datos será mySQL.&lt;/p&gt;&lt;br /&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica5/images/Phpmyadmin.png" /&gt;&lt;br /&gt;  &lt;table&gt;  &lt;thead&gt;&lt;br /&gt;  &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Concurrentes&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Totales&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones por segundo&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Tiempo en atender una petición&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Porcentaje de Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/thead&gt;  &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;9&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,89&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1125,845&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;19&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,85&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1180,214&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;95&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;9&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,03&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;970,873&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;18&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,08&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;925,470&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;9&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,77&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1292,063&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;90&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;19&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,08&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;924,538&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;95&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Media&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;15&lt;/th&gt;&lt;br /&gt;   &lt;td&gt;13,833&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0,8083&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1069,833&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;92,22&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt; &lt;/table&gt;&lt;strong&gt;Mejora Número 3&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;En esta mejora usaremos sistemas de caché en el propio servidor. Este método funciona de la siguiente forma: Cuando se recibe una petición al servidor, se analizan todos los parametros que puedan influir en el resultado ( POST, GET, SESSION y por suspuesto la url en cuestión), se le otorga un código y se almacena en base de datos, de forma que si algún otro consulta la misma página no se tendrá que volver a generar porque ya estaba en la caché&lt;/p&gt;&lt;br /&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica5/images/cache.png" /&gt;&lt;br /&gt;&lt;table&gt;  &lt;thead&gt;&lt;br /&gt;  &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Concurrentes&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Totales&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones por segundo&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Tiempo en atender una petición&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Porcentaje de Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/thead&gt;  &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,04&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;965,808&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,04&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;962,493&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,15&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;872,265&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,19&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;842,917&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,16&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;864,598&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,03&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;973,382&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Media&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;15&lt;/th&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,1016&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;913,577&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt; &lt;/table&gt;&lt;strong&gt;Mejora número 4&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Ejecución en modo texto: Para evitar el uso de la CPU y que esté libre solo para la tarea que se le encomienda ( la de hacer de servidor) pondremos el sistema en modo texto.&lt;/p&gt;&lt;br /&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica5/images/modo_texto.jpg" /&gt;&lt;br /&gt;&lt;table&gt;  &lt;thead&gt;&lt;br /&gt;  &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Concurrentes&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Totales&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Peticiones por segundo&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Tiempo en atender una petición&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;Porcentaje de Peticiones Fallidas&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/thead&gt;  &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,03&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;968,043&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;1&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,04&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;965,567&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,16&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;858,432&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;5&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,18&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;845,525&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,12&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;896,534&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt;    &lt;tbody&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;td&gt;10&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;20&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,19&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;842,006&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Media&lt;/th&gt;&lt;br /&gt;   &lt;th&gt;15&lt;/th&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;1,12&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;896,0178&lt;/td&gt;&lt;br /&gt;   &lt;td&gt;0&lt;/td&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/tbody&gt; &lt;/table&gt;&lt;strong&gt;&lt;span&gt;10. Presentar los resultados&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;En esta sección voy a presentar los resultados obtenidos con las mejoras hechas al servidor, y con el que hemos llegado a obtener un aumento de las prestaciones de casi 6 veces más. Recuerdo los pasos seguidos:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;1. Cambio de SO&lt;/li&gt;&lt;li&gt;2. Cambiar localización de Base de Datos&lt;/li&gt;&lt;li&gt;3. Implantar un sistema de caché&lt;/li&gt;&lt;li&gt;4. Servidor en Modo Texto&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;/p&gt; &lt;table&gt;  &lt;thead&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;th colspan="3"&gt;Peticiones por Segundo&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Sistema&lt;/th&gt;&lt;th&gt;Media Pet/s&lt;/th&gt;&lt;th&gt;Descripción&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/thead&gt;  &lt;tbody&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Base&lt;/td&gt;&lt;td&gt;0,198&lt;/td&gt;&lt;td&gt;Este es el sistema base&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Mejora 1&lt;/td&gt;&lt;td&gt;0,202&lt;/td&gt;&lt;td&gt;Se cambia el SO de Ubuntu 6.10 a Kubuntu 9.04&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Mejora 2&lt;/td&gt;&lt;td&gt;0,808&lt;/td&gt;&lt;td&gt;Se cambia de localización la base de datos ( se pone en localhost)&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Mejora 3&lt;/td&gt;&lt;td&gt;1,102&lt;/td&gt;&lt;td&gt;Se construye un sistema de cachés para ahorrar tiempo de proceso&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Mejora 4&lt;/td&gt;&lt;td&gt;1,120&lt;/td&gt;&lt;td&gt;Se pone el servidor en modo texto, para evitar la ejecución de procesos innecesarios&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;/tbody&gt; &lt;/table&gt;&lt;br /&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica5/images/grafica1.png" /&gt;&lt;br /&gt;&lt;p&gt;Como podemos ver en el gráfico esta variable es mejor cuanto mayor sea, puntualizado esto vemos que la primera y segunda mejoras no difieren mucho entre si, pero aunque el cambio de sistema operativo, apenas aumente unas centesimas es un cambio obligado para poder pasar a hacer todos los demás. Por otro lado en el gráfico es más que evidente el grán cuello de botella de nuestro sistema es la base de datos, pues son los cambios que afectan a ella (2 y 3) los que más cambios producen, por útimo el cambio 4 apenas produce efecto, aun así produce una mejora (podemos mirarlo en la tabla)&lt;/p&gt; &lt;table&gt;  &lt;thead&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;th colspan="3"&gt;Tiempo en atender una petición (ms)&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;   &lt;tr&gt;&lt;br /&gt;   &lt;th&gt;Sistema&lt;/th&gt;&lt;th&gt;Media (ms)&lt;/th&gt;&lt;th&gt;Descripción&lt;/th&gt;&lt;br /&gt;  &lt;/tr&gt;  &lt;/thead&gt;  &lt;tbody&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Base&lt;/td&gt;&lt;td&gt;5172,042&lt;/td&gt;&lt;td&gt;Este es el sistema base&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Mejora 1&lt;/td&gt;&lt;td&gt;5060,262&lt;/td&gt;&lt;td&gt;Se cambia el SO de Ubuntu 6.10 a Kubuntu 9.04&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Mejora 2&lt;/td&gt;&lt;td&gt;1069,834&lt;/td&gt;&lt;td&gt;Se cambia de localización la base de datos ( se pone en localhost)&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Mejora 3&lt;/td&gt;&lt;td&gt;913,577&lt;/td&gt;&lt;td&gt;Se construye un sistema de cachés para ahorrar tiempo de proceso&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;br /&gt;  &lt;td&gt;Mejora 4&lt;/td&gt;&lt;td&gt;896,018&lt;/td&gt;&lt;td&gt;Se pone el servidor en modo texto, para evitar la ejecución de procesos innecesarios&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;  &lt;/tbody&gt; &lt;/table&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/%7Ejesse/Pruebas/Archivos/DEC/Practica5/images/grafica2.png" /&gt;&lt;br /&gt;&lt;p&gt;Esta variable, como observamos en la gráfica, es contraria a la anterior y es mejor cuanto menor sea. Viendo detenidamente el gráfico, podemos ver mejor la diferencia que supone la primera mejora con respecto al sistema base, además se siguen observando los cambio centrales, con la diferencia de que la mejora 3 no tiene tanto efecto en esta variable como en la anterior, esto se debe a que es capaz de generar una página en mas o menos el mismo tiempo pero es más concurrente por lo que podrá producir más páginas en el mismo tiempo&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-2361158605762379400?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/2361158605762379400/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-5-diseno-y-evaluacion-de.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/2361158605762379400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/2361158605762379400'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-5-diseno-y-evaluacion-de.html' title='Práctica 5: Diseño y Evaluación de Configuraciones :: Mejora de Prestaciones'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-6950546581160657176</id><published>2009-06-17T02:03:00.000-07:00</published><updated>2009-06-17T02:08:11.914-07:00</updated><title type='text'>Práctica 4: Diseño y Evaluación de Configuraciones :: Monitores</title><content type='html'>&lt;h2&gt;Monitor TaskInfo&lt;/h2&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Eleccion:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;En la práctica 2 usé El administrador de tareas de Windows pero este no guarda en archivos de texto por lo que tuve que salir a la busqueda de otros monitores, di con Systemometers que gráficamente está muy bien pero tampoco admite la opción de guardar en texto de forma que tuve que optar definitivamente por un monitor que me descargué en la práctica 2 pero que no llegué a usar: TaskInfo. Este monitor permite el guardado en varios formatos entre los que se incluye html por lo que para presentarlo más tarde en html este tipo de guardado viene Genial&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Introducción y elección de magnitudes:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Para realizar las mediciones he utilizado Windows Vista por lo que es muy lógico que los valores de la CPU esté muy por encima de la media, además, este sistema operativo tiende al lanzamiento de miles de aplicaciones al principio de iniciar la sesión por lo que una medición en plena apertura de la sesión puede tener mucha más carga que cualquier actividad que le demos más tarde, por lo que para hacer la medición base he optado por tomarla un poco despues de que el sistema se "calme" y todos los valores se reduzcan.&lt;/p&gt;&lt;br /&gt; &lt;p&gt;Antes de indicar las magnitudes que voy a utilizar, aclaro que en el guión especifica que como mucho se pueden elegir 5, asi que por no ser muy redundante escojo 4 medidas para analizar, para CPU escojo el % de uso de CPU, para la memoria uso el % de uso de memoria caché y para Disco uso Kb leyendose en ese momento y Kb escribiendose en ese momento, uso dos mágnitudes para el Disco porque voy a hacer diferentes cargas con el y si junto la lectura y la escritura no podríamos notar la diferencia&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Medición Base&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Como he dicho anteriormente voy a medir el sistema tras haber pasado un rato de comenzar el inicio, aunque no iniciaré ninguna otra aplicación tan solo esperaré a que todas las iniciales se hayan abierto, una vez se han abierto las cierro todas y espero a que el sistema se estabilice, &lt;strong&gt;En este momento el sistema tendrá los valores más bajos de toda esa ejecución del SO&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt; &lt;p&gt;Tras hacer todo lo anterior guardamos con TaskInfo que nos dá la siguiente tabla&lt;/p&gt;&lt;br /&gt;&lt;br /&gt; &lt;table cellspacing="0" cellpadding="3" border="1"&gt;&lt;br /&gt;   &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPU Clock MHz&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;942&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle Pri Threads&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;% CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;13,55%&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;86,45%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPUs Number&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Queue for CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;Processes&lt;/td&gt;&lt;td&gt;85&lt;/td&gt;&lt;td&gt;Threads&lt;/td&gt;&lt;td&gt;928&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Thread Sw/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.063&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;HW Ints/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.145&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Total Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.006.396&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Free Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.834.952&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Stand By KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.852.980&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Cache KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;241.228&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File cache peak KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;302.748&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Free Virt KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;5.009.524&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Committed KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.213.228&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Paged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;119.744&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;NonPaged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;107.844&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Max Swap KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.313.596&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Swap in Use KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;100.148&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Faults/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;258&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Ins KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Page Outs KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Reads/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;50&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Writes/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Client Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Client Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Srv Transmit KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Srv Receive KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;/tbody&gt;&lt;br /&gt; &lt;/table&gt;&lt;br /&gt; &lt;p&gt;Podemos ver exactamente el archivo que nos devuelve &lt;a href="TaskInfo/TiPanesbase.htm"&gt;en este archivo&lt;/a&gt;&lt;/p&gt;&lt;br /&gt; &lt;p&gt;La tabla anterior es la que nos da Task Info, ahora extraemos las medidas que hemos seleccionado y las mostramos en una gráfica:&lt;/p&gt;&lt;br /&gt; &lt;table class="def"&gt;&lt;tr&gt; &lt;th&gt;% Uso CPU&lt;/th&gt;&lt;td&gt;13,55%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Uso de Caché&lt;/th&gt;&lt;td&gt;241.228&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Lectura en Disco&lt;/th&gt;&lt;td&gt;2KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Escritura en Disco&lt;/th&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;br /&gt; &lt;/table&gt;&lt;br /&gt; &lt;strong&gt;Grafico&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Debido a que las gráficas de Kiviat necesitan variables que alternen entre mayor_mejor y menor_mejor y las variables que mido en esta práctica no cumplen esas reglas la gráfica de Kiviat no respetará esta norma, no obstante voy a representarla en una gráfica radial para poder observar mejor cada componente&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor2.PNG"/&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Carga 1:Lectura de Ficheros&lt;/span&gt;&lt;/strong&gt;&lt;br/&gt;&lt;br /&gt; &lt;strong&gt;Objetivos&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Muchas veces la unica carga que soporta nuestro sistema es la de un antivirus ejecutandose como unico programa. Esto sucede en los Scan programados que deja nuestro antivirus para cuando el sistema está inactivo o si lo dejamos por la noche haciendo el Scan para poder detectar algún virus. La acción del Scan del antivirus es recorrer todos los archivos de nuestro disco duro comparando con ciertos patrones de la base de datos del antivirus y haciendo varias comprobaciones sobre el archivo leido, por lo tanto, como objetivo nos fijamos en que aumentaremos en gran medida la Lectura de Disco, la Cpu y caché se verán afectadas en una medida leve y la escritura se quedará en 0&lt;/p&gt;&lt;br /&gt;&lt;br /&gt; &lt;strong&gt;Resultados&lt;/strong&gt;&lt;br /&gt; &lt;table cellspacing="0" cellpadding="3" border="1"&gt;&lt;br /&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPU Clock MHz&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.002&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle Pri Threads&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;% CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;50,95%&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;49,05%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPUs Number&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Queue for CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;Processes&lt;/td&gt;&lt;td&gt;85&lt;/td&gt;&lt;td&gt;Threads&lt;/td&gt;&lt;td&gt;887&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Thread Sw/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.561&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;HW Ints/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.284&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Total Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.006.396&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Free Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.822.792&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Stand By KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.871.712&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Cache KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;245.580&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File cache peak KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;302.748&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Free Virt KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;5.002.008&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Committed KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.220.744&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Paged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;119.960&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;NonPaged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;107.796&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Max Swap KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.313.596&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Swap in Use KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;100.088&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Faults/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.127&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Ins KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.498&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Page Outs KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;167&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Reads/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;110&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Writes/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Client Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Client Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Srv Transmit KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Srv Receive KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt; &lt;p&gt;El archivo con los resultados que ha generado TaskInfo lo podemos encontrar &lt;a href="TaskInfo/TiPanesScanVirus.htm"&gt;aqui&lt;/a&gt;&lt;/p&gt;&lt;br /&gt; &lt;p&gt;Los resultados que a nosotros nos interesan han quedado asi:&lt;/p&gt;&lt;br /&gt;  &lt;table class="def"&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Etiquetas&lt;/th&gt;&lt;th&gt;Estado Base&lt;/th&gt;&lt;th&gt;Estado Con Carga&lt;/th&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;% Uso CPU&lt;/th&gt;&lt;td&gt;13.5%&lt;/td&gt;&lt;td&gt;50,95%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Uso de Caché&lt;/th&gt;&lt;td&gt;241.228KB&lt;/td&gt;&lt;td&gt;245.580KB&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Lectura en Disco&lt;/th&gt;&lt;td&gt;2KB/s&lt;/td&gt;&lt;td&gt;167KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Escritura en Disco&lt;/th&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;br /&gt;  &lt;/table&gt;&lt;br /&gt; &lt;strong&gt;Gráfico&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Para poder ver una comparativa mucho más fiel y aclaradora voy a hacer 3 Gráficas, una para CPU, otra para Memoria y otra para Disco:&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor3_1.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor3_2.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor3_3.PNG"/&gt;&lt;br /&gt; &lt;strong&gt;Análisis&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Los resultados obtenidos cumplen los objetivos, como vemos la lectura no es intensa, es decir, utiliza una velocidad reducida pero esto se debe a que el antivirus debe hacer una comparativa y calculos sobre cada bloque de memoria y por tanto la velocidad que mantiene en la lectura se ve condicionada por ese fator, es por eso por lo que la CPU aumenta hasta el 50%, en cambio la caché no aumenta tanto porque utiliza un rango de bloques pequeño, el Scan de un antivirus utiliza sobre todo Disco y CPU para calculos y comparaticas con la BD del programa&lt;/p&gt;&lt;br /&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Carga 2:Apertura de un Programa&lt;/span&gt;&lt;/strong&gt;&lt;br/&gt;&lt;br /&gt; &lt;strong&gt;Objetivos&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Abrimos un programa grande para cargarlo en memoria principal, este comportamiento es el habitual de cualquier tipo de usuario, sobre todo de los sistemas de oficina donde uno de los programas que se abren son el Office. Nosotros vamos a usar NetBeans (es la versión con todos los extras), nuestro objetivo es aumentar en cierta medida la CPU (Esto es inevitable pues es quien ejecuta el programa), aumentar el uso de caché y aumentar la lectura de Disco (Pues el programa se encuentra grabado en disco y habrá que leerlo), la escritura permanecerá igual&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Resultados de TaskInfo&lt;/strong&gt;&lt;br /&gt; &lt;table cellspacing="0" cellpadding="3" border="1"&gt;&lt;br /&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPU Clock MHz&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.261&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle Pri Threads&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;% CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;93,81%&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;6,19%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPUs Number&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Queue for CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;Processes&lt;/td&gt;&lt;td&gt;91&lt;/td&gt;&lt;td&gt;Threads&lt;/td&gt;&lt;td&gt;943&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Thread Sw/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.961&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;HW Ints/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.330&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Total Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.006.396&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Free Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.675.320&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Stand By KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.723.292&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Cache KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;279.460&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File cache peak KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;302.748&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Free Virt KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;4.868.928&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Committed KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.353.824&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Paged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;121.084&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;NonPaged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;108.168&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Max Swap KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.313.596&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Swap in Use KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;100.920&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Faults/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;462&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Ins KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.315&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Page Outs KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;306&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;309&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;219&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Reads/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;326&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Writes/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;83&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Client Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Client Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Srv Transmit KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Srv Receive KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt; &lt;p&gt;El archivo con los resultados del programa lo podemos encontrar &lt;a href="TaskInfo/TiPanesAbroNetBeans.htm"&gt;aqui&lt;/a&gt;&lt;/p&gt;&lt;br /&gt; &lt;p&gt;Como siempre, construimos nuestra tabla&lt;/p&gt;&lt;br /&gt;   &lt;table class="def"&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Etiquetas&lt;/th&gt;&lt;th&gt;Estado Base&lt;/th&gt;&lt;th&gt;Estado Con Carga&lt;/th&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;% Uso CPU&lt;/th&gt;&lt;td&gt;13.5%&lt;/td&gt;&lt;td&gt;93,81%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Uso de Caché&lt;/th&gt;&lt;td&gt;241.228KB&lt;/td&gt;&lt;td&gt;279.460KB&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Lectura en Disco&lt;/th&gt;&lt;td&gt;2KB/s&lt;/td&gt;&lt;td&gt;309KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Escritura en Disco&lt;/th&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;br /&gt;  &lt;/table&gt;&lt;br /&gt; &lt;strong&gt;Gráficos&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Al igual que con la carga anterior, realizamos varios gráficos:&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor4_1.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor4_2.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor4_3.PNG"/&gt;&lt;br /&gt; &lt;strong&gt;Análisis&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Como vemos la lectura de disco es mucho más grande que con un Scan de un Antivirus, esto es lógico si pensamos que el antivirus está diseñado para trabajar en background intentando "hacer el mínimo ruido posible", es decir, intentando influir lo mínimo posible en el quehacer el usuario. En cambio aquí, se lee de forma mucho más rápida para poder abrir lo más pronto posible el programa porque el usuario lo necesita usar, por otro lado al ejecutarse el programa se necesitan hacer millones de cálculos y por lo tanto la CPU trabajará de forma superintensiva y por último es obvio que se usará bastante caché más pues el programa iniciado es un nuevo proceso y por lo tanto tiene su contexto que se necesita guardar en caché para poder usarse en tiempo de ejecución, al ser bastante grande el programa su caché va a ser proporcional y por eso consume lo que vemos en el gráfico. Por lo tanto el comportamiento es normal salvo por el grandisimo aumento de la cpu que está proxima al 100% y que induce a pensar que algo independiente de la carga en el sistema, está intercediendo&lt;/p&gt;&lt;br /&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Carga 3: Ejecución de calculo intensivo&lt;/span&gt;&lt;/strong&gt;&lt;br/&gt;&lt;br /&gt; &lt;strong&gt;Objetivos&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;En nuestra carrera muchas veces hemos tenido que dejar nuestro ordenador calculando de forma intensiva alguna práctica en la que tarde más de 1 minuto, en esos casos lo más seguro esque no influya el Disco y tan solo la caché y la CPU, para someter al sistema a esta carga lo he expuesto a un programa con una función recursiva en el que en cada llamada hace raices cuadradas, elevaciones, sumas, divisiones, multiplicaciones y además en su recursividad su arbol se exitiende exponencialmente hasta alcanzar una altura de 20 ampliando cada nodo en cada nivel a 4 descendientes asi que tendría 4^20 nodos y además de todo esto, ejecuto el mismo programa 3 veces. Teoricamente debe ascender la CPU hasta un nivel insospechado y la caché (al ser recursiva debe ir creando nuevas variables por cada llamada)&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Resultado de TaskInfo&lt;/strong&gt;&lt;br /&gt; &lt;table cellspacing="0" cellpadding="3" border="1"&gt;&lt;br /&gt;  &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPU Clock MHz&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.253&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle Pri Threads&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;% CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;100,00%&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPUs Number&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Queue for CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;10&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;Processes&lt;/td&gt;&lt;td&gt;93&lt;/td&gt;&lt;td&gt;Threads&lt;/td&gt;&lt;td&gt;959&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Thread Sw/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.319&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;HW Ints/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.182&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Total Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.006.396&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Free Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.589.056&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Stand By KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.638.504&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Cache KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;285.184&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File cache peak KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;302.748&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Free Virt KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;4.754.756&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Committed KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.467.996&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Paged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;119.872&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;NonPaged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;108.120&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Max Swap KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.313.596&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Swap in Use KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;101.864&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Faults/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;517&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Ins KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Page Outs KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;21&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Reads/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;111&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Writes/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Client Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Client Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Srv Transmit KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Srv Receive KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt; &lt;p&gt;El archivo que da TaskInfo lo podemos ver &lt;a href="TaskInfo/TiPanesRDesbordado.htm"&gt;aqui&lt;/a&gt;&lt;br /&gt;  &lt;p&gt;Como siempre, construimos nuestra tabla&lt;/p&gt;&lt;br /&gt;   &lt;table class="def"&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Etiquetas&lt;/th&gt;&lt;th&gt;Estado Base&lt;/th&gt;&lt;th&gt;Estado Con Carga&lt;/th&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;% Uso CPU&lt;/th&gt;&lt;td&gt;13.5%&lt;/td&gt;&lt;td&gt;100,00%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Uso de Caché&lt;/th&gt;&lt;td&gt;241.228KB&lt;/td&gt;&lt;td&gt;285.184KB&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Lectura en Disco&lt;/th&gt;&lt;td&gt;2KB/s&lt;/td&gt;&lt;td&gt;21KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Escritura en Disco&lt;/th&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;br /&gt;  &lt;/table&gt;&lt;br /&gt; &lt;strong&gt;Gráficos&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Al igual que con la carga anterior, realizamos varios gráficos:&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor5_1.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor5_2.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor5_3.PNG"/&gt;&lt;br /&gt; &lt;strong&gt;Análisis&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Vamos a analizar caso por caso, en caso de la CPU el cálculo intensivo le ha hecho entrar en sobrecarga y llegar al máximo de sus posibilidades relentizando el sistema entero en gran medida, este sistema no estaba preparado para este tipo de acciones o usos, a pesar de que el programa es bastante pesado el sistema donde ha sido ejecutado es bastante moderno y en teoria resiste estos cálculos (es más ha sido probado en XP y funciona mucho mejor) por lo tanto sospecho de la existencia de algo ejecutandose que no he contemplado (lo abordaré al final de la práctica). La caché, ha aumentado bastante (eso es muy lógico por los datos dados en objetivos) no obstante si lo comparamos con la carga de NetBeans es parecida, esto se debe a que NetBeans utiliza muchos recursos para el funcionamiento de todos módulos, y este programa los usa simplemente por ineficiencia. En cuanto a la lectura en Disco, como vemos es escasa comparado con las cargas anteriores porque el programa es muy pequeño y apenas ocupa espacio en disco&lt;/p&gt;&lt;br /&gt; &lt;br /&gt; &lt;strong&gt;&lt;span&gt;Prueba 4:Copiando Archivos&lt;/span&gt;&lt;/strong&gt;&lt;br/&gt;&lt;br /&gt; &lt;strong&gt;Objetivos&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;En la era en que corre todo sistema se ve sometido en algún momento a un uso de disco intensivo (Copiar peliculas, fotos, videos, canciones...) para ello he confeccionado esta carga, en ella copio varias peliculas de una carpeta a otra, para que sea un archivo grande he copiado tres peliculas que suman un total de 7 Gb, y además para asegurarme de que haya distancia en entre el lugar físico de ambas ubicaciones pego en otra partición, de esta forma se debería aumentar de forma muy considerable la lectura y escritura en disco, aunque ambas deberían ser aproximadas pues lo que se lee se escribe, por otro lado la cpu no debe de aumentar demasiado, y la caché seguramente si aumente por que tenemos que cargar en ella lo que vamos leyendo&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Salida de TaskInfo&lt;/strong&gt;&lt;br /&gt; &lt;table cellspacing="0" cellpadding="3" border="1"&gt;&lt;br /&gt;  &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPU Clock MHz&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.262&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle Pri Threads&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;% CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;92,26%&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;7,74%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPUs Number&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Queue for CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;Processes&lt;/td&gt;&lt;td&gt;86&lt;/td&gt;&lt;td&gt;Threads&lt;/td&gt;&lt;td&gt;904&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Thread Sw/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;9.790&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;HW Ints/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.546&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Total Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.006.396&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Free Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.553.412&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Stand By KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.680.008&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Cache KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;295.196&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File cache peak KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;302.748&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Free Virt KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;4.816.860&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Committed KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.405.892&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Paged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;128.920&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;NonPaged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;113.800&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Max Swap KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.313.596&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Swap in Use KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;107.596&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Faults/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;10.707&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Ins KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;11.797&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Page Outs KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;8.143&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;12.324&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;12.144&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Reads/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;193&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Writes/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;219&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Client Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Client Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Srv Transmit KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Srv Receive KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt; &lt;p&gt;El archivo que da TaskInfo lo podemos ver &lt;a href="TiPanesCopiandoPelis.htm"&gt;aqui&lt;/a&gt;&lt;br /&gt;  &lt;p&gt;Como siempre, construimos nuestra tabla&lt;/p&gt;&lt;br /&gt;   &lt;table class="def"&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Etiquetas&lt;/th&gt;&lt;th&gt;Estado Base&lt;/th&gt;&lt;th&gt;Estado Con Carga&lt;/th&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;% Uso CPU&lt;/th&gt;&lt;td&gt;13.5%&lt;/td&gt;&lt;td&gt;92,26%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Uso de Caché&lt;/th&gt;&lt;td&gt;241.228KB&lt;/td&gt;&lt;td&gt;295.196KB&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Lectura en Disco&lt;/th&gt;&lt;td&gt;2KB/s&lt;/td&gt;&lt;td&gt;12.324KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Escritura en Disco&lt;/th&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;td&gt;12.144KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;br /&gt;  &lt;/table&gt;&lt;br /&gt; &lt;strong&gt;Gráficos&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Al igual que con la carga anterior, realizamos varios gráficos:&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor6_1.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor6_2.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor6_3.PNG"/&gt;&lt;br /&gt; &lt;strong&gt;Análisis&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Cabe destacar en el análisis que a la hora de pronosticar el funcionamiento de la CPU este ha variado ligeramente y esque me esperaba que no aumentase tanto como lo ha hecho, aparte de los ya mencionados problemas de Vista con el consumo de cpu, he obviado el hecho de que la CPU puede estar calculando de forma intensiva direcciones de memoria, si el disco no esta defragmentado es muy posible que se produzca, y además está el hecho de que están en dos particiones diferentes por lo que se añaden más motivos al calculo de direcciones intensivo. Por lo demás es todo obvio y se ha cumplido de los objetivos, por lo que no requiere más explicación&lt;/p&gt;&lt;br /&gt; &lt;br /&gt; &lt;strong&gt;&lt;span&gt;Prueba 5:Multitud de Procesos ejecutandose Simultaneamente&lt;/span&gt;&lt;/strong&gt;&lt;br/&gt;&lt;br /&gt; &lt;strong&gt;Objetivos&lt;/strong&gt;&lt;br /&gt;  &lt;p&gt;El objetivo principal de esta carga es el aumento de la caché, por lo tanto, abrimos muchos procesos a la vez de forma que el cambio de contexto sea muy grande y además en caché necesitamos guardar por cada proceso un determinado espacio. Si ejecutamos todos los procesos(imagen inferior) deberiamos obtener una caché alta, cpu alta, pues está ejecutando procesos sin descanso uno tras otro, una lectura moderada alta, pues debe leer los archivos de todos los procesos que se están ejecutando y una escritura baja-nula, a no ser que algún proceso necesite escribir por alguna razón&lt;p&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor1.jpg"/&gt;&lt;br /&gt;  &lt;strong&gt;Salida de TaskInfo&lt;/strong&gt;&lt;br /&gt;  &lt;table cellspacing="0" cellpadding="3" border="1"&gt;&lt;br /&gt;  &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPU Clock MHz&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.259&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle Pri Threads&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1,95%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;% CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;98,05%&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;% Idle&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1,95%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;CPUs Number&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Queue for CPU&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;14&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;Processes&lt;/td&gt;&lt;td&gt;96&lt;/td&gt;&lt;td&gt;Threads&lt;/td&gt;&lt;td&gt;1.011&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Thread Sw/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;7.156&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;HW Ints/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;2.244&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Total Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.006.396&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Free Ph KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.360.056&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Stand By KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.390.844&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Cache KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;331.216&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File cache peak KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;332.692&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Free Virt KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;4.555.556&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Committed KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;1.667.196&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Paged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;126.448&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;NonPaged Pool KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;113.940&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Max Swap KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;3.313.596&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Swap in Use KB&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;108.188&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Faults/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;5.263&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Page Ins KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;995&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Page Outs KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;86&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;669&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;File Reads/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;117&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;File Writes/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;11&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Client Read KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Client Write KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;tr&gt;&lt;td&gt;&lt;nobr&gt;Srv Transmit KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;&lt;nobr&gt;Srv Receive KB/s&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;  &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt; &lt;p&gt;El archivo que da TaskInfo lo podemos ver &lt;a href="TiPanesCopiandoPelis.htm"&gt;aqui&lt;/a&gt;&lt;br /&gt;   &lt;p&gt;Como siempre, construimos nuestra tabla&lt;/p&gt;&lt;br /&gt;   &lt;table class="def"&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Etiquetas&lt;/th&gt;&lt;th&gt;Estado Base&lt;/th&gt;&lt;th&gt;Estado Con Carga&lt;/th&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;% Uso CPU&lt;/th&gt;&lt;td&gt;13.5%&lt;/td&gt;&lt;td&gt;98,05%&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Uso de Caché&lt;/th&gt;&lt;td&gt;241.228KB&lt;/td&gt;&lt;td&gt;331.216KB&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Lectura en Disco&lt;/th&gt;&lt;td&gt;2KB/s&lt;/td&gt;&lt;td&gt;669KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;tr&gt; &lt;th&gt;Escritura en Disco&lt;/th&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;td&gt;0KB/s&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;   &lt;br /&gt;  &lt;/table&gt;&lt;br /&gt; &lt;strong&gt;Gráficos&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Al igual que con la carga anterior, realizamos varios gráficos:&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor7_1.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor7_2.PNG"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica4/images/Monitor7_3.PNG"/&gt;&lt;br /&gt; &lt;strong&gt;Análisis&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Efectivamente como vemos en las gráficas se cumple lo dicho en los objetivos, la caché ha aumentado increiblemente, la CPU está muy cargada, la lectura de disco es alta y la escritura nula. Como se han cumplido las espectativas el análisis está implicito en los objetivos.&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Problemas Surgidos en las Cargas&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Dentro de cada análisis hemos podido observar que la CPU esta siempre bastante alta, incluso en un estado de reposo es del 13%, al hacer una exploración del sistema hemos visto que se trata del SO Windows Vista y por lo tanto es obvio que la CPU se mantenga alta hasta en reposo pero si observamos los análisis podemos deducir que hay tasas bastante altas de CPU incluso siendo Vista, lo que nos puede llevar a pensar que puede haber algún virus, spyware, malware... en el sistema y por lo tanto tendríamos que tratarlo&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Pequeña Aclaración&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Las escalas varían de una carga a otra por lo que no podemos hacer la compración de gráficas entre cargas a simple vista, hay que fijarse en la escala&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-6950546581160657176?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/6950546581160657176/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-4-diseno-y-evaluacion-de.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/6950546581160657176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/6950546581160657176'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-4-diseno-y-evaluacion-de.html' title='Práctica 4: Diseño y Evaluación de Configuraciones :: Monitores'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-5714103526719286570</id><published>2009-06-17T01:40:00.000-07:00</published><updated>2009-06-17T02:00:13.845-07:00</updated><title type='text'>Práctica 3: Diseño y Evaluación de Configuraciones :: Profiler</title><content type='html'>&lt;h2&gt;Profiler: NetBeans...Optimizando&lt;/h2&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Eleccion:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Voy a utilizar NetBeans porque a parte de ser Gratuito, Es de los pocos que ofrecen en el mismo IDE el profiler, ademas de ser muy completo y cómodo&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Introducción:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Ante todo, he intentado no recurrir al tópico C o C++ para hacer el profiler asi que de primera pensé en PHP, no obstante no tuve mucho exito con ese lenguaje pues NetBeans no permite hacer Profiler a PHP, abandoné esta posibilidad y opté por algunas prácticas que tenía en Java, pero usaban RMI y me vi incapaz de ejecutarlas con el entorno NetBeans, por último y incapaz de abandonar asi como asi mi ganas de ser original investigue la posibilidad de crear código para movil con NetBeans pero tampoco contemplaba la opción de crear profiles, asi que me vi destinado a crear mi propio código en Java (Como he dicho abandoné desde un principio la idea de coger mis prácticas de C y C++), asi que cree todo el código que voy a mostrar en la práctica, con la ventaja de que al crearlo lo hice con el objetivo de mejorar un código hasta el orden constante.&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Implementación&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;En principio el programa es bastante simple puesto que no es el objetivo de la práctica hacer un código muy pomposo sino entender y comprobar los profiler, asi que hice un programa en java que calcula muchas caracteristicas del número 29, cuadrado, raiz, 29^&lt;super&gt;29&lt;/super&gt;, fibonacci...&lt;/p&gt;&lt;br /&gt; &lt;h3&gt;Código: Clase Principal&lt;/h3&gt;&lt;br /&gt; &lt;div class="codigo"&gt;&lt;br /&gt;  &lt;div align="left" class="java"&gt;&lt;br /&gt;&lt;table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff"&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;  &lt;!-- start source code --&gt;&lt;br /&gt;   &lt;td nowrap="nowrap" valign="top" align="left"&gt;&lt;br /&gt;    &lt;code&gt;&lt;br /&gt;&lt;font color="#3f7f5f"&gt;/*&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;*&amp;nbsp;To&amp;nbsp;change&amp;nbsp;this&amp;nbsp;template,&amp;nbsp;choose&amp;nbsp;Tools&amp;nbsp;|&amp;nbsp;Templates&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;*&amp;nbsp;and&amp;nbsp;open&amp;nbsp;the&amp;nbsp;template&amp;nbsp;in&amp;nbsp;the&amp;nbsp;editor.&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;package&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;javaapplication2;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#3f5fbf"&gt;/**&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&amp;nbsp;&lt;/font&gt;&lt;font color="#7f9fbf"&gt;@author&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;Jesse&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;class&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;Main&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;/**&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&amp;nbsp;&lt;/font&gt;&lt;font color="#7f9fbf"&gt;@param&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;args&amp;nbsp;the&amp;nbsp;command&amp;nbsp;line&amp;nbsp;arguments&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;static&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;void&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;main&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;String&lt;/font&gt;&lt;font color="#000000"&gt;[]&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;args&lt;/font&gt;&lt;font color="#000000"&gt;)&amp;nbsp;{&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;Calculos&amp;nbsp;calc=&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;new&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;Calculos&lt;/font&gt;&lt;font color="#000000"&gt;()&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;calc.setnumber&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#990000"&gt;6&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;number=&lt;/font&gt;&lt;font color="#990000"&gt;29&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fibon=calc.fiboRecur&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;,cuad,ele;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;double&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;raiz,dia;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;System.out.println&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;El&amp;nbsp;fibonacci&amp;nbsp;de&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+number+&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;&amp;nbsp;es&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+fibon&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;cuad=calc.cuadrado&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;System.out.println&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;El&amp;nbsp;cuadrado&amp;nbsp;de&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+number+&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;&amp;nbsp;es&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+cuad&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;raiz=calc.raiz&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;System.out.println&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;La&amp;nbsp;Raiz&amp;nbsp;de&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+number+&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;&amp;nbsp;es&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+raiz&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;ele=calc.elevadoASiMismo&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;System.out.println&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;El&amp;nbsp;numero&amp;nbsp;elevado&amp;nbsp;a&amp;nbsp;si&amp;nbsp;mismo&amp;nbsp;de&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+number+&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;&amp;nbsp;es&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+ele&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;dia=calc.diagonalCuadrado&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;System.out.println&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;La&amp;nbsp;diagonal&amp;nbsp;del&amp;nbsp;triangulo&amp;nbsp;que&amp;nbsp;forman&amp;nbsp;dos&amp;nbsp;lados&amp;nbsp;de&amp;nbsp;longitud&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+number+&lt;/font&gt;&lt;font color="#2a00ff"&gt;&amp;#34;&amp;nbsp;es&amp;nbsp;&amp;#34;&lt;/font&gt;&lt;font color="#000000"&gt;+dia&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;/code&gt;&lt;br /&gt;    &lt;br /&gt;   &lt;/td&gt;&lt;br /&gt;  &lt;!-- end source code --&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- start Java2Html link --&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;    &lt;td align="right"&gt;&lt;br /&gt;&lt;br /&gt;    &lt;/td&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- end Java2Html link --&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;!-- =       END of automatically generated HTML code       = --&gt;&lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;/div&gt;&lt;br /&gt; &lt;h3&gt;Código: Clase Calculos&lt;/h3&gt;&lt;br /&gt; &lt;div class="codigo"&gt;&lt;br /&gt; &lt;div align="left" class="java"&gt;&lt;br /&gt;&lt;table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff"&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;  &lt;!-- start source code --&gt;&lt;br /&gt;   &lt;td nowrap="nowrap" valign="top" align="left"&gt;&lt;br /&gt;    &lt;code&gt;&lt;br /&gt;&lt;font color="#3f7f5f"&gt;/*&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;*&amp;nbsp;To&amp;nbsp;change&amp;nbsp;this&amp;nbsp;template,&amp;nbsp;choose&amp;nbsp;Tools&amp;nbsp;|&amp;nbsp;Templates&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;*&amp;nbsp;and&amp;nbsp;open&amp;nbsp;the&amp;nbsp;template&amp;nbsp;in&amp;nbsp;the&amp;nbsp;editor.&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;package&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;javaapplication2;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#3f5fbf"&gt;/**&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;*&amp;nbsp;&lt;/font&gt;&lt;font color="#7f9fbf"&gt;@author&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;Jesse&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f5fbf"&gt;*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;class&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;Calculos&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;number;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fibos&lt;/font&gt;&lt;font color="#000000"&gt;[]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;new&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;1000&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;ultimoCalculado=&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;Calculos&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;this&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;.number=number;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;Calculos&lt;/font&gt;&lt;font color="#000000"&gt;(){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;number=&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;void&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;setnumber&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;this&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;.number=number;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fiboRecur&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;//n=fibo(n-2)+fibo(n-1);&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero&amp;lt;&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fiboRecur&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero-&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;+fiboRecur&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero-&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;/*Esta&amp;nbsp;funcion&amp;nbsp;devuelve&amp;nbsp;el&amp;nbsp;cuadrado*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;cuadrado&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero*numero;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;/*Esta&amp;nbsp;funcion&amp;nbsp;devuleve&amp;nbsp;la&amp;nbsp;raiz&amp;nbsp;del&amp;nbsp;numero*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;double&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;raiz&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;Math.sqrt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;/*Esta&amp;nbsp;funcion&amp;nbsp;devuelve&amp;nbsp;el&amp;nbsp;numero&amp;nbsp;elevado&amp;nbsp;a&amp;nbsp;si&amp;nbsp;mismo*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;elevadoASiMismo&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;)&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;Math.pow&lt;/font&gt;&lt;font color="#000000"&gt;((&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;double&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;number,&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;double&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;/*Esta&amp;nbsp;funcion&amp;nbsp;devolveria&amp;nbsp;la&amp;nbsp;diagonal&amp;nbsp;del&amp;nbsp;triangulo&amp;nbsp;rectangulo&amp;nbsp;formado&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;*&amp;nbsp;por&amp;nbsp;dos&amp;nbsp;lados&amp;nbsp;de&amp;nbsp;la&amp;nbsp;misma&amp;nbsp;longitud:&amp;nbsp;number*/&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;double&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;diagonalCuadrado&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;number&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;Math.sqrt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;Math.pow&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;number,&amp;nbsp;&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;+Math.pow&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;number,&amp;nbsp;&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;/code&gt;&lt;br /&gt;    &lt;br /&gt;   &lt;/td&gt;&lt;br /&gt;  &lt;!-- end source code --&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- start Java2Html link --&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;    &lt;td align="right"&gt;&lt;br /&gt;&lt;br /&gt;    &lt;/td&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- end Java2Html link --&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;!-- =       END of automatically generated HTML code       = --&gt;&lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;/div&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Ejecución del Programa&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;div class="codigo"&gt;&lt;br /&gt; run:&lt;br/&gt;&lt;br /&gt;El fibonacci de 29 es 514229&lt;br/&gt;&lt;br /&gt;El cuadrado de 29 es 841&lt;br/&gt;&lt;br /&gt;La Raiz de 29 es 5.385164807134504&lt;br/&gt;&lt;br /&gt;El numero elevado a si mismo de 29 es 2147483647&lt;br/&gt;&lt;br /&gt;La diagonal del triangulo que forman dos lados de longitud 29 es 41.012193308819754&lt;br /&gt;&lt;br /&gt; &lt;/div&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Primer Profiler&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/profiler1.png" alt="profiler"/&gt;&lt;br /&gt; &lt;p&gt;&lt;strong&gt;Interpretamos el Profiler:&lt;/strong&gt; En la imagen podemos ver los tiempos que tarda cada función del programa, lo que más resalta a la vista el el cuello de botella que produce la función fibonacci, porque tarda ella sola lo que tarda todo el programa entero, las demás son todas de orden constante luego va a ser muy dificil optimizarlas por lo que vamos a centrarnos en fibonacci: Si todo el programa tarda 3190ms fibonacci tarda 3188ms luego está claro el porqué de centrarnos en esa función&lt;br /&gt; &lt;/p&gt;&lt;br /&gt; &lt;h3&gt;Función Fibonnaci&lt;/h3&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/profiler2.png" alt="profiler"/&gt;&lt;br /&gt; &lt;p&gt;Como bien podemos ver en la imagen la función de fibonacci que tenemos es Recursiva y la calculamos asi fibo(n)=fibo(n-2)+fibo(n-1) con caso base n=1 y n=0, si observamos bien ese código podemos deducir que se repiten calculos (los que esten del mismo color) por ejemplo para fibo(24) que se repite varias veces en el arbol, luego podríamos mejorarlo si guardamos los resultados en un vector...&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/arbolFiboRecur.png" alt="profiler"/&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Segundo Profiler&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;h3&gt;Codigo: Fibonacci Recursiva con Guardado en Vector&lt;/h3&gt;&lt;br /&gt; &lt;div class="codigo"&gt;&lt;br /&gt; &lt;div align="left" class="java"&gt;&lt;br /&gt;&lt;table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff"&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;  &lt;!-- start source code --&gt;&lt;br /&gt;   &lt;td nowrap="nowrap" valign="top" align="left"&gt;&lt;br /&gt;    &lt;code&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fiboRecurMejorado&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#3f7f5f"&gt;//n=fibo(n-2)+fibo(n-1);&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fi=&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero&amp;lt;&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;fi=numero;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&amp;nbsp;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;ultimoCalculado&amp;gt;=numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;fi=fibos&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;fi=fibos&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=fiboRecurMejorado&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero-&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;+fiboRecurMejorado&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero-&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;this&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;.ultimoCalculado=numero;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fi;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;/code&gt;&lt;br /&gt;    &lt;br /&gt;   &lt;/td&gt;&lt;br /&gt;  &lt;!-- end source code --&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- start Java2Html link --&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;    &lt;td align="right"&gt;&lt;br /&gt;&lt;br /&gt;    &lt;/td&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- end Java2Html link --&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;!-- =       END of automatically generated HTML code       = --&gt;&lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;/div&gt;&lt;br /&gt; &lt;h3&gt;Ejecucíon del profiler&lt;/h3&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/profiler3.png" alt="profiler"/&gt;&lt;br /&gt; &lt;h3&gt;Fibonacci en Concreto&lt;/h3&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/profiler4.png" alt="profiler"/&gt;&lt;br /&gt; &lt;p&gt;En el podemos ver como se ha reducido bastante el tiempo de ejecución de fibonacci, de 3188ms a 0,307, ¡Más de 1000 veces menos!, y las invocaciones han descendido hasta un máximo de 4, no obstante sigue siendo una parte importante del programa y se puede seguir optimizando:&lt;/p&gt;&lt;br /&gt; &lt;h3&gt;Tercer Profiler&lt;/h3&gt;&lt;br /&gt; &lt;p&gt;Podemos intentar mejorar el fibonacci cambiando radicalmente la estrategia en la recursividad, esto lo hacemos de la siguiente forma:&lt;/p&gt;&lt;br /&gt; &lt;ul&gt;&lt;br /&gt;  &lt;li&gt;Comenzamos en el siguiente sistema de ecuaciones:&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;&lt;img class="pantallazos" class="formula" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/fiboMat1.png"/&gt;&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;Este sistema se puede representar mediante su notación matricial como:&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;&lt;img class="pantallazos" class="formula" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/fiboMat2.png"/&gt;&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;Conociendo a f0 = 0 y f1 = 1, al aplicar la fórmula anterior n veces se obtiene:&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;&lt;img class="pantallazos" class="formula" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/fiboMat3.png"/&gt;&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;y más aún&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;&lt;img class="pantallazos" class="formula" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/fiboMat4.png"/&gt;&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;Pasamos a Implementarlo&lt;/li&gt;&lt;br /&gt; &lt;/ul&gt;&lt;br /&gt; &lt;h3&gt;Codigo: Fibonacci Matricial&lt;/h3&gt;&lt;br /&gt; &lt;div class="codigo"&gt;&lt;br /&gt; &lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;!-- = Java Sourcecode to HTML automatically converted code = --&gt;&lt;br /&gt;&lt;!-- =   Java2Html Converter 5.0 [2006-02-26] by Markus Gebhard  markus@jave.de   = --&gt;&lt;br /&gt;&lt;!-- =     Further information: http://www.java2html.de     = --&gt;&lt;br /&gt;&lt;div align="left" class="java"&gt;&lt;br /&gt;&lt;table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff"&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;  &lt;!-- start source code --&gt;&lt;br /&gt;   &lt;td nowrap="nowrap" valign="top" align="left"&gt;&lt;br /&gt;    &lt;code&gt;&lt;br /&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fiboMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrix&lt;/font&gt;&lt;font color="#000000"&gt;[]&lt;/font&gt;&lt;font color="#000000"&gt;=fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrix&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;[]&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;num&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num==&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;new&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;4&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num%&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;==&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;multiRaices4&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num/&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;,fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num/&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;multiRaices4&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;multiRaices4&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num/&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;,fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num/&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;font color="#000000"&gt;,fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;[]&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;multiRaices4&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;[]&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;m1,int&lt;/font&gt;&lt;font color="#000000"&gt;[]&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;m2&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;aux&lt;/font&gt;&lt;font color="#000000"&gt;[]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;new&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;4&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;aux&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=m1&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;*m2&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;+m1&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;*m2&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;aux&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=m1&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;*m2&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;+m1&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;*m2&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;aux&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=m1&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;*m2&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;+m1&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;*m2&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;aux&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=m1&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;*m2&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;+m1&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;*m2&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;aux;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;/code&gt;&lt;br /&gt;    &lt;br /&gt;   &lt;/td&gt;&lt;br /&gt;  &lt;!-- end source code --&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- start Java2Html link --&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;    &lt;td align="right"&gt;&lt;br /&gt;&lt;br /&gt;    &lt;/td&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- end Java2Html link --&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;!-- =       END of automatically generated HTML code       = --&gt;&lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;/div&gt;&lt;br /&gt; &lt;h3&gt;Profiler&lt;/h3&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/profiler5.png"/&gt;&lt;br /&gt; &lt;p&gt;Como vemos no hemos mejorado nada, es más hemos empeorado asi que tenemos dos opciones, o la descartamos o la analizamos al máximo para ver los posibles fallos: Opto por la segunda.&lt;br/&gt;Analizandola podemos ver una optimización bastante buena y es que en el codigo actual ejecutamos dos veces la funcion recursiva del mismo numero, pudiendo ejecutarla una vez y almacenarla en una variable, asi que lo hacemos:&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Cuarto Profiler&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;h3&gt;Codigo: Fibonacci Matricial Mejorado&lt;/h3&gt;&lt;br /&gt; &lt;div class="codigo"&gt;&lt;br /&gt; &lt;div align="left" class="java"&gt;&lt;br /&gt;&lt;table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff"&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;  &lt;!-- start source code --&gt;&lt;br /&gt;   &lt;td nowrap="nowrap" valign="top" align="left"&gt;&lt;br /&gt;    &lt;code&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fiboMatricialMej&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrix&lt;/font&gt;&lt;font color="#000000"&gt;[]&lt;/font&gt;&lt;font color="#000000"&gt;=fiboAuxMatricialMej&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrix&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;[]&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;fiboAuxMatricialMej&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;num&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num==&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;new&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;4&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF&lt;/font&gt;&lt;font color="#000000"&gt;[&lt;/font&gt;&lt;font color="#990000"&gt;3&lt;/font&gt;&lt;font color="#000000"&gt;]&lt;/font&gt;&lt;font color="#000000"&gt;=&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrixF;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;{&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrizaux&lt;/font&gt;&lt;font color="#000000"&gt;[]&lt;/font&gt;&lt;font color="#000000"&gt;=fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num/&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;matrizaux=multiRaices4&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;matrizaux,matrizaux&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;if&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;num%&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;==&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;matrizaux;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;else&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;multiRaices4&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#000000"&gt;matrizaux,fiboAuxMatricial&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;/code&gt;&lt;br /&gt;    &lt;br /&gt;   &lt;/td&gt;&lt;br /&gt;  &lt;!-- end source code --&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- start Java2Html link --&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;    &lt;td align="right"&gt;&lt;br /&gt;&lt;small&gt;&lt;br /&gt;&lt;a href="http://www.java2html.de" target="_blank"&gt;Java2html&lt;/a&gt;&lt;br /&gt;&lt;/small&gt;&lt;br /&gt;    &lt;/td&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- end Java2Html link --&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;!-- =       END of automatically generated HTML code       = --&gt;&lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;/div&gt;&lt;br /&gt;&lt;h3&gt;Profiler&lt;/h3&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/profiler6.png"/&gt;&lt;br /&gt; &lt;p&gt;Ahora si que mejoramos lo anterior, ya solo tardamos 0,259 ms, no obstante sigue siendo una parte importante de nuestro programa y puede ser optimizada, podemos probar a hacerla iterativa, porquqe de forma iterativa consume menos recursos y tal vez podamos optimizar la función...&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;Quinto Profiler&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;h3&gt;Código: Fibonacci Iterativo&lt;/h3&gt;&lt;br /&gt; &lt;div class="codigo"&gt;&lt;br /&gt;  &lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;!-- = Java Sourcecode to HTML automatically converted code = --&gt;&lt;br /&gt;&lt;!-- =   Java2Html Converter 5.0 [2006-02-26] by Markus Gebhard  markus@jave.de   = --&gt;&lt;br /&gt;&lt;!-- =     Further information: http://www.java2html.de     = --&gt;&lt;br /&gt;&lt;div align="left" class="java"&gt;&lt;br /&gt;&lt;table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff"&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;  &lt;!-- start source code --&gt;&lt;br /&gt;   &lt;td nowrap="nowrap" valign="top" align="left"&gt;&lt;br /&gt;    &lt;code&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fibo&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;devuelto=&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;,aux1=&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;,aux2=&lt;/font&gt;&lt;font color="#990000"&gt;0&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;for&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;i=&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;;i&amp;lt;numero;i++&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;devuelto=aux1+aux2;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;aux2=aux1;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;aux1=devuelto;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;devuelto;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;/code&gt;&lt;br /&gt;    &lt;br /&gt;   &lt;/td&gt;&lt;br /&gt;  &lt;!-- end source code --&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- start Java2Html link --&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;    &lt;td align="right"&gt;&lt;br /&gt;&lt;br /&gt;    &lt;/td&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- end Java2Html link --&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;!-- =       END of automatically generated HTML code       = --&gt;&lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;/div&gt;&lt;br /&gt;&lt;h3&gt;Profiler&lt;/h3&gt;&lt;br /&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/profiler7.png"/&gt;&lt;br /&gt;&lt;p&gt;De forma completamente inesperada el fibonacci iterativo arrasa con todo y tarda 0,003ms menos incluso que un sqrt, pow e incluso la inicialización de la clase, tal vez mi ordenador "digiera" mejor las sumas iterativas que los cuadrados y raices.&lt;br/&gt;Podemos seguir intentado mejorarla, asi que vamos a proceder a hacer el fibonacci de orden constante que aunque en esta situación seguro que no desbanca al iterativo( porque se usan raices y cuadrados) en numeros de orden muy superior, lo desbancará seguro:&lt;/p&gt;&lt;br /&gt;&lt;strong&gt;&lt;span&gt;Sexto Profiler&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;h3&gt;Código: Fibonacci Constante&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;!-- = Java Sourcecode to HTML automatically converted code = --&gt;&lt;br /&gt;&lt;!-- =   Java2Html Converter 5.0 [2006-02-26] by Markus Gebhard  markus@jave.de   = --&gt;&lt;br /&gt;&lt;!-- =     Further information: http://www.java2html.de     = --&gt;&lt;br /&gt;&lt;div align="left" class="java"&gt;&lt;br /&gt;&lt;table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff"&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;  &lt;!-- start source code --&gt;&lt;br /&gt;   &lt;td nowrap="nowrap" valign="top" align="left"&gt;&lt;br /&gt;    &lt;code&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;public&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;fiboConst&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;numero&lt;/font&gt;&lt;font color="#000000"&gt;){&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;double&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;raiz5=Math.sqrt&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#990000"&gt;5&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;return&amp;nbsp;&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#7f0055"&gt;&lt;b&gt;int&lt;/b&gt;&lt;/font&gt;&lt;font color="#000000"&gt;)((&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;/raiz5&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;*Math.pow&lt;/font&gt;&lt;font color="#000000"&gt;(((&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;+raiz5&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;/&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;,numero&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;-&lt;/font&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;/raiz5&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;*Math.pow&lt;/font&gt;&lt;font color="#000000"&gt;(((&lt;/font&gt;&lt;font color="#990000"&gt;1&lt;/font&gt;&lt;font color="#000000"&gt;-raiz5&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;/&lt;/font&gt;&lt;font color="#990000"&gt;2&lt;/font&gt;&lt;font color="#000000"&gt;)&lt;/font&gt;&lt;font color="#000000"&gt;,numero&lt;/font&gt;&lt;font color="#000000"&gt;))&lt;/font&gt;&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#000000"&gt;}&lt;/font&gt;&lt;/code&gt;&lt;br /&gt;    &lt;br /&gt;   &lt;/td&gt;&lt;br /&gt;  &lt;!-- end source code --&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- start Java2Html link --&gt;&lt;br /&gt;   &lt;tr&gt;&lt;br /&gt;    &lt;td align="right"&gt;&lt;br /&gt;&lt;br /&gt;    &lt;/td&gt;&lt;br /&gt;   &lt;/tr&gt;&lt;br /&gt;  &lt;!-- end Java2Html link --&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;!-- =       END of automatically generated HTML code       = --&gt;&lt;br /&gt;&lt;!-- ======================================================== --&gt;&lt;br /&gt;&lt;h3&gt;Profiler&lt;/h3&gt;&lt;br /&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/profiler8.png"&gt;&lt;br /&gt;&lt;p&gt;Muy buen resultado: 0,96ms. Como vemos es peor que el anterior pero usando la proporción aurea podemos conseguir el orden constante y tardar 0,096ms (o un poquito mas) para cualquier número, la unica formula que hay que aplicar es esta:&lt;/p&gt;&lt;br /&gt;&lt;img class="pantallazos" class="formula" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica3/images/const.png"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-5714103526719286570?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/5714103526719286570/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-3-diseno-y-evaluacion-de.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/5714103526719286570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/5714103526719286570'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-3-diseno-y-evaluacion-de.html' title='Práctica 3: Diseño y Evaluación de Configuraciones :: Profiler'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-960274991583052314</id><published>2009-06-17T01:03:00.000-07:00</published><updated>2009-06-17T01:33:21.275-07:00</updated><title type='text'>Práctica 2: Diseño y Evaluación de Configuraciones :: Monitorización</title><content type='html'>&lt;h2&gt;Monitorizacion&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;    &lt;strong&gt;&lt;span&gt;Monitor: TaskManager SO:Windows Vista&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt; &lt;h2&gt;Eleccion:&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Voy a utilizar este monitor porque me parece adecuado utilizar los propios mecanismos que ya trae el sistema operativo, pues intuitivamente si son los del propio producto deberian ser los mas fiables, además voy a empezar por este monitor para poder luego usar otro y ver las diferencias y similitudes&lt;/p&gt;&lt;br /&gt; &lt;h2&gt;Configuración:&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Realmente la configuración del propio administrador de tareas es tremendamente facil: Instalar el Sistema Operativo, en este caso Windows Vista. Una vez instalado el sistema operativo para poder acceder al administrador de tareas debemos pulsar Ctrl-Alt-Spr y en SO como windows XP saldrá directamente, en cambio en Vista requiere de un paso intermedio en una pantalla azul, aunque también podremos acceder a el pulsando en la barra de inicio a la derecha con el boton derecho y seleccionado "Administrador de tareas"&lt;/p&gt;&lt;br /&gt; &lt;ul&gt;&lt;br /&gt;  &lt;li&gt;Pulsamos Ctrl-Alt-Spr (Windows Vista)&lt;br /&gt;   &lt;ul&gt;&lt;br /&gt;    &lt;li&gt;&lt;strong&gt;Aparecerá la siguiente Pantalla&lt;/strong&gt;&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;&lt;strong&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista01.png" alt="Pantalla Intermedia"/&gt;&lt;/strong&gt;&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Si luego pulsamos en "Start Task Manager" o "Administrador de Tareas" nos aparecerá:&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista02.png" alt="Administrador de Tareas"/&gt;&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Por último para ver la monitorizacion de CPU, Memoria y Red deberemos pulsar en las pestañas correspondientes:&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista03.png" alt="Pestañas para monitorizar"/&gt;&lt;/li&gt;&lt;br /&gt;  &lt;br /&gt;   &lt;/ul&gt;&lt;br /&gt;  &lt;/li&gt;&lt;br /&gt; &lt;/ul&gt;&lt;br /&gt; &lt;h2&gt;Interpretación:&lt;/h2&gt;&lt;br /&gt; &lt;strong&gt;Monitor de CPU&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista04.png" alt="monitor de CPU"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista07.png" alt="monitor de CPU Trabajando Duro"/&gt;&lt;br /&gt; &lt;p&gt;&lt;strong&gt;Interpretamos las gráficas:&lt;/strong&gt; En primer lugar podemos ver el una medida total de la utilización de la CPU (sería una medida conjunta de las dos CPUs de mi ordenador), Luego en cada grafica podemos ver un historial de utilización de la CPU1 en forma gráfica, el segundo gráfico representa la actividad de la CPU2.&lt;br /&gt; Para ver el uso de la CPU primero he cerrado todas las aplicaciones dejando a las CPUs en un estado relativamente relajado, más tarde he abierto un reproductor de música, Firefox y IE (Imagen CPU 2), como vemos las CPUs llegan un momento a estar ambas al 100% (Esto es un problema) no obstante esto son picos que bajan en cuanto se abren todas las aplicaciones&lt;br /&gt; &lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Monitor de Memoria&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista05.png" alt="monitor de Memoria"/&gt;&lt;br /&gt; &lt;p&gt;&lt;strong&gt;Interpretamos las gráficas:&lt;/strong&gt; En esta gráfica podemos ver el uso de la memoria que estamos haciendo de forma gráfica y de forma numerica, para ver el comportamiento he ido cerrando progresivamente casi todas las aplicaciones que tenia abiertas en el sistema y como vemos progresivamente ha ido disminuyendo la memoria usada. Por otro lado podemos ver la parte númerica, que sería el estado actual de una forma más detallada, pudiendo ver la total que sería la suma de la páginada y la no paginada (En caso de "Memoria del Kernel" y por otro lado vemos la memoria física donde podemos ver la total, la que hay en caché y la que realmente esta disponible. Por último en el apartado sistema podemos observar variables relativas al numero de procesos abiertos&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Monitor de Red&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista06.png" alt="monitor de Red"/&gt;&lt;br /&gt; &lt;p&gt;&lt;strong&gt;Interpretamos las gráficas:&lt;/strong&gt; Esta gráfica desvela mi actividad mientras navego por internet, en primer lugar podemos ver picos muy altos porque me he bajado 10 pdfs a la vez, luego, más tarde he hecho pequeñas consultas cada cierto tiempo, que sería la actividad cotidiana&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Más Detallado&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Si pulsamos en el botón "monitor de recursos" como administrador TaskManager permite observar de una manera más detallada el uso de Memoria, CPU y Red.&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista08.png" alt="monitor de recursos"/&gt;&lt;br /&gt; &lt;p&gt;Como vemos ofrece muchisima más información sobre el estado de nuestro PC, viendo de forma individual todos los procesos y la cantidad que usa de CPU y de memoria cada proceso, además muestra también los procesos que usan red y la cantidad de bits que usan por minuto (Envio, Recepción y Total). Vamos a hacer una prueba viendo el resultado en este monitor, parapoder ver el máximo de variabilidad voy a ver un video por Youtube asi aumentamos CPU, red y memoria, el resultado es el siguiente:&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista09.png" alt="bajando video de youtube"/&gt;&lt;br /&gt; &lt;p&gt;Esta claro que lo más se usa en el ejemplo es Red, pero eso no quita que también surjan picos en las gráficas de la memoria y de la CPU, estos picos se suelen dar al principio de la aplicación debido a que tiene que cargarla ... En el estado actual se sigue descargando el video pero en cuanto a CPU y memoria se ha estabilizado&lt;/p&gt;&lt;br /&gt; &lt;h2&gt;Problemas&lt;/h2&gt;&lt;br /&gt;  &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorVista10.png" alt="cpu y memoria en estado normal"/&gt;&lt;br /&gt; &lt;p&gt;Está claro que el principal problema de este sistema en este momento es el SO, pues el solo se consume cerca de la mitad de la CPU disponible y mantiene el consumo de memoria altisimo, todo el mundo conoce esta "cualidad" de Vista y ahora la hemos vuelto a comprobar (En esta imagen vemos el estado de la CPU y Memoria sin usar ninguna aplicación extra)&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--Segundo Monitor en Linux --&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;strong&gt;&lt;span&gt;Monitor:System Monitor SO:Ubuntu 8.10&lt;/span&gt;&lt;br/&gt;&lt;/strong&gt;&lt;br /&gt; &lt;h2&gt;Eleccion:&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Este monitor de sistema es bastante sencillo y acorde al entorno gráfico de Ubuntu, se adapta muy bien al SO y da la información justa y necesaria para tener controlado nuestro PC, es cierto que podría dar más información en texto sobre CPU, Memoria... pero considero que la información numérica masiva no nos hace crearnos una idea intuitiva del estado de nuestro sistema, una gráfica, por contra, en menos espacio nos da una idea muchisimo más fiable de nuestro sistema (pues en una gráfica el factor más importante es la historia).&lt;br /&gt;Por todo eso y por la gran sencillez del uso y configuración de este monitor, lo elijo&lt;/p&gt;&lt;br /&gt; &lt;h2&gt;Configuración:&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Realmente la configuración de este monitor es tremendamente facil, casi tan facil como el administrador de tareas de Windows. Normalmente este monitor esta instalado en el sistema, no obstante, si no lo estuviera podemos instalarlo de varias formas:&lt;/p&gt;&lt;br /&gt; &lt;ul&gt;&lt;br /&gt;  &lt;li&gt;Podemos instalarlo mediante un terminal:&lt;br /&gt;   &lt;ul&gt;&lt;br /&gt;    &lt;li&gt;&lt;strong&gt;Introducimos el siguiente comando&lt;/strong&gt;&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;&lt;strong&gt;sudo apt-get install gnome-system-monitor&lt;/strong&gt;&lt;/li&gt;  &lt;br /&gt;   &lt;/ul&gt;&lt;br /&gt;  &lt;/li&gt;&lt;br /&gt;  &lt;li&gt;Tambien podemos instalarlo desde Synaptic:&lt;br /&gt;   &lt;ul&gt;&lt;br /&gt;    &lt;li&gt;&lt;strong&gt;Abrimos Synaptic y seleccionamos el siguiente paquete:&lt;/strong&gt;&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;&lt;strong&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu01.png" alt="Pantalla Synaptic"/&gt;&lt;/strong&gt;&lt;/li&gt;&lt;br /&gt;   &lt;/ul&gt;&lt;br /&gt;  &lt;/li&gt;&lt;br /&gt;  &lt;li&gt;Y por último también podemos instalarlo con "Añadir programa" que es la que considero más facil&lt;br /&gt;   &lt;ul&gt;&lt;br /&gt;    &lt;li&gt;&lt;strong&gt;Abrimos Synaptic y seleccionamos el siguiente paquete:&lt;/strong&gt;&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;&lt;strong&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu02.png" alt="Pantalla Añadir y Quitar Programas"/&gt;&lt;/strong&gt;&lt;/li&gt;&lt;br /&gt;   &lt;/ul&gt;&lt;br /&gt;  &lt;/li&gt;&lt;br /&gt; &lt;/ul&gt;&lt;br /&gt; &lt;h2&gt;Interpretación:&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Vamos a ver el aspecto general de este monitor y a continuación vamos a estudiar parte por parte aplicando diferentes procedimientos para ver la evolución del sistema:&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu03.png" alt="Pantalla general del Monitor"/&gt;&lt;br /&gt; &lt;strong&gt;Monitor de CPU&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu04.png" alt="monitor de CPU  Trabajando Duro"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu05.png" alt="monitor de CPU"/&gt;&lt;br /&gt; &lt;p&gt;&lt;strong&gt;Interpretamos las gráficas:&lt;/strong&gt; Asi se verían las gráficas de las CPUs de nuestro PC con Ubuntu, en esta gráfica se representan todas las CPUs en la misma gráfica pero con diferente color para que podamos compararlas mejor.&lt;br /&gt;En la primera imagen podemos ver las CPUs mientras que trabajo con Gimp, Sistema de Archivos, Terminal, Visor de Imagenes, Firefox, amsn, Gestor de Paquetes... (Si vemos la gráfica vemos como las dos CPUs estan al 50%) Más tarde podemos ver en la gráfica segunda como he ido cerrando ventanas hasta que he dejado solo en monitor del sistema, las CPUs han reducido su actividad de forma gradual hasta llegar a 20% aproximadamente cada una&lt;br /&gt; &lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Monitor de Memoria&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu06.png" alt="monitor de Memoria"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu07.png" alt="monitor de Memoria"/&gt;&lt;br /&gt; &lt;p&gt;&lt;strong&gt;Interpretamos las gráficas:&lt;/strong&gt; En estas gráficas vemos la evolución de la memoria, vamos a hacer el mismo procedimiento que con la anterior, es decir en primer lugar vemos el monitor con bastante carga de aplicaciónes y trabajos y en la segunda con solo el SO. Como vemos en primer logar la memoria esta al 27.9%  mientras que en el segundo se ve como ha ido descendiendo la memoria hasta llegar a 12.6%, la memoria de intercambio no ha hecho falta tocarla&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Monitor de Red&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu08.png" alt="monitor de Memoria"/&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu09.png" alt="monitor de Memoria"/&gt;&lt;br /&gt; &lt;p&gt;&lt;strong&gt;Interpretamos las gráficas:&lt;/strong&gt; En esta gráfica observamos la evolución de la red, en él podemos ver subidas y bajadas, es decir, recepción y emisón. En la primera imagen muestro una actividad relajada, navegando por páginas web sin mucha carga y consultando ciertas URL la actividad es normal y llega a unos __ de subida y ___ de bajada, en cambio en la segunda ponemos el PC a trabajar mediante una actividad mucho más intesa descargando videos de youtube y descargando correo, alcanzando ___ y ___ de subida y bajada respectivamente&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Más Detallado&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;Este monitor también nos permite ver de forma detallada el consumo de cada proceso del sistema al igual que lo permite Windows con su TaskManager&lt;/p&gt;&lt;br /&gt;&lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/imagenUbuntu10.png" alt="Más info"/&gt;&lt;br /&gt; &lt;h2&gt;Problemas y Valoración del Monitor&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Comparado con el anterior ejemplo de Vista la verdad esque es dificil encontrar problemas y optimizaciónes pues se reduce muchismo el consumo de memoria y CPU ademas de que distribuye la carga de forma homogenea en las CPUs y no como hacia Vista que tenia la CPU1 muy cargada mientras que la segunda quedaba muy ligera, ademas en  Vista a maxima cargas ambas CPus llegan a 100% mientras que en Ubuntu llegan a 50% como muchisimo.&lt;br /&gt;En cuanto al monitor, da más opciones que el de Windows pudiendo decidir el intervalo de toma de muestra, poniendo los segundo necesarios.&lt;/p&gt;&lt;br /&gt;    &lt;strong&gt;&lt;span&gt;Monitor:Task Manager SO:Windows XP En Otro Equipo&lt;/span&gt;&lt;br/&gt;&lt;/strong&gt;&lt;br /&gt; &lt;h2&gt;Eleccion:&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Voy a comparar el mismo monitor con otro Equipo en Windows XP, el equipo en concreto es muy antiguo y esta bastante lleno de virus, elijo este monitor para comparar entre Windows Vista de un equipo con apenas una semana de vida y otro con 5 años y veremos que consume menos el antiguo que el nuevo&lt;/p&gt;&lt;br /&gt; &lt;h2&gt;Configuración:&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Como es el mismo monitor que en el primer ejemplo me abstengo de redundancias&lt;/p&gt;&lt;br /&gt; &lt;h2&gt;Interpretaciones:&lt;/h2&gt;&lt;br /&gt; &lt;strong&gt;Monitorización de CPU&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorXP01.png"&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorXP02.png"&gt;&lt;br /&gt; &lt;p&gt;Interpretamos: En la primera imagen vemos como se inicia el computador, es bastante lento por eso se pueden ver muchos picos, en el segundo ejemplo intento estar un rato con una actividad bajisima sin tocar el ordenador y sin ninguna aplicación abierta, vemos como la media ronda al 10% ( Si nos acordamos de vista la media era el 47% teniendo en cuenta a los dos procesadores).&lt;/p&gt;&lt;br /&gt; &lt;strong&gt;Monitorización de Memoria&lt;/strong&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorXP03.png"&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorXP04.png"&gt;&lt;br /&gt; &lt;p&gt;Interpretamos: Volvemos a hacer las mismas actividades pero ahora nos fijamos en la memoria, en la primera foto (se está iniciando el ordenador) vemos como la memoria va subiendo (baja en un momento determinado porque he cerrado el msn que se abrio al iniciar sesión), en el segundo ejemplo (intentaba estabilizar el equipo con el minimo uso) vemos que la memoria esta estable totalmente.&lt;/p&gt;&lt;br /&gt; &lt;img class="pantallazos" src="http://etsiit.ugr.es/~jesse/Pruebas/Archivos/DEC/Practica2/images/monitorXP05.png"&gt;&lt;br /&gt; &lt;p&gt;Interpretamos: Para comprobar la red he navegado por la página web de la UGR y más tarde por google, esto encaja con los pico pequeños, más tarde he abierto un video de youtube, es entonces cuando ha subido de forma intensa y más tarde ha caido, el video se ha cargado.&lt;/p&gt;&lt;br /&gt; &lt;h2&gt;Conclusión:&lt;/h2&gt;&lt;br /&gt; &lt;p&gt;Este sistema es bastante antiguo, solo tiene una CPU pero nos sirve para darnos cuenta de que Vista por si solo consume más que un ordenador infestado de virus y con muchos años a su espalda, el monitor TaskManager nos confirma estas conclusiones&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-960274991583052314?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/960274991583052314/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-2-diseno-y-evaluacion-de.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/960274991583052314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/960274991583052314'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-2-diseno-y-evaluacion-de.html' title='Práctica 2: Diseño y Evaluación de Configuraciones :: Monitorización'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-1887656876308888442</id><published>2009-06-17T01:00:00.000-07:00</published><updated>2009-06-17T01:03:14.502-07:00</updated><title type='text'>Práctica 1: Diseño y Evaluación de Configuraciones</title><content type='html'>&lt;div id="cuerpo"&gt;&lt;br /&gt;    &lt;h2&gt;Enlaces de Universidades, Revistas, Foros, Blogs, Empresas y Libros&lt;/h2&gt;&lt;br /&gt; &lt;!-- Enlace número 1--&gt;&lt;br /&gt;    &lt;strong&gt;&lt;span&gt;1&lt;/span&gt;&lt;a href="http://cms.ual.es/UAL/universidad/departamentos/lyc/docencia/asignaturas/asignatura/index.htm?id=6378&amp;idTit=4100&amp;idAss=41002201&amp;idCaracter=B"&gt;Universidad de Almería: Configuración y Explotación de Sistemas Informáticos&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;  &lt;div class="puntuacion" &gt;&lt;span&gt;Puntuación&lt;/span&gt;&lt;span class="puntsel"&gt;8&lt;/span&gt;&lt;/div&gt;&lt;br /&gt; &lt;p&gt;Esta página está dedicada a la asignatura en la universidad de almería, en la universidad de Almería el nombre de la asignatura varía ligeramente (Configuración y Explotación de Sistemas Informáticos) de DEC a CESI, en la página aparece el temario de la asignatura, el profesorado y la distribución de créditos, además una aparece complementada toda esta información con los datos relativos a la asignaturas tales como Código, Carácter, Ciclo...&lt;/p&gt;&lt;br /&gt;&lt;br /&gt; &lt;!-- Enlace número 2--&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;2&lt;/span&gt;&lt;a href="http://www.linuxformat.co.uk/modules.php?op=modload&amp;name=NewArchives"&gt;Linuxformat: Linux&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt; &lt;div class="puntuacion" &gt;&lt;span&gt;Puntuación&lt;/span&gt;&lt;span class="puntsel"&gt;7&lt;/span&gt;&lt;/div&gt;&lt;br /&gt; &lt;p&gt;Esta revista trata sobre el sistema operativo Linux, intenta solucionar al usuario todos los problemas básicos, hay muchas cosas interesantes en la página de esta revista como son los foros (donde se habla de simuladores...), &lt;a href="http://www.linuxformat.co.uk/blog/"&gt;el blog de la revista&lt;/a&gt; &lt;/p&gt;&lt;br /&gt; &lt;br /&gt; &lt;!-- Enlace número 3--&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;3&lt;/span&gt;&lt;a href="http://discuss.pcmag.com/forums/2041/ShowForum.aspx"&gt;PCMagazine: Forum about War OS&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt; &lt;div class="puntuacion" &gt;&lt;span&gt;Puntuación&lt;/span&gt;&lt;span class="puntsel"&gt;8&lt;/span&gt;&lt;/div&gt;&lt;br /&gt; &lt;p&gt;Este enlace apunta al foro de una revista (PCMagazine), encaja dentro del apartado de revista y de foros donde se pueda participar. En concreto me he fijado en el foro de "Guerra de Sistemas Operativos" en ella se habla de sobre todo de Vista, windows 7 y se hacen comparativas con Linux, da cabida a fanáticos de ambos sistemas operativos, no obstante me esperaba más diversidad de OS, puesto que veo muchas hebras de Windows 7, vista... y apenas de los demás sistemas operativos.&lt;/p&gt;&lt;br /&gt; &lt;br /&gt; &lt;!-- Enlace número 4--&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;4&lt;/span&gt;&lt;a href="http://jim-zimmerman.com/blog/"&gt;Blog: Jim Zimmerman’s Technical Blog&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;    &lt;div class="puntuacion" &gt;&lt;span&gt;Puntuación&lt;/span&gt;&lt;span class="puntsel"&gt;10&lt;/span&gt;&lt;/div&gt;&lt;br /&gt; &lt;p&gt;Este blog está en ingles, pero incluye muchisimos temas relacionados con la teoría, como por ejemplo obtener &lt;a href="http://jim-zimmerman.com/blog/?p=240"&gt;información del hardware&lt;/a&gt;,&lt;a href="http://jim-zimmerman.com/blog/?p=237"&gt; simulador (VMware)&lt;/a&gt;, &lt;a href="http://jim-zimmerman.com/blog/?p=233"&gt;Sistemas operativos&lt;/a&gt;...&lt;/p&gt;&lt;br /&gt; &lt;br /&gt; &lt;!-- Enlace número 5 --&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;5&lt;/span&gt;&lt;a href="http://www.ixiasoluciones.com/html/hardware/mantenimiento.html"&gt;IXIA Soluciones&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;    &lt;div class="puntuacion" &gt;&lt;span&gt;Puntuación&lt;/span&gt;&lt;span class="puntsel"&gt;9&lt;/span&gt;&lt;/div&gt;&lt;br /&gt; &lt;p&gt;Esta es la página web de la empresa IXIA, que según la susodicha página web se dedica a mantenimiento de equipos, redes, reparación... Es una página bastante trabajada y es bastante atractiva, asi que cumple con creces la función de marketing que desempeña. En cuanto al servicio que desempeñan parece ser que se dedican a un amplio mercado cubriendo desde ordenadores personales hasta tiendas, hoteles, restaurantes...&lt;/p&gt;&lt;br /&gt; &lt;br /&gt; &lt;!-- Enlace número 6 --&gt;&lt;br /&gt; &lt;strong&gt;&lt;span&gt;6&lt;/span&gt;&lt;a href="http://my.safaribooksonline.com/0596003439/esa3-CHP-15-SECT-1#snippet"&gt;Essential System Administration, 3rd Edition&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;    &lt;div class="puntuacion" &gt;&lt;span&gt;Puntuación&lt;/span&gt;&lt;span class="puntsel"&gt;7&lt;/span&gt;&lt;/div&gt;&lt;br /&gt; &lt;p&gt;De este libro me ha interesado sobre todo el capítulo 15 (&lt;b&gt;Chapter 15. Managing System Resources&lt;/b&gt;) que es el que señalo en el link pues en el habla de herramientas y facilidades que ofrece Unix para la monitorización de la CPU , memoria, disco, red ... En general tiene muy buenos capítulos para aumentar el rendimiento no solo en sistemas informáticos a nivel de sistema operativo si no que también incluye otro tipo de consejos para aumentar la eficiencia por ejemplo en el manejo de base de datos.&lt;/p&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-1887656876308888442?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/1887656876308888442/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-1-diseno-y-evaluacion-de.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/1887656876308888442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/1887656876308888442'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/06/practica-1-diseno-y-evaluacion-de.html' title='Práctica 1: Diseño y Evaluación de Configuraciones'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-5459215759509521961</id><published>2009-05-12T08:28:00.000-07:00</published><updated>2009-05-12T08:49:29.339-07:00</updated><title type='text'>Tema 4 Autoevaluación 1</title><content type='html'>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,&lt;br /&gt;&lt;br /&gt;De momento este ejercicio lo voy a realizar sobre mi portatil, y ante la ausencia de impresora en mi casa haré los benchmark sobre el lector de DVD y la tarjeta gráfica.&lt;br /&gt;&lt;br /&gt;Para el primero no he encontrado mucha dificultad a la hora de encontrar un programa capaz de hacer benchmark sobre el lector de DVD, puesto que el propio everest lo hace, asi que trás hacer el benchmark me da los siguientes resultados:&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_po1gOanqAGI/SgmWyV53m3I/AAAAAAAAAD8/PuM6vkas0uQ/s1600-h/velocidad-dvd.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 218px;" src="http://4.bp.blogspot.com/_po1gOanqAGI/SgmWyV53m3I/AAAAAAAAAD8/PuM6vkas0uQ/s320/velocidad-dvd.png" alt="" id="BLOGGER_PHOTO_ID_5334961025214552946" border="0" /&gt;&lt;/a&gt;Para poder extraer una velocidad, digamos en resumen de todas, me quedo con la de lectura en el medio del disco, que sería: 2,32MB/s&lt;br /&gt;&lt;br /&gt;Para ver la velocidad de la tarjeta gráfica he tenido que buscar más porque el everest no permite hacer benchmark sobre la tarjeta gráfica (o por lo menos yo no lo he encontrado).&lt;br /&gt;En alguna páginas he encontrado benchmark específicos para tarjetas gráficas como este:&lt;br /&gt;http://ciusbet.wikidot.com/&lt;br /&gt;Que permite hacer benchmark sobre RAM, CPU... y tarjeta gráfica que es lo que me interesa, pero tras hacer sus test de rendimiento ( vease figura inferior) se quedaba calculando...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_po1gOanqAGI/SgmY6P8yobI/AAAAAAAAAEE/FcTUvPb8IMQ/s1600-h/test-grafica.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://2.bp.blogspot.com/_po1gOanqAGI/SgmY6P8yobI/AAAAAAAAAEE/FcTUvPb8IMQ/s320/test-grafica.png" alt="" id="BLOGGER_PHOTO_ID_5334963360078406066" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Asi que buscando otro, encontré este blog de un antiguo alumno http://davis87-dyec.blogspot.com/2008/05/4-seleccin-y-configuracin-de-sistemas.html&lt;br /&gt;&lt;br /&gt;Me descargué el programa y tras generarme test igual que el anterior (aunque mucho más exhaustivos según se puede ver en la imagen)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_po1gOanqAGI/SgmaKMCBjZI/AAAAAAAAAEM/bGi6oeE7OTo/s1600-h/grafica-test2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_po1gOanqAGI/SgmaKMCBjZI/AAAAAAAAAEM/bGi6oeE7OTo/s320/grafica-test2.png" alt="" id="BLOGGER_PHOTO_ID_5334964733416148370" border="0" /&gt;&lt;/a&gt;Y el resultado es el siguiente, en pixeles/s:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_po1gOanqAGI/SgmadT1wSGI/AAAAAAAAAEc/WAnDY8wkGV8/s1600-h/grafica-resultados.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 232px;" src="http://1.bp.blogspot.com/_po1gOanqAGI/SgmadT1wSGI/AAAAAAAAAEc/WAnDY8wkGV8/s320/grafica-resultados.png" alt="" id="BLOGGER_PHOTO_ID_5334965061929683042" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-5459215759509521961?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/5459215759509521961/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/05/tema-4-autoevaluacion-1.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/5459215759509521961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/5459215759509521961'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/05/tema-4-autoevaluacion-1.html' title='Tema 4 Autoevaluación 1'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_po1gOanqAGI/SgmWyV53m3I/AAAAAAAAAD8/PuM6vkas0uQ/s72-c/velocidad-dvd.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-509900363858909956</id><published>2009-05-12T07:47:00.000-07:00</published><updated>2009-05-12T08:01:40.067-07:00</updated><title type='text'>Tema 4 Autoevaluación Ejercicio Autoevaluación 2</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Mostrar en un benchmark publicado la existencia de alguno de estos      juegos de benchmarking.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Navengando por internet he descubierto que existe un benchmark de Intel para su nucle "conroe" en el que mintío en bastantes aspectos sobre el benchmark para que diera unos mejores resultados.&lt;br /&gt;&lt;br /&gt;En concreto la página es esta:&lt;br /&gt;http://juyxa.balearweb.net/post/11821&lt;br /&gt;&lt;br /&gt;En ella se cuentan 6 puntos en los que falla en benchmark (En la página también se enlaza a una parte del benchmark http://www.tomshardware.com/reviews/ati-crossfire-xpress-3200-chipset-takes,1224-19.html )&lt;br /&gt;&lt;br /&gt;En general, es una comparativa de Intel sobre AMD en cuanto a rendimiento en juegos, en la que Intel gana de manera asombrosa, pero poco a poco se va viendo que eso es dudable.&lt;br /&gt;&lt;br /&gt;Lo que más cabe destacar es el punto 5 donde dice que se equivocaron a posta, al medir de diferente forma sobre Intel que sobre AMD.&lt;br /&gt;Además todas las pruebas las hicieron con software de Intel (como demos de juegos).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-509900363858909956?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/509900363858909956/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/05/tema-4-autoevaluacion-ejercicio.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/509900363858909956'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/509900363858909956'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/05/tema-4-autoevaluacion-ejercicio.html' title='Tema 4 Autoevaluación Ejercicio Autoevaluación 2'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-4004510163509858859</id><published>2009-04-14T13:13:00.000-07:00</published><updated>2009-04-14T13:16:12.105-07:00</updated><title type='text'>Muy Perro</title><content type='html'>Pues eso... Que el titulo resume bastante esta entrada. Llevo ya bastante tiempo pensando en meterle mano a DEC que basicamente es por lo que hice este blog, pero ni pizca de ganas... Soy de los que lo hacen todo del tiron, pero a ver si viene la inspiración...&lt;br /&gt;&lt;br /&gt;PD: A este ritmo este blog será para todo menos para DEC&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-4004510163509858859?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/4004510163509858859/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/04/muy-perro.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/4004510163509858859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/4004510163509858859'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/04/muy-perro.html' title='Muy Perro'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5774264339009566385.post-8433398397885712037</id><published>2009-03-01T10:44:00.000-08:00</published><updated>2009-03-01T10:47:03.344-08:00</updated><title type='text'>Mi Primera entrada</title><content type='html'>Bueno pues esta es mi primera entrada del blog, nunca he tenido uno de estos, asi que no se muy bien que poner...&lt;br /&gt;Ya escribiré algo con más contenido que hoy es domingo por la tarde :D&lt;br /&gt;&lt;br /&gt;Byeee&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5774264339009566385-8433398397885712037?l=jessect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jessect.blogspot.com/feeds/8433398397885712037/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jessect.blogspot.com/2009/03/mi-primera-entrada.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/8433398397885712037'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5774264339009566385/posts/default/8433398397885712037'/><link rel='alternate' type='text/html' href='http://jessect.blogspot.com/2009/03/mi-primera-entrada.html' title='Mi Primera entrada'/><author><name>David Jesse Calvo Tudela</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-P4kJfrve2zA/AAAAAAAAAAI/AAAAAAAABiU/Gf_UNx_gvJ4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry></feed>
