Método de mapeo y optimización de SpMV en un acelerador multi-DSP
Autores: Liu, Sheng; Cao, Yasong; Sun, Shuwei
Idioma: Inglés
Editor: MDPI
Año: 2022
Acceso abierto
Artículo científico
2022
Método de mapeo y optimización de SpMV en un acelerador multi-DSP
Categoría
Ingeniería y Tecnología
Subcategoría
Ingeniería Eléctrica y Electrónica
Palabras clave
Multiplicación de matriz-vector dispersa
SpMV
Matriz dispersa
Vector denso
Rendimiento
DMA
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 30
Citaciones: Sin citaciones
La multiplicación de matriz-vector dispersa (SpMV) resuelve el producto de una matriz dispersa y un vector denso, y la dispersión de una matriz dispersa suele ser superior al 90%. Por lo general, la matriz dispersa se comprime para ahorrar recursos de almacenamiento, pero esto provoca un acceso irregular a los vectores densos en el algoritmo, lo que lleva mucho tiempo y degrada el rendimiento de SpMV del sistema. En este estudio, diseñamos un canal dedicado en el DMA para implementar un proceso de acceso indirecto a la memoria para acelerar la operación de SpMV. Sobre esta base, proponemos seis esquemas de algoritmos de SpMV y los mapeamos para optimizar el rendimiento de SpMV. Los resultados muestran que el rendimiento de SpMV del procesador M alcanzó los 6.88 GFLOPS. Además, el rendimiento promedio del benchmark HPCG es de 2.8 GFLOPS.
Descripción
La multiplicación de matriz-vector dispersa (SpMV) resuelve el producto de una matriz dispersa y un vector denso, y la dispersión de una matriz dispersa suele ser superior al 90%. Por lo general, la matriz dispersa se comprime para ahorrar recursos de almacenamiento, pero esto provoca un acceso irregular a los vectores densos en el algoritmo, lo que lleva mucho tiempo y degrada el rendimiento de SpMV del sistema. En este estudio, diseñamos un canal dedicado en el DMA para implementar un proceso de acceso indirecto a la memoria para acelerar la operación de SpMV. Sobre esta base, proponemos seis esquemas de algoritmos de SpMV y los mapeamos para optimizar el rendimiento de SpMV. Los resultados muestran que el rendimiento de SpMV del procesador M alcanzó los 6.88 GFLOPS. Además, el rendimiento promedio del benchmark HPCG es de 2.8 GFLOPS.