Benchmark Para Pcs Con Pocos Recursos

Benchmark Para Pcs Con Pocos Recursos

Universitat Politecnica` de Catalunya Facultat d'Informatica` de Barcelona Benchmark para PCs con pocos recursos Director: Autor: Carlos Alvarez´ Mart´ınez Alexandre Ram´ırezG´omez Co-director: Xavier Martorell Bofill 13 de junio de 2013 ´Indice general 1. Introducci´on 4 1.1. Planteamiento . .4 1.1.1. Objetivo . .4 1.1.2. Motivaci´on . .4 1.2. Estado del arte . .5 1.2.1. Contexto . .5 1.2.2. Diagramas de flujo . .5 1.2.3. Benchmarks globales . .6 1.2.4. Benchmarks espec´ıficos . .6 1.2.5. Colecciones de tests . .6 1.2.6. Conclusiones . .7 2. An´alisisde requisitos y planificaci´on 8 2.1. Marco legal . .8 2.2. Modalidades del benchmark .......................8 2.2.1. Modalidad cl´asica. .8 2.2.2. Modalidad basada en estimaci´on . .9 2.2.3. Modalidad basada en la estimaci´onde una distribuci´on live ..9 2.2.4. Comparativa . .9 2.3. Metodolog´ıa . .9 2.4. Planificaci´ontemporal . 10 2.5. Presupuesto . 14 2.5.1. Coste de software y hardware . 14 2.5.2. Coste espacial . 15 2.5.3. Coste de recursos humanos . 15 2.5.4. Coste total . 17 1 3. Especificaci´ony dise~no 18 3.1. Encuesta . 18 3.2. Versi´onpreliminar del benchmark .................... 19 3.2.1. Mediciones . 19 3.2.2. Puntos a mejorar . 22 3.3. Versi´onfinal del benchmark ....................... 23 3.4. Modalidad basada en estimaci´on. 24 3.5. Modalidad basada en la estimaci´onde una distribuci´on live ...... 25 3.5.1. >Medir o estimar? . 26 3.5.2. La distribuci´on live ........................ 27 3.5.3. Estimando en base al hardware . 28 3.6. Experimentaci´oncon un Pocket PC ................... 30 4. Implementaci´on,pruebas y resultados 31 4.1. Encuesta . 31 4.2. An´alisisde las distribuciones . 32 4.2.1. Selecci´onde distribuciones candidatas . 32 4.2.2. An´alisisde funcionalidades . 35 4.3. An´alisisde los PCs . 36 4.3.1. PCs de TxT . 36 4.3.2. Pruebas de rendimiento preliminares . 38 4.4. Criba de distribuciones . 40 4.5. Pruebas de rendimiento en PCs de TxT . 40 4.5.1. Resultados y reporte de incidencias . 40 4.5.2. Conclusiones . 41 4.5.3. Interpretaci´onde los resultados . 42 4.6. Realizando estimaciones . 43 4.7. Comparativa de modalidades del benchmark .............. 44 4.8. Experimentaci´oncon un Pocket PC ................... 47 5. Conclusiones 49 5.1. Conclusiones . 49 5.2. Trabajo futuro . 50 5.2.1. Comportamientos an´omalos . 50 5.2.2. A~nadiratributos a medir al benchmark ............. 50 5.2.3. Actualizar y expandir la lista de distribuciones . 51 5.2.4. Mejorar la estad´ıstica. 51 5.2.5. Probar distintos Pocket PC ................... 51 2 A. Resultados de la encuesta 53 B. Programas por distribuci´on 56 C. Funcionalidades por programa 59 D. Funcionalidades por distribuci´on 63 E. C´odigofuente del benchmark (versi´on1) 67 E.1. run.sh ................................... 67 E.2. benchmark.sh ............................... 72 E.3. statistics.sh .............................. 77 F. Pruebas de rendimiento en PCs de TxT 81 F.1. PC A . 81 F.2. PC B . 82 F.3. PC C (Core 2 Duo) . 83 G. C´odigofuente del benchmark (versi´on2) 84 G.1. memory disk discard .......................... 85 G.2. estimation ................................ 86 H. Estimaciones en base a la distribuci´on live 88 I. Ecuaciones para estimar el rendimiento 94 I.1. Ubuntu . 94 I.2. Slackware . 95 I.3. Linux Mint . 95 J. C´odigofuente del benchmark (versi´on3) 97 J.1. run.sh ................................... 97 J.2. benchmark.sh ............................... 99 J.3. estimation ................................ 103 K. Funcionalidades de Raspbian 105 Bibliograf´ıa 109 3 Cap´ıtulo1 Introducci´on 1.1. Planteamiento 1.1.1. Objetivo El objetivo de este proyecto es dise~nare implementar un sistema capaz de de- terminar la distribuci´onde Linux adecuada para un PC (m´asconcretamente, un PC con pocos recursos). Se tendr´anen cuenta tanto aspectos de funcionalidad como de rendimiento. Para esto ´ultimoser´anecesario crear un benchmark que mida el rendi- miento de distintas distribuciones de Linux para poder decidir con qu´edistribuci´on se aprovecha mejor el escaso potencial de la m´aquina.Se estudiar´andistintas moda- lidades de benchmark con distintos equilibrios entre tiempo de ejecuci´ony precisi´on de las mediciones. Luego se analizar´any se comparar´anentre ellas. Se usar´anlos PCs de la asociaci´onTecnologies per Tothom (de ahora en adelante, TxT) a modo de aplicaci´onreal. 1.1.2. Motivaci´on La idea surge tras haber participado en una actividad organizada por TxT en la que se instalaba el sistema operativo a ordenadores donados, normalmente con pocos recursos. El sistema operativo en cuesti´onera la ´ultima versi´onde Ubuntu. Se ha visto que Ubuntu no es la mejor distribuci´onpara este tipo de sistemas. En cambio, con distribuciones m´asligeras especialmente dise~nadaspara este cometido se pueden obtener buenos resultados. Creo que los PCs de TxT (y los PCs con pocos recursos en general) podr´ıan tambi´enbeneficiarse de las ventajas que ofrecen estas distribuciones, pero es necesario 4 escoger la m´asadecuada con tal de aprovechar al m´aximoel potencial de la m´aquina. Para ello es necesario poder calcular de manera cuantitativa el rendimiento de cada distribuci´on;es decir, se necesita un benchmark. Adem´as,este benchmark tambi´enpodr´ıa usarse en sistemas del estilo Pocket PC (p. ej., Raspberry Pi), ya que a efectos pr´acticosson PCs con pocos recursos. Actualmente el uso de este tipo de m´aquinasest´aaumentando notablemente, ya que ofrecen una soluci´onbarata y peque~napara tareas que no requieran una gran capacidad de c´omputoo unas prestaciones fuera de lo com´un.Con este benchmark se podr´ancomparar este tipo de sistemas con PCs antiguos y ver si realmente suponen una alternativa viable. 1.2. Estado del arte 1.2.1. Contexto A la hora de aprovechar un PC con pocos recursos es importante elegir bien qu´esoftware se instalar´acon tal de sacar el m´aximoprovecho a nuestro limitado hardware. Actualmente el sistema operativo para los ordenadores de TxT es elegido de manera informal, sin tener en cuenta muchas alternativas y sin una base obje- tiva. Es mi prop´ositodemostrar que esta elecci´onafecta de manera considerable al rendimiento del sistema y que se podr´ıamejorar haci´endolacon m´asmesura. La soluci´onal problema tendr´aque tener en cuenta tanto aspectos de rendimiento como de funcionalidad para poder decidir de manera objetiva cu´ales la m´asadecuada para una determinada m´aquina. 1.2.2. Diagramas de flujo Actualmente no existe ning´unsoftware que ayude a escoger una distribuci´onde Linux, m´as all´ade los t´ıpicosdiagramas de flujo [1]. Si bien estos diagramas tienen la ventaja de ser sencillos y no requerir ning´unsoftware ni hardware espec´ıfico(porque no son programas, son diagramas), tienen la desventaja de que su granularidad es muy gruesa y solo distinguen entre \PC moderno" y \PC antiguo" como mucho, sin tener en cuenta el rendimiento de la m´aquina.Adem´astampoco tiene en cuenta funcionalidades espec´ıficas,sino que hacen distinciones como \PC de escritorio" o \Servidor". 5 1.2.3. Benchmarks globales En la actualidad existen pocos benchmarks para Linux que midan el rendimiento de todo el sistema, y los que hay se encuentran desfasados. Unixbench es probablemente el m´asconocido. Aunque fue creado en 1983, ha ido siendo actualizado y hoy en d´ıase sigue usando [3]. El principal defecto de este benchmark es que mide resultados simulando casos de uso extremos que no coinciden con el perfil de uso que normalmente se le da a un PC. Otro conocido benchmark es HINT (Hierarchical INTegration) [4]. Se caracte- riza por su buen balance en la ponderaci´onde los distintos aspectos del sistema. Sin embargo, este benchmark devuelve como resultado un solo valor, que intenta ser una medici´onde la \calidad" del sistema. Actualmente se desaconseja este com- portamiento y se prefiere que se midan los distintos componentes del sistema por separado. 1.2.4. Benchmarks espec´ıficos Existen, por otro lado, benchmarks para medir el rendimiento de un solo aspecto espec´ıfico del sistema o incluso una tarea concreta. Los benchmarks globales suelen ser suites de benchmarks espec´ıficos debidamente ponderados. Los m´ascomunes son los benchmarks que miden la potencia de computaci´on (CPU, FPU y memoria). Estos consisten en hacer c´alculosque sean CPU-intensivos (c´omocalcular d´ıgitosde Pi, por ejemplo). Quiz´asel m´ascom´unde este tipo sea nbench [5] (un port a Linux de BYTEmark 2, anteriormente conocido como BYTE's Native Mode Benchmarks [6]). No obstante, tambi´enexisten benchmarks dedicados a medir el rendimiento de otras partes del sistema, como IOzone [8] (dedicado a medir el rendimiento de los sistema de ficheros y dispositivos de almacenamiento) o netperf (para medir el ren- dimiento de la conexi´onde red). Incluso hay benchmarks dedicados a tareas tan espec´ıficascomo medir el rendi- miento de distintos temas y configuraciones de GTK+ (gtkperf [7]). 1.2.5. Colecciones de tests Finalmente, tambi´enexisten colecciones de tests no relacionados entre s´ıpara que el usuario elija los tests que desea realizar y pueda crear su propio benchmark global a partir de varios tests espec´ıficos.En este achapterado destaca Phoronix Test Suite [10]. Es una colecci´onde tests bastance reciente (creada en 2008) y amplia (contiene m´asde 60 tests). Adem´asofrece la posibilidad de compartir resultados 6 a trav´esdel servicio OpenBenchmarking http://www.openbenchmarking.org. Es una de las plataformas de benchmarking m´asusadas, tanto a nivel domestico como profesional.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    111 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us