Linpack-Bnechmark

Páginas: 5 (1062 palabras) Publicado: 23 de octubre de 2011
Linpack

Este artículo o sección necesita referencias que aparezcan en una publicación acreditada, como revistas especializadas, monografías, prensa diaria o páginas de Internet fidedignas.
Puedes añadirlas así o avisar al autor principal del artículo en su página de discusión pegando: {{subst:Aviso referencias|Linpack}} ~~~~
El benchmark Linpack fue desarrollado en el Argone NationalLaboratory por Jack Dongarra en 1976, y es uno de los más usados en sistemas científicos y de ingeniería.
Su uso como benchmark fue accidental, ya que originalmente fue una extensión del programa Linpack -cuyo propósito era resolver sistemas de ecuaciones- que otorgaba el tiempo de ejecución del programa en 23 máquinas distintas. Luego fueron agregándose cada vez mayor cantidad de máquinas (según susmismos autores más como un pasatiempo que otra cosa).
Hoy en día, el programa Linpack ha sido reemplazado por el paquete Lapack, el cual hace un uso mucho mejor de las características de la arquitectura RISC (en esencia, sus técnicas algorítmicas fueron modificadas para que pase menor tiempo moviendo datos).
El benchmark Linpack puede conseguirse en versión Fortran, C y como un applet de Java.Contenido [ocultar]
1 Descripción del benchmark
2 Los principios matemáticos
3 Varios benchmarks en uno
4 Optimización
4.1 Loop unrolling (desarrollo del bucle)
5 Resultados
[editar]Descripción del benchmark

La característica principal de Linpack es que hace un uso muy intensivo de las operaciones de coma flotante, por lo que sus resultados son muy dependientes de la capacidad de la FPUque tenga el sistema. Además pasan la mayor parte del tiempo ejecutando unas rutinas llamadas BLAS (Basic Linear Algebra Subroutines o Subrutinas de Álgebra Lineal Básica). Como hay dos tipos de estas bibliotecas (una codificada en ensamblador y otra en Fortran), el resultado también dependerá mucho de esto. De lejos, el mayor tiempo de ejecución se consume en la rutina DAXPY de la biblioteca BLAS(casi el 90%). DAXPY realiza el siguiente cálculo
y(i) := y(i) + a * x(i).
Es por esto que en realidad se puede decir que lo que mide Linpack es la velocidad del sistema para DAXPY.
Por otra parte, al realizar esencialmente cálculos con matrices es un test fácilmente paralelizable, y se puede utilizar para medir la eficiencia de sistemas multiprocesador (de hecho, existe una página en Internetque informa el "Top 500" de las computadoras basándose en el Linpack).
[editar]Los principios matemáticos

El reporte del benchmark describe la performance para resolver un problema de matrices generales densas Ax = b a tres niveles de tamaño y oportunidad de optimización: problemas de 100 x 100 (optimización del bucle interno), problemas de 1.000 por 1.000 (optimización de tres bucles - elprograma entero) y un problema paralelo escalable. Estas matrices son generadas usando un generador de números pseudoaleatorios, pero forzando los números para que pueda ejecutarse un pivoteo parcial con Eliminación Gaussiana. Ejecuta dos rutinas básicas: una que descompone la matriz, y otra que resuelve el sistema de ecuaciones basándose en la descomposición de la primera matriz. Para una matriz den x n la primera rutina lleva n³ operaciones de coma flotante, mientras que la segunda ejecuta n² operaciones de coma flotante.
Las rutinas involucradas hacen uso de algoritmos orientados a columnas. Esto es, los programas generalmente referencian a los elementos de los arreglos bidimensionales secuencialmente hacia abajo por una columna, en lugar de hacerlo por filas. Esta orientación eraimportante por la forma en que el lenguaje Fortran almacena los arreglos.
[editar]Varios benchmarks en uno

Linpack está compuesto de tres benchmarks: los ya mencionados de orden 100 y orden 1.000, y un tercero de Computación Altamente Paralela (un algoritmo especialmente diseñado para buscar los beneficios de los multiprocesadores).
En el primero sólo se permite cambiar las opciones del...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS