Escribo códigos en Fortran y C para varios algoritmos matriciales. Sin embargo, cuando perfilo mis códigos usando VTune, generalmente encuentro alguna terminología que no puedo apreciar completamente. ¿Existe un buen recurso para aprender la creación de perfiles desde cero a un nivel bastante avanzado?
Aunque estoy deseando perfilar códigos numéricos, no creo (podría estar equivocado) que perfilar otros códigos sea diferente. Quiero un tutorial sobre creación de perfiles y preferiría un PDF en línea (gratuito), pero no me importarían los libros o manuales.
He intentado leer el manual de VTune, pero eso es como tratar de aprender chino leyendo un libro en idioma chino.
Además, ¿es VTune el mejor camino a seguir? Realmente me gusta una GUI y como uso Intel MKL, pensé que sería mejor que Valgrind.
fuente
Si está interesado en el análisis de rendimiento de códigos paralelos, me gusta el libro: Scientific Parallel Computing, L. Ridgway Scott, Terry Clark, Babak Bagheri .
Además, aquí hay algunas diapositivas geniales utilizadas en un curso de escuela de verano impartido (PASI. Valparaíso, Chile. Enero de 2011) por uno de los autores, el material está basado en el libro.
fuente
La herramienta que he usado ampliamente para perfilar es valgrind (en combinación con la interfaz gráfica kcachegrind ). Valgrind es un conjunto de herramientas de análisis dinámico: detección de errores de memoria, búsqueda de errores de subprocesos y creación de perfiles.
Algunas referencias sobre Valgrind:
Desafortunadamente (depende de dónde vienes :-)), valgrind no se ejecuta en Windows, solo en máquinas basadas en Linux y Darwin.
fuente