InglésFrancésEspañol

Ad


icono de página de OnWorks

likwid-perfctr - Online en la nube

Ejecute likwid-perfctr en el proveedor de alojamiento gratuito de OnWorks sobre Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando likwid-perfctr que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


likwid-perfctr - configurar y leer contadores de rendimiento de hardware en cpus x86

SINOPSIS


likwid-perfctr [-vhHVmaeiMoO] [-c / -C ] [-g or
] [-t ] [-S ] [-s ] [-o
]

DESCRIPCIÓN


likwid-perfctr es una aplicación de línea de comandos ligera para configurar y leer
datos de supervisión del rendimiento del hardware en procesadores x86 compatibles. Puede medir como
envoltorio sin cambiar la aplicación medida o con funciones API de marcador dentro del
código, que encenderá y apagará los contadores. Hay grupos preconfigurados con útiles
conjuntos de eventos y métricas derivadas. Los eventos adicionalmente arbitrarios se pueden medir con
conjuntos de eventos. La API de marcador puede medir varias regiones con nombre. Los resultados se acumulan en
múltiples llamadas. Se admiten los siguientes procesadores x86:

· Intel Core 2: todas las variantes. Contadores: PMC [0-1], FIXC [0-2]

· Intel Nehalem: Contadores: PMC [0-3], FIXC [0-2], UPMC [0-7]

· Intel Nehalem EX: Contadores: PMC [0-3], FIXC [0-2], MBOX [0-1] C [0-5], BBOX [0-1] C [0-3],
RBOX [0-1] C [0-7], WBOX [0-5], UBOX0, SBOX [0-1] C [0-3], CBOX [0-9] C [0-4]

· Intel Westmere:
Contadores: PMC [0-3], FIXC [0-2], UPMC [0-7]

· Intel Westmere EX: Contadores: PMC [0-3], FIXC [0-2], MBOX [0-1] C [0-5], BBOX [0-1] C [0-3],
RBOX [0-1] C [0-7], WBOX [0-5], UBOX0, SBOX [0-1] C [0-3], CBOX [0-9] C [0-4]

· Intel Sandy Puente: soporte completo de RAPL. Contadores: PMC [0-3], FIXC [0-2], PWR [0-3]

· Intel Sandy Puente EP: Soporte parcial para soporte RAPL completo y sin núcleo. Contadores:
PMC [0-3], FIXC [0-2], PWR [0-3]. MBOX [0-3] C [0-3]

· Intel Ivy Puente: soporte completo de RAPL. Contadores: PMC [0-3], FIXC [0-2], PWR [0-3]

· Intel Ivy Puente EP: Soporte parcial para soporte RAPL completo y sin núcleo. Contadores:
PMC [0-3], FIXC [0-2], PWR [0-3], CBOX [0-9] C [0-3], MBOX [0-3] C [0-3], MBOX [0-3] FIX

· Intel Haswell: soporte completo de RAPL. Contadores: PMC [0-3], FIXC [0-2], PWR [0-3]

· Intel Haswell EP: sin soporte básico, soporte completo de RAPL. Contadores: PMC [0-3],
FIXC [0-2], PWR [0-3]

· Intel Atom Silvermont: soporte completo de RAPL. Contadores: PMC [0-1], FIXC [0-2], PWR [0-1]

· Intel Pentium M: Variantes de Banias y Dothan. Contadores: PMC [0-1]

· Intel P6: Probado en P3.

· AMD K8: todas las variantes. Contadores: PMC [0-3]

· AMD K10: Procesadores basados ​​en Barcelona, ​​Shanghai, Estambul, MagnyCours. Contadores:
PMC [0-3]

CAMPUS


-v imprime la información de la versión en la salida estándar y luego sale.

-h imprime un mensaje de ayuda en la salida estándar y luego sale.

-H imprime el mensaje de ayuda del grupo (úselo junto con el interruptor -g).

-V salida detallada durante la ejecución para la depuración.

-m ejecutar en modo de API de marcador

-a Imprime los grupos de rendimiento disponibles para el procesador actual.

-e Imprime los contadores disponibles y los eventos de rendimiento del procesador actual.

-o
almacena toda la salida en un archivo en lugar de la salida estándar. Para el nombre de archivo lo siguiente
Se admiten marcadores de posición:% j para PBS_JOBID,% r para MPI RANK (solo Intel MPI en
el momento),% h nombre de host y% p para el proceso pid. Los marcadores de posición deben ser
separados por un guión bajo como, por ejemplo, -o test_% h_% p. Debe especificar un sufijo al
nombre del archivo. Para txt, la salida se imprime como está en el archivo. Otros sufijos desencadenan un
filtro en la salida. Los filtros disponibles son csv (valores separados por comas) y xml
En el momento.

-O No imprima tablas para obtener resultados, utilice en su lugar CSV fácilmente analizable.

-i imprimir información de cpuid sobre el procesador y en Intel Performance Monitoring
características, luego salga.

-c
especificar una lista numérica de procesadores. La lista puede contener varios elementos,
separados por comas y rangos. Por ejemplo 0,3,9-11.

-C
especificar una lista numérica de procesadores. La lista puede contener varios elementos,
separados por comas y rangos. Por ejemplo 0,3,9-11. Esta variante también fijará
los hilos a los núcleos. También se pueden utilizar numeraciones lógicas.

-g <performance grupo> or <performance evento set cadena>
especificar qué grupo de desempeño medir. Esta puede ser una de las etiquetas de salida con
la bandera -a. Además, un conjunto de eventos personalizado se puede especificar mediante una lista separada por comas de
eventos. Cada evento tiene el formato eventId: register con el registro siendo uno
de una arquitectura de registros de contador de rendimiento soportados.

-t <frequency of medidas>
modo de línea de tiempo para mediciones con resolución de tiempo, posibles sufijos 's' y 'ms' como
100 ms. La salida tiene el formato:

<Result thread0> <Result thread1> ...

-S
modo estetoscopio con duración en segundos. Puede usarse para medir una aplicación
desde fuera.

EJEMPLO


Gracias likwid-perfctr medidas en procesadores y no aplicaciones individuales es necesario
para garantizar que los procesos y subprocesos estén anclados a recursos dedicados. Puedes anclar
la aplicación usted mismo o utilice la función de pin incorporada.

1. Como envoltorio con grupo de rendimiento:

likwid-perfctr -C 0 - 2 -g TLB ./bancocache -n 2 -l 1048576 -i 100 -t Transmite

El proceso principal está anclado al procesador 0, el subproceso 0 al procesador 1 y el subproceso 1 al
procesador 2.

2. Como contenedor con evento personalizado configurado en AMD:

likwid-perfctr -C 0 - 4 -g INSTRUCTIONS_RETIRED_SSE: PMC0, CPU_CLOCKS_UNHALTED: PMC3 ./miAplicación

Se especifica que el evento INSTRUCCIONES_RETIRED_SSE se mide en el mostrador PMC0 y
el evento CPU_CLOCKS_UNHALTED en el mostrador PMC3. Es posible calcular el tiempo de ejecución de
todos los hilos basados ​​en el CPU_CLOCKS_UNHALTED evento. Si quieres esto tienes que incluir
este evento en su cadena de eventos personalizada como se muestra arriba.

3. Como contenedor con evento personalizado configurado en Intel:

likwid-perfctr -C 0 -g INSTR_RETIRED_ANY: FIXC0, CPU_CLK_UNHALTED_CORE: FIXC1 ./miAplicación

En los procesadores Intel, los eventos fijos se miden en contadores dedicados. Estos son
INSTR_RETIRED_ANY , CPU_CLK_UNHALTED_CORE. y CPU_CLK_UNHALTED_REF Si configura
estos contadores fijos, likwid-perfctr calculará el tiempo de ejecución y las métricas de CPI para su
huye.

4. Usar la API de marcadores para medir solo partes de su código (esto se puede usar tanto con
grupos o conjuntos de eventos personalizados):

likwid-perfctr -m -C 0 - 4 -g INSTRUCTIONS_RETIRED_SSE: PMC0, CPU_CLOCKS_UNHALTED: PMC3
./bancocache

Tienes que vincular tu código con liblikwid.a / .so y usar las llamadas a la API de marcador. los
El siguiente fragmento de código muestra las llamadas necesarias:

#incluir

/ * solo un hilo llama a init * /
si (threadId == 0)
{
likwid_markerInit ();
}
/ * si desea medir una aplicación enhebrada
* tienes que llamar likwid_markerThreadInit () para
* preparación, ejemplo con OpenMP * /
#pragma omp paralelo
{
likwid_markerThreadInit ();
}
BARRERA;
likwid_markerStartRegion ("Punto de referencia");
/ * su código a medir está aquí. * /

likwid_markerStopRegion ("Punto de referencia");
BARRERA;
/ * nuevamente, solo un hilo puede cerrar los marcadores * /
si (threadId == 0)
{
likwid_markerClose ();
}

5. Usando likwid en el modo de línea de tiempo:

likwid-perfctr -c 0 - 3 -g FLOPS_DP -t 300ms ./miAplicación > fuera.txt

Esto leerá los contadores cada 300 ms en los núcleos físicos 0-3 y escribirá los resultados en
out.txt. Para el modo de línea de tiempo hay una aplicación frontend likwid-scope, que permite
trazado en vivo de eventos seleccionados. Para obtener más ejemplos de código, eche un vistazo a likwid WIKI
páginas. Los procesos son no anclado a las CPU 0-3.

6. Uso de likwid en modo estetoscopio:

likwid-perfctr -c 0 - 3 -g FLOPS_DP -S 2s

Esto iniciará los contadores y los leerá después de 2 segundos en los núcleos físicos 0-3 y escribirá
los resultados a stdout. Los procesos son no anclado a las CPU 0-3.

Use likwid-perfctr en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

Comandos de Linux

Ad