EngelsFransSpaans

Ad


OnWorks-favicon

likwid-perfctr - Online in de cloud

Voer likwid-perfctr uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht likwid-perfctr die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


likwid-perfctr - hardwareprestatietellers configureren en uitlezen op x86-cpu's

KORTE INHOUD


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

PRODUCTBESCHRIJVING


likwid-perfctr is een lichtgewicht opdrachtregeltoepassing om te configureren en uit te lezen
monitoringgegevens voor hardwareprestaties op ondersteunde x86-processors. Het kan meten als
wrapper zonder de gemeten applicatie te wijzigen of met marker-API-functies binnen de
code, waarmee de tellers worden in- en uitgeschakeld. Er zijn vooraf geconfigureerde groepen met nuttige
gebeurtenissets en afgeleide statistieken. Bovendien kunnen willekeurige gebeurtenissen op maat worden gemeten
evenementensets. De marker-API kan meerdere benoemde regio's meten. Resultaten worden verzameld op
meerdere oproepen. De volgende x86-processors worden ondersteund:

· Intel Kern 2: alle varianten. Tellers: PMC[0-1], FIXC[0-2]

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

· Intel Nehalem EX: Tellers: 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:
Tellers: PMC[0-3], FIXC[0-2], UPMC[0-7]

· Intel Westmere EX: Tellers: 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 Zand- Brug: volledige RAPL-ondersteuning. Tellers: PMC[0-3], FIXC[0-2], PWR[0-3]

· Intel Zand- Brug EP: gedeeltelijke ondersteuning voor uncore, volledige RAPL-ondersteuning. Tellers:
PMC[0-3], FIXC[0-2], PWR[0-3]. MBOX[0-3]C[0-3]

· Intel Klimop Brug: volledige RAPL-ondersteuning. Tellers: PMC[0-3], FIXC[0-2], PWR[0-3]

· Intel Klimop Brug EP: gedeeltelijke ondersteuning voor uncore, volledige RAPL-ondersteuning. Tellers:
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 Haswel: volledige RAPL-ondersteuning. Tellers: PMC[0-3], FIXC[0-2], PWR[0-3]

· Intel Haswell EP: geen uncore-ondersteuning, volledige RAPL-ondersteuning. Tellers: PMC[0-3],
FIXC[0-2], PWR[0-3]

· Intel Atoom Zilvermont: volledige RAPL-ondersteuning. Tellers: PMC[0-1], FIXC[0-2], PWR[0-1]

· Intel Pentium M: Banias- en Dothan-varianten. Tellers: PMC[0-1]

· Intel P6: Getest op P3.

· AMD K8: alle varianten. Tellers: PMC[0-3]

· AMD K10: Verwerkers gebaseerd op Barcelona, ​​Shanghai, Istanbul en MagnyCours. Tellers:
PMC[0-3]

OPTIES


-v drukt versie-informatie af naar standaarduitvoer en sluit vervolgens af.

-h drukt een helpbericht af naar standaarduitvoer en sluit vervolgens af.

-H drukt een groepshelpbericht af (gebruik dit samen met de schakelaar -g).

-V uitgebreide uitvoer tijdens uitvoering voor foutopsporing.

-m uitgevoerd in de marker-API-modus

-a print beschikbare prestatiegroepen voor de huidige processor.

-e print beschikbare tellers en prestatiegebeurtenissen van de huidige processor.

-o
sla alle uitvoer op in een bestand in plaats van stdout. Voor de bestandsnaam het volgende
tijdelijke aanduidingen worden ondersteund: %j voor PBS_JOBID, %r voor MPI RANK (alleen Intel MPI op
op dit moment), %h hostnaam en %p voor proces-pid. De tijdelijke aanduidingen moeten zijn
gescheiden door een onderstrepingsteken, bijvoorbeeld -o test_%h_%p. U moet een achtervoegsel opgeven voor de
bestandsnaam. Voor txt wordt de uitvoer afgedrukt zoals het bestand is. Andere achtervoegsels activeren a
filter op de uitgang. Beschikbare filters zijn csv (door komma's gescheiden waarden) en xml
op dit moment.

-O Druk geen tabellen af ​​voor resultaten, maar gebruik in plaats daarvan eenvoudig te analyseren CSV.

-i druk cpuid-informatie af over de processor en over Intel Performance Monitoring
functies en sluit vervolgens af.

-c
specificeer een numerieke lijst van processors. De lijst kan meerdere items bevatten,
gescheiden door komma's en bereiken. Bijvoorbeeld 0,3,9-11.

-C
specificeer een numerieke lijst van processors. De lijst kan meerdere items bevatten,
gescheiden door komma's en bereiken. Bijvoorbeeld 0,3,9-11. Deze variant zal ook pinnen
de draden naar de kernen. Er kunnen ook logische nummeringen worden gebruikt.

-g <prestatie groep> or <prestatie gebeurtenis reeks tekenreeks>
Geef aan welke prestatiegroep moet worden gemeten. Dit kan een van de tags zijn waarmee wordt uitgevoerd
de -a vlag. Ook kan een aangepaste gebeurtenisset worden gespecificeerd door een door komma's gescheiden lijst van
evenementen. Elke gebeurtenis heeft het formaat eventId:register, waarbij het register één is
van een architectuur ondersteunde prestatietellerregisters.

-t <frequentie of metingen>
tijdlijnmodus voor tijdsopgeloste metingen, mogelijke achtervoegsels 's' en 'ms' zoals
100ms. De uitvoer heeft het formaat:

<Resultaat draad0> <Resultaat draad1> ...

-S
stethoscoopmodus met duur in seconden. Kan worden gebruikt om een ​​toepassing te meten
van de buitenkant.

VOORBEELD


Omdat likwid-perfctr maatregelen voor verwerkers en niet voor afzonderlijke applicaties zijn noodzakelijk
om ervoor te zorgen dat processen en threads worden vastgemaakt aan specifieke bronnen. Je kunt beide pinnen
de applicatie zelf of gebruik de ingebouwde pinfunctionaliteit.

1. Als wikkel met prestatiegroep:

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

Het bovenliggende proces is vastgemaakt aan processor 0, Thread 0 aan processor 1 en Thread 1 aan
verwerker 2.

2. Als wrapper met aangepaste gebeurtenis ingesteld op AMD:

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

Er wordt gespecificeerd dat het evenement INSTRUCTIONS_RETIRED_SSE wordt gemeten op de teller PMC0 en
de gebeurtenis CPU_CLOCKS_UNHALTED op teller PMC3. Het is mogelijk de looptijd van te berekenen
alle threads gebaseerd op de CPU_CLOCKS_UNHALTED evenement. Als je dit wilt, moet je dit opnemen
deze gebeurtenis in uw aangepaste gebeurtenisreeks, zoals hierboven weergegeven.

3. Als wrapper met aangepaste gebeurtenis ingesteld op Intel:

likwid-perfctr -C 0 -g INSTR_RETIRED_ANY:FIXC0,CPU_CLK_UNHALTED_CORE:FIXC1 ./mijnApp

Op Intel-processors worden vaste gebeurtenissen gemeten op speciale tellers. Dit zijn
INSTR_RETIRED_ANY , CPU_CLK_UNHALTED_CORE. en CPU_CLK_UNHALTED_REF Als u configureert
deze vaste tellers, likwid-perfctr berekent de runtime- en CPI-statistieken voor uw
rennen.

4. Gebruik de marker API om slechts delen van uw code te meten (dit kan zowel met
groepen of aangepaste evenementensets):

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

Je moet je code koppelen aan liblikwid.a/.so en de marker API-aanroepen gebruiken. De
Het volgende codefragment toont de benodigde aanroepen:

#erbij betrekken

/* slechts één thread roept init */
als (threadId == 0)
{
likwid_markerInit();
}
/* als u een toepassing met schroefdraad wilt meten
* je moet likwid_markerThreadInit() aanroepen voor
* voorbereiding, voorbeeld met OpenMP */
#pragma omp parallel
{
likwid_markerThreadInit();
}
BARRIÈRE;
likwid_markerStartRegion("Benchmark");
/* uw te meten code staat hier.*/

likwid_markerStopRegion("Benchmark");
BARRIÈRE;
/* opnieuw kan slechts één thread de markeringen sluiten */
als (threadId == 0)
{
likwid_markerClose();
}

5. Likwid gebruiken in de tijdlijnmodus:

likwid-perfctr -c 0-3 -g FLOPS_DP -t 300ms ./mijnApp > uit.txt

Hierdoor worden de tellers elke 300 ms op de fysieke kernen 0-3 uitgelezen en worden de resultaten ernaar geschreven
uit.txt. Voor de tijdlijnmodus is er een frontend-applicatie likwid-scope, die dit mogelijk maakt
live plotten van geselecteerde evenementen. Kijk voor meer codevoorbeelden naar de likwid WIKI
Pagina's. De processen zijn niet vastgemaakt aan de CPU's 0-3.

6. Likwid gebruiken in de stethoscoopmodus:

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

Hierdoor worden de tellers gestart en na 2 seconden op de fysieke kernen 0-3 uitgelezen en geschreven
de resultaten zijn uitstekend. De processen zijn niet vastgemaakt aan de CPU's 0-3.

Gebruik likwid-perfctr online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

Linux-commando's

Ad