Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas...

48
Modelado de Rutinas de Álgebra Lineal Densa Luis-Pedro García González Universidad Politécnica de Cartagena 15 de diciembre de 2010

Transcript of Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas...

Page 1: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

Modelado de Rutinas de Álgebra Lineal Densa

Luis-Pedro García GonzálezUniversidad Politécnica de Cartagena

15 de diciembre de 2010

Page 2: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resumen

1 Introducción

2 Modelo Analítico

3 Remodelado y Obtención de Coeficientes

4 Resultados Experimentales

5 Conclusiones

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 3: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resumen

1 Introducción

2 Modelo Analítico

3 Remodelado y Obtención de Coeficientes

4 Resultados Experimentales

5 Conclusiones

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 4: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resumen

1 Introducción

2 Modelo Analítico

3 Remodelado y Obtención de Coeficientes

4 Resultados Experimentales

5 Conclusiones

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 5: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resumen

1 Introducción

2 Modelo Analítico

3 Remodelado y Obtención de Coeficientes

4 Resultados Experimentales

5 Conclusiones

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 6: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resumen

1 Introducción

2 Modelo Analítico

3 Remodelado y Obtención de Coeficientes

4 Resultados Experimentales

5 Conclusiones

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 7: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Introducción

Obtener rutinas paralelas de Álgebra Lineal Densa concapacidad de auto-optimización.Aprovechar la jerarquía inherente y comenzar con lasrutinas de los niveles más bajos (multiplicación,adición,etc.)Para continuar con las de niveles superiores(multiplicación de Strassen, LU, QR, Cholesky, etc.)Se propone utilizar modelos parametrizados de tiempo deejecución de la rutina, y si en un nivel determinado lainformación no es útil, realizar un remodelado aplicandoregresión polinomial.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 8: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Introducción

Obtener rutinas paralelas de Álgebra Lineal Densa concapacidad de auto-optimización.Aprovechar la jerarquía inherente y comenzar con lasrutinas de los niveles más bajos (multiplicación,adición,etc.)Para continuar con las de niveles superiores(multiplicación de Strassen, LU, QR, Cholesky, etc.)Se propone utilizar modelos parametrizados de tiempo deejecución de la rutina, y si en un nivel determinado lainformación no es útil, realizar un remodelado aplicandoregresión polinomial.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 9: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Introducción

Obtener rutinas paralelas de Álgebra Lineal Densa concapacidad de auto-optimización.Aprovechar la jerarquía inherente y comenzar con lasrutinas de los niveles más bajos (multiplicación,adición,etc.)Para continuar con las de niveles superiores(multiplicación de Strassen, LU, QR, Cholesky, etc.)Se propone utilizar modelos parametrizados de tiempo deejecución de la rutina, y si en un nivel determinado lainformación no es útil, realizar un remodelado aplicandoregresión polinomial.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 10: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Introducción

Obtener rutinas paralelas de Álgebra Lineal Densa concapacidad de auto-optimización.Aprovechar la jerarquía inherente y comenzar con lasrutinas de los niveles más bajos (multiplicación,adición,etc.)Para continuar con las de niveles superiores(multiplicación de Strassen, LU, QR, Cholesky, etc.)Se propone utilizar modelos parametrizados de tiempo deejecución de la rutina, y si en un nivel determinado lainformación no es útil, realizar un remodelado aplicandoregresión polinomial.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 11: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo Analítico

Análisis teórico y experimental del algoritmo con el fin dedeterminar los parámetros de la rutina.En rutinas paralelas de álgebra lineal densa. Típicamentenos encontramos con:

AP: b, p = r × c, y las librerías básicas: álgebra lineal, MPISP: k1, k2, k3, ts y twModelo de tiempo de ejecución:T (n) = f(n,AP, SP ) = 2n3k3 (dgemm)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 12: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo Analítico

Análisis teórico y experimental del algoritmo con el fin dedeterminar los parámetros de la rutina.En rutinas paralelas de álgebra lineal densa. Típicamentenos encontramos con:

AP: b, p = r × c, y las librerías básicas: álgebra lineal, MPISP: k1, k2, k3, ts y twModelo de tiempo de ejecución:T (n) = f(n,AP, SP ) = 2n3k3 (dgemm)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 13: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo Analítico

Análisis teórico y experimental del algoritmo con el fin dedeterminar los parámetros de la rutina.En rutinas paralelas de álgebra lineal densa. Típicamentenos encontramos con:

AP: b, p = r × c, y las librerías básicas: álgebra lineal, MPISP: k1, k2, k3, ts y twModelo de tiempo de ejecución:T (n) = f(n,AP, SP ) = 2n3k3 (dgemm)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 14: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo Analítico

Análisis teórico y experimental del algoritmo con el fin dedeterminar los parámetros de la rutina.En rutinas paralelas de álgebra lineal densa. Típicamentenos encontramos con:

AP: b, p = r × c, y las librerías básicas: álgebra lineal, MPISP: k1, k2, k3, ts y twModelo de tiempo de ejecución:T (n) = f(n,AP, SP ) = 2n3k3 (dgemm)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 15: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo Analítico

Análisis teórico y experimental del algoritmo con el fin dedeterminar los parámetros de la rutina.En rutinas paralelas de álgebra lineal densa. Típicamentenos encontramos con:

AP: b, p = r × c, y las librerías básicas: álgebra lineal, MPISP: k1, k2, k3, ts y twModelo de tiempo de ejecución:T (n) = f(n,AP, SP ) = 2n3k3 (dgemm)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 16: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado

Si la información de los Parámetros del Sistema (SP)obtenido de las rutinas de bajo nivel no es lo suficienteexacto. Surge la necesidad de construir un modelo nuevo.El nuevo modelo se construye a partir del modelo analíticosiguiendo un esquema polinomial con diferentescombinaciones de n y AP .

T (n) = β3,1n3b+ β3,0n

3 + β3,−1n3

b+ β2,1n

2b+ β2,0n2+

β2,−1n2

b+ β1,1nb+ β1,0n+ β1,−1

n

b+ β0,0

(1)

Se requiere de una metodología para la obtención de loscoeficientes β3,1, β3,0, . . .

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 17: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado

Si la información de los Parámetros del Sistema (SP)obtenido de las rutinas de bajo nivel no es lo suficienteexacto. Surge la necesidad de construir un modelo nuevo.El nuevo modelo se construye a partir del modelo analíticosiguiendo un esquema polinomial con diferentescombinaciones de n y AP .

T (n) = β3,1n3b+ β3,0n

3 + β3,−1n3

b+ β2,1n

2b+ β2,0n2+

β2,−1n2

b+ β1,1nb+ β1,0n+ β1,−1

n

b+ β0,0

(1)

Se requiere de una metodología para la obtención de loscoeficientes β3,1, β3,0, . . .

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 18: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado

Si la información de los Parámetros del Sistema (SP)obtenido de las rutinas de bajo nivel no es lo suficienteexacto. Surge la necesidad de construir un modelo nuevo.El nuevo modelo se construye a partir del modelo analíticosiguiendo un esquema polinomial con diferentescombinaciones de n y AP .

T (n) = β3,1n3b+ β3,0n

3 + β3,−1n3

b+ β2,1n

2b+ β2,0n2+

β2,−1n2

b+ β1,1nb+ β1,0n+ β1,−1

n

b+ β0,0

(1)

Se requiere de una metodología para la obtención de loscoeficientes β3,1, β3,0, . . .

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 19: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado - Obtención Coeficientes

Para la obtención de los coeficientes se proponen 4métodos diferentes:

FI-ME: FIxed Minimal ExecutionsVA-ME: VAriable Minimal ExecutionsFI-LS: FIxed Least SquareVA-LS: VAriable Least Square

Cuando uno de estos métodos proporciona una buenaestimación del tiempo de ejecución, el procedimientofinaliza. Se define una cuota de error:

Φerr =

[1 −

(∑V alores_Chequeo tteo∑V alores_Chequeo texp

)]× 100 (2)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 20: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado - Obtención Coeficientes

Para la obtención de los coeficientes se proponen 4métodos diferentes:

FI-ME: FIxed Minimal ExecutionsVA-ME: VAriable Minimal ExecutionsFI-LS: FIxed Least SquareVA-LS: VAriable Least Square

Cuando uno de estos métodos proporciona una buenaestimación del tiempo de ejecución, el procedimientofinaliza. Se define una cuota de error:

Φerr =

[1 −

(∑V alores_Chequeo tteo∑V alores_Chequeo texp

)]× 100 (2)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 21: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado - Obtención Coeficientes

Para la obtención de los coeficientes se proponen 4métodos diferentes:

FI-ME: FIxed Minimal ExecutionsVA-ME: VAriable Minimal ExecutionsFI-LS: FIxed Least SquareVA-LS: VAriable Least Square

Cuando uno de estos métodos proporciona una buenaestimación del tiempo de ejecución, el procedimientofinaliza. Se define una cuota de error:

Φerr =

[1 −

(∑V alores_Chequeo tteo∑V alores_Chequeo texp

)]× 100 (2)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 22: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado - Obtención Coeficientes

Para la obtención de los coeficientes se proponen 4métodos diferentes:

FI-ME: FIxed Minimal ExecutionsVA-ME: VAriable Minimal ExecutionsFI-LS: FIxed Least SquareVA-LS: VAriable Least Square

Cuando uno de estos métodos proporciona una buenaestimación del tiempo de ejecución, el procedimientofinaliza. Se define una cuota de error:

Φerr =

[1 −

(∑V alores_Chequeo tteo∑V alores_Chequeo texp

)]× 100 (2)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 23: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado - Obtención Coeficientes

Para la obtención de los coeficientes se proponen 4métodos diferentes:

FI-ME: FIxed Minimal ExecutionsVA-ME: VAriable Minimal ExecutionsFI-LS: FIxed Least SquareVA-LS: VAriable Least Square

Cuando uno de estos métodos proporciona una buenaestimación del tiempo de ejecución, el procedimientofinaliza. Se define una cuota de error:

Φerr =

[1 −

(∑V alores_Chequeo tteo∑V alores_Chequeo texp

)]× 100 (2)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 24: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Remodelado - Obtención Coeficientes

Para la obtención de los coeficientes se proponen 4métodos diferentes:

FI-ME: FIxed Minimal ExecutionsVA-ME: VAriable Minimal ExecutionsFI-LS: FIxed Least SquareVA-LS: VAriable Least Square

Cuando uno de estos métodos proporciona una buenaestimación del tiempo de ejecución, el procedimientofinaliza. Se define una cuota de error:

Φerr =

[1 −

(∑V alores_Chequeo tteo∑V alores_Chequeo texp

)]× 100 (2)

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 25: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Aplicación del Método

Multiplicación de matrices rápida de Strassen. Modelo detiempo de ejecución:

TS = 7ltmult

( n2l

)+ 18

l∑i=1

7i−1tadd

( n2i

)(3)

tmult( n2l ): Tiempo teórico de ejecución de la multiplicación

de matrices. Rutina DGEMM de BLAS3.tadd( n

2i ): Tiempo teórico de ejecución de la adición dematrices. Rutinas DAXPY de BLAS1.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 26: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Aplicación del Método

Multiplicación de matrices rápida de Strassen. Modelo detiempo de ejecución:

TS = 7ltmult

( n2l

)+ 18

l∑i=1

7i−1tadd

( n2i

)(3)

tmult( n2l ): Tiempo teórico de ejecución de la multiplicación

de matrices. Rutina DGEMM de BLAS3.tadd( n

2i ): Tiempo teórico de ejecución de la adición dematrices. Rutinas DAXPY de BLAS1.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 27: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Aplicación del Método

Multiplicación de matrices rápida de Strassen. Modelo detiempo de ejecución:

TS = 7ltmult

( n2l

)+ 18

l∑i=1

7i−1tadd

( n2i

)(3)

tmult( n2l ): Tiempo teórico de ejecución de la multiplicación

de matrices. Rutina DGEMM de BLAS3.tadd( n

2i ): Tiempo teórico de ejecución de la adición dematrices. Rutinas DAXPY de BLAS1.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 28: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

Se han realizado pruebas del método en dos sistemasdiferentes:

Xeon: Linux Intel Xeon 3.0 GHZ.Alpha: Tru64 Unix HP-Alpha 1.0 GHz.

Modelos para DGEMM y DAXPY. Se han obtenido buenosresultados utilizando el método FI-LS:

DGEMM: Polinomio de tercer orden (20 muestras oejecuciones):

nmin = 500, nmax = 10000, ninc = 500

DAXPY: Polinomio de sexto orden (31 muestras oejecuciones):

nmin = 64, nmax = 2000, ninc = 64

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 29: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

Se han realizado pruebas del método en dos sistemasdiferentes:

Xeon: Linux Intel Xeon 3.0 GHZ.Alpha: Tru64 Unix HP-Alpha 1.0 GHz.

Modelos para DGEMM y DAXPY. Se han obtenido buenosresultados utilizando el método FI-LS:

DGEMM: Polinomio de tercer orden (20 muestras oejecuciones):

nmin = 500, nmax = 10000, ninc = 500

DAXPY: Polinomio de sexto orden (31 muestras oejecuciones):

nmin = 64, nmax = 2000, ninc = 64

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 30: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

Se han realizado pruebas del método en dos sistemasdiferentes:

Xeon: Linux Intel Xeon 3.0 GHZ.Alpha: Tru64 Unix HP-Alpha 1.0 GHz.

Modelos para DGEMM y DAXPY. Se han obtenido buenosresultados utilizando el método FI-LS:

DGEMM: Polinomio de tercer orden (20 muestras oejecuciones):

nmin = 500, nmax = 10000, ninc = 500

DAXPY: Polinomio de sexto orden (31 muestras oejecuciones):

nmin = 64, nmax = 2000, ninc = 64

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 31: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

Se han realizado pruebas del método en dos sistemasdiferentes:

Xeon: Linux Intel Xeon 3.0 GHZ.Alpha: Tru64 Unix HP-Alpha 1.0 GHz.

Modelos para DGEMM y DAXPY. Se han obtenido buenosresultados utilizando el método FI-LS:

DGEMM: Polinomio de tercer orden (20 muestras oejecuciones):

nmin = 500, nmax = 10000, ninc = 500

DAXPY: Polinomio de sexto orden (31 muestras oejecuciones):

nmin = 64, nmax = 2000, ninc = 64

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 32: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

Se han realizado pruebas del método en dos sistemasdiferentes:

Xeon: Linux Intel Xeon 3.0 GHZ.Alpha: Tru64 Unix HP-Alpha 1.0 GHz.

Modelos para DGEMM y DAXPY. Se han obtenido buenosresultados utilizando el método FI-LS:

DGEMM: Polinomio de tercer orden (20 muestras oejecuciones):

nmin = 500, nmax = 10000, ninc = 500

DAXPY: Polinomio de sexto orden (31 muestras oejecuciones):

nmin = 64, nmax = 2000, ninc = 64

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 33: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

Se han realizado pruebas del método en dos sistemasdiferentes:

Xeon: Linux Intel Xeon 3.0 GHZ.Alpha: Tru64 Unix HP-Alpha 1.0 GHz.

Modelos para DGEMM y DAXPY. Se han obtenido buenosresultados utilizando el método FI-LS:

DGEMM: Polinomio de tercer orden (20 muestras oejecuciones):

nmin = 500, nmax = 10000, ninc = 500

DAXPY: Polinomio de sexto orden (31 muestras oejecuciones):

nmin = 64, nmax = 2000, ninc = 64

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 34: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

n l Mod. Exp. Dev. ( %)3072 1 11.75 12.86 8.583072 2 13.90 13.63 1.993072 3 37.04 15.76 135.064096 1 27.21 29.71 8.414096 2 28.59 30.10 5.024096 3 48.76 33.34 46.265120 1 53.14 56.83 6.515120 2 53.53 56.43 5.135120 3 71.08 60.19 18.096144 1 96.48 96.32 0.176144 2 95.39 93.69 1.826144 3 110.40 98.39 12.21

Tabla: Comparación del modelopara el algoritmo de Strassenen Xeon.

n l Mod. Exp. Dev. ( %)3072 1 29.96 29.70 0.893072 2 28.54 27.82 2.573072 3 17.55 27.61 36.464096 1 69.85 70.85 1.434096 2 66.04 64.55 2.304096 3 57.82 62.56 7.585120 1 135.03 134.67 0.265120 2 125.76 123.38 1.925120 3 118.122 118.45 0.286144 1 229.786 232.268 1.076144 2 211.104 210.876 0.116144 3 201.150 199.326 0.92

Tabla: Comparación del modelopara el algoritmo de Strassenen Alpha.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 35: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

El valor óptimo de los AP varían de un sistema a otro y conel tamaño del problema.En Xeon y para n = 5120 el modelo realiza una malapredicción, aunque el tiempo de ejecución experimentalcon la selección del modelo es sólo 0, 71 % peor que elóptimo.Se hace necesario construir un modelo mejorado en Xeon,ya que las desviaciones van de 0,17 % a 135,06 %.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 36: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

El valor óptimo de los AP varían de un sistema a otro y conel tamaño del problema.En Xeon y para n = 5120 el modelo realiza una malapredicción, aunque el tiempo de ejecución experimentalcon la selección del modelo es sólo 0, 71 % peor que elóptimo.Se hace necesario construir un modelo mejorado en Xeon,ya que las desviaciones van de 0,17 % a 135,06 %.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 37: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Resultados experimentales

El valor óptimo de los AP varían de un sistema a otro y conel tamaño del problema.En Xeon y para n = 5120 el modelo realiza una malapredicción, aunque el tiempo de ejecución experimentalcon la selección del modelo es sólo 0, 71 % peor que elóptimo.Se hace necesario construir un modelo mejorado en Xeon,ya que las desviaciones van de 0,17 % a 135,06 %.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 38: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo mejorado rutina Strassen

El esquema seguido consiste en definir un conjunto defunciones polinomiales de grado tres a partir del modeloteórico de la rutina de Strassen:

TS(n, l) = 2× 7l( n

2l

)3M(l) +

184n2A(l)

l∑i=1

(74

)i−1

(4)

Ahora los coeficientes M(l) y A(l) son polinomios en l ydeben ser calculados. Para cada l, variamos n y la funciónpolinomial es obtenida por mínimos cuadrados.Obteniendo así un único modelo para cualquiercombinación de n y l.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 39: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo mejorado rutina Strassen

El esquema seguido consiste en definir un conjunto defunciones polinomiales de grado tres a partir del modeloteórico de la rutina de Strassen:

TS(n, l) = 2× 7l( n

2l

)3M(l) +

184n2A(l)

l∑i=1

(74

)i−1

(4)

Ahora los coeficientes M(l) y A(l) son polinomios en l ydeben ser calculados. Para cada l, variamos n y la funciónpolinomial es obtenida por mínimos cuadrados.Obteniendo así un único modelo para cualquiercombinación de n y l.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 40: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo mejorado rutina Strassenn l Exp. Mod. Dev. ( %)

1664 1 1.99 2.27 14.081664 2 2.37 2.73 15.521664 3 3.12 3.27 5.122176 1 4.27 4.83 13.022176 2 4.77 5.51 15.522176 3 6.08 6.25 2.742688 1 7.87 8.80 11.922688 2 8.40 9.67 15.232688 3 10.28 10.52 2.383200 1 13.02 14.51 11.923200 2 13.56 15.51 14.383200 3 16.00 16.30 1.875120 1 56.80 56.71 0.175120 2 56.44 57.01 1.005120 3 60.04 55.09 8.255632 1 75.78 74.92 1.125632 2 73.50 74.56 1.455632 3 71.70 70.97 1.03

Tabla: Comparación de los tiempos de ejecución experimentales (ensegundos) con los tiempos de ejecución proporcionados por el nuevomodelo para el algoritmo de Strassen. En Xeon.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 41: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo mejorado rutina Strassen

En Xeon y para n = 5120 el modelo realiza una malapredicción, aunque el tiempo de ejecución experimentalcon la selección del modelo es sólo 3, 49 % peor que elóptimo.Sin embargo con el procedimiento de remodelado el rangode desviaciones es menor, y ahora va de 0, 17 % a 15,23 %.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 42: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Modelo mejorado rutina Strassen

En Xeon y para n = 5120 el modelo realiza una malapredicción, aunque el tiempo de ejecución experimentalcon la selección del modelo es sólo 3, 49 % peor que elóptimo.Sin embargo con el procedimiento de remodelado el rangode desviaciones es menor, y ahora va de 0, 17 % a 15,23 %.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 43: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Conclusiones

La utilización de técnicas de modelado ayuda en laselección de los parámetros del algoritmo, obteniendorutinas auto-optimizadas en diferentes plataformas.El tiempo para la obtención del modelo parametrizadodebe ser pequeño:

Es preferible utilizar el método FI-ME.En el caso de utilizar el método FI-LS, el número de casosdebe ser reducido.Utilizar tamaños del problema pequeños para la obtencióndel modelo.

El método ha sido aplicado con éxito a la multiplicación dematrices de Strassen y a una versión paralela de lamultiplicación de matrices. Pudiendo ser aplicado a otrasrutinas de algebra lineal paralela.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 44: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Conclusiones

La utilización de técnicas de modelado ayuda en laselección de los parámetros del algoritmo, obteniendorutinas auto-optimizadas en diferentes plataformas.El tiempo para la obtención del modelo parametrizadodebe ser pequeño:

Es preferible utilizar el método FI-ME.En el caso de utilizar el método FI-LS, el número de casosdebe ser reducido.Utilizar tamaños del problema pequeños para la obtencióndel modelo.

El método ha sido aplicado con éxito a la multiplicación dematrices de Strassen y a una versión paralela de lamultiplicación de matrices. Pudiendo ser aplicado a otrasrutinas de algebra lineal paralela.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 45: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Conclusiones

La utilización de técnicas de modelado ayuda en laselección de los parámetros del algoritmo, obteniendorutinas auto-optimizadas en diferentes plataformas.El tiempo para la obtención del modelo parametrizadodebe ser pequeño:

Es preferible utilizar el método FI-ME.En el caso de utilizar el método FI-LS, el número de casosdebe ser reducido.Utilizar tamaños del problema pequeños para la obtencióndel modelo.

El método ha sido aplicado con éxito a la multiplicación dematrices de Strassen y a una versión paralela de lamultiplicación de matrices. Pudiendo ser aplicado a otrasrutinas de algebra lineal paralela.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 46: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Conclusiones

La utilización de técnicas de modelado ayuda en laselección de los parámetros del algoritmo, obteniendorutinas auto-optimizadas en diferentes plataformas.El tiempo para la obtención del modelo parametrizadodebe ser pequeño:

Es preferible utilizar el método FI-ME.En el caso de utilizar el método FI-LS, el número de casosdebe ser reducido.Utilizar tamaños del problema pequeños para la obtencióndel modelo.

El método ha sido aplicado con éxito a la multiplicación dematrices de Strassen y a una versión paralela de lamultiplicación de matrices. Pudiendo ser aplicado a otrasrutinas de algebra lineal paralela.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 47: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Conclusiones

La utilización de técnicas de modelado ayuda en laselección de los parámetros del algoritmo, obteniendorutinas auto-optimizadas en diferentes plataformas.El tiempo para la obtención del modelo parametrizadodebe ser pequeño:

Es preferible utilizar el método FI-ME.En el caso de utilizar el método FI-LS, el número de casosdebe ser reducido.Utilizar tamaños del problema pequeños para la obtencióndel modelo.

El método ha sido aplicado con éxito a la multiplicación dematrices de Strassen y a una versión paralela de lamultiplicación de matrices. Pudiendo ser aplicado a otrasrutinas de algebra lineal paralela.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa

Page 48: Modelado de Rutinas de Álgebra Lineal Densa · 2010. 12. 14. · Introducción Obtener rutinas paralelas de Álgebra Lineal Densa con capacidad de auto-optimización. Aprovechar

IntroducciónModelo Analítico

Remodelado y Obtención de CoeficientesResultados Experimentales

Conclusiones

Conclusiones

La utilización de técnicas de modelado ayuda en laselección de los parámetros del algoritmo, obteniendorutinas auto-optimizadas en diferentes plataformas.El tiempo para la obtención del modelo parametrizadodebe ser pequeño:

Es preferible utilizar el método FI-ME.En el caso de utilizar el método FI-LS, el número de casosdebe ser reducido.Utilizar tamaños del problema pequeños para la obtencióndel modelo.

El método ha sido aplicado con éxito a la multiplicación dematrices de Strassen y a una versión paralela de lamultiplicación de matrices. Pudiendo ser aplicado a otrasrutinas de algebra lineal paralela.

Luis-Pedro García González Universidad Politécnica de CartagenaModelado de Rutinas de Álgebra Lineal Densa