Red de conocimiento informático - Aprendizaje de programación - openblas reales a números complejos

openblas reales a números complejos

Primero, extraiga el proyecto de git. src/HowToOptimizeGemm es la ruta del código fuente que Makerun puede compilar y ejecutar los casos de prueba (el código actual es compatible con x86). El archivo MAKE contiene los siguientes procesos: inicializar el código en matrices internas de diferentes tamaños y configurar parámetros. h Después de inicializar las matrices, los resultados de la versión ingenua se utilizarán para realizar juicios de corrección y los nombres de los archivos que utilizan códigos gemm se establecerán en ANTIGUO y NUEVO para facilitar las comparaciones de rendimiento posteriores. MMult0 se usa en el proyecto. Después de makerun, los resultados de gflops de múltiples ejecuciones se guardarán en output_new.m y output_old.m respectivamente, y octave:1>PloatAll se usará para dibujar un cuadro comparativo basado en los dos archivos de resultados. Este paso es opcional, si tiene dificultades para instalar Octave, puede escribir un script en Python para leer el archivo y dibujarlo usted mismo.

blis-lab es un proyecto de enseñanza de código abierto que proporciona ejemplos de código completos y scripts de prueba para enseñar a las personas cómo optimizar la multiplicación de matrices paso a paso (al igual que optimizar YUV2BGR paso a paso). Dado que el código Git de este proyecto no coincide exactamente con la documentación y se trata principalmente de implementar el orden de las columnas, es mejor consultar la documentación y hacerlo usted mismo paso a paso.

Las matemáticas son la base de la ciencia. Generalmente, los algoritmos involucrados en los proyectos se dividen en el nivel más bajo del proyecto también son cálculos científicos básicos: números únicos, matrices y matrices entre varias dimensiones. BLAS es una biblioteca estándar de computación matemática que define un conjunto de API de operación de matrices, como: multiplicación de matrices sgemmfloat, matriz de multiplicación de matrices sgemvfloat... y así sucesivamente.