אנגליתצרפתיתספרדי

Ad


סמל OnWorks

likwid-perfctr - מקוון בענן

הפעל את likwid-perfctr בספק אירוח חינמי של OnWorks על אובונטו מקוון, פדורה מקוון, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

זוהי הפקודה likwid-perfctr שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


likwid-perfctr - הגדר וקרא את מוני ביצועי החומרה במעבד x86

תַקצִיר


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

תיאור


likwid-perfctr הוא יישום שורת פקודה קל משקל להגדרה ולקריאה
נתוני ניטור ביצועי חומרה במעבדי x86 נתמכים. זה יכול למדוד גם כ
עטיפה מבלי לשנות את היישום הנמדד או עם פונקציות API של סמן בתוך
קוד, שיפעיל ויכבה את המונים. ישנן קבוצות מוגדרות מראש עם שימושי
ערכות אירועים ומדדים נגזרים. בנוסף, ניתן למדוד אירועים שרירותיים בהתאמה אישית
ערכות אירועים. ה-API של סמן יכול למדוד מספר אזורים בעלי שם. התוצאות מצטברות ב
שיחות מרובות. מעבדי x86 הבאים נתמכים:

· אינטל ליבה 2: כל הגרסאות. מונים: PMC[0-1], FIXC[0-2]

· אינטל נחלם: מונים: PMC[0-3], FIXC[0-2], UPMC[0-7]

· אינטל נחלם EX: מונים: 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]

· אינטל ווסטמיר:
מונים: PMC[0-3], FIXC[0-2], UPMC[0-7]

· אינטל ווסטמיר EX: מונים: 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]

· אינטל חולי לְגַשֵׁר: תמיכה מלאה ב-RAPL. מונים: PMC[0-3], FIXC[0-2], PWR[0-3]

· אינטל חולי גשר נ.ב: תמיכה חלקית עבור uncore, תמיכה מלאה ב-RAPL. מונים:
PMC[0-3], FIXC[0-2], PWR[0-3]. MBOX[0-3]C[0-3]

· אינטל קיסוס לְגַשֵׁר: תמיכה מלאה ב-RAPL. מונים: PMC[0-3], FIXC[0-2], PWR[0-3]

· אינטל קיסוס גשר נ.ב: תמיכה חלקית עבור uncore, תמיכה מלאה ב-RAPL. מונים:
PMC[0-3], FIXC[0-2], PWR[0-3], CBOX[0-9]C[0-3], MBOX[0-3]C[0-3], MBOX[0-3]תיקון

· אינטל הסוול: תמיכה מלאה ב-RAPL. מונים: PMC[0-3], FIXC[0-2], PWR[0-3]

· אינטל Haswell נ.ב: ללא תמיכה ללא ליבה, תמיכה מלאה ב-RAPL. מונים: PMC[0-3],
FIXC[0-2], PWR[0-3]

· אינטל אטום סילברמונט: תמיכה מלאה ב-RAPL. מונים: PMC[0-1], FIXC[0-2], PWR[0-1]

· אינטל פנטיום M: גרסאות בניאס ודותן. מונים: PMC[0-1]

· אינטל P6: נבדק ב-P3.

· AMD K8: כל הגרסאות. מונים: PMC[0-3]

· AMD K10: מעבדים מבוססי ברצלונה, שנחאי, איסטנבול, MagnyCours. מונים:
PMC[0-3]

אפשרויות


-v מדפיס מידע גרסה לפלט סטנדרטי, ואז יוצא.

-h מדפיס הודעת עזרה לפלט סטנדרטי, ואז יוצא.

-H מדפיס הודעת עזרה קבוצתית (השתמש יחד עם מתג -g).

-V פלט מילולי במהלך הביצוע עבור ניפוי באגים.

-m הפעל במצב API של סמן

-a להדפיס קבוצות ביצועים זמינות עבור המעבד הנוכחי.

-e להדפיס מונים זמינים ואירועי ביצועים של המעבד הנוכחי.

-o
אחסן את כל הפלט לקובץ במקום stdout. לשם הקובץ הבא
מצייני מיקום נתמכים: %j עבור PBS_JOBID, %r עבור MPI RANK (רק Intel MPI ב-
הרגע), %h שם מארח ו-%p עבור process pid. מצייני המיקום חייבים להיות
מופרד על ידי קו תחתון כמו, למשל, -o test_%h_%p. עליך לציין סיומת ל-
שם קובץ. עבור txt הפלט מודפס כפי שהוא לקובץ. סיומות אחרות מפעילות את א
מסנן על הפלט. המסננים הזמינים הם csv (ערכים מופרדים בפסיק) ו-xml
כרגע.

-O אל תדפיס טבלאות לתוצאות, השתמש ב-CSV שניתן לנתח בקלות במקום זאת.

-i הדפס מידע מעבד על מעבד ועל Intel Performance Monitoring
תכונות ואז צא.

-c
ציין רשימה מספרית של מעבדים. הרשימה עשויה להכיל מספר פריטים,
מופרדים על ידי פסיק וטווחים. למשל 0,3,9-11.

-C
ציין רשימה מספרית של מעבדים. הרשימה עשויה להכיל מספר פריטים,
מופרדים על ידי פסיק וטווחים. למשל 0,3,9-11. וריאציה זו גם תצמיד
החוטים אל הליבות. ניתן להשתמש גם במספורים לוגיים.

-g <ביצועים קבוצה> or <ביצועים אירוע סט מחרוזת>
ציין איזו קבוצת ביצועים למדוד. זה יכול להיות אחד התגים הפלט עם
הדגל -a. כמו כן, ניתן לציין סט אירועים מותאם אישית באמצעות רשימה מופרדת בפסיקים של
אירועים. לכל אירוע יש את הפורמט eventId:register כשהרישום הוא אחד
של אוגרי מונה ביצועים נתמכים בארכיטקטורה.

-t <תדירות of מידות>
מצב ציר זמן עבור מדידות שנפתרו בזמן, סיומות אפשריות 's' ו-'ms' כמו
100 אלפיות השנייה לפלט יש את הפורמט:

<תוצאה thread0> <תוצאה thread1> ...

-S
מצב סטטוסקופ עם משך שניות. ניתן להשתמש כדי למדוד יישום
מבחוץ.

דוגמא


כי likwid-perfctr יש צורך באמצעים על מעבדים ולא על יישומים בודדים
כדי להבטיח שתהליכים וחוטים מוצמדים למשאבים ייעודיים. אתה יכול להצמיד
היישום בעצמך או השתמש בפונקציונליות הפינים המובנית.

1. כעטיפה עם קבוצת ביצועים:

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

תהליך האב מוצמד למעבד 0, שרשור 0 למעבד 1 וחוט 1 למעבד
מעבד 2.

2. כעטיפה עם אירוע מותאם אישית שהוגדר ב-AMD:

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

מצוין כי האירוע INSTRUCTIONS_RETIRED_SSE נמדד על מונה PMC0 ו
האירוע CPU_CLOCKS_UNHALTED על הדלפק PMC3. אפשר לחשב את זמן הריצה של
כל השרשורים מבוססים על CPU_CLOCKS_UNHALTED מִקרֶה. אם אתה רוצה את זה אתה צריך לכלול
אירוע זה במחרוזת האירועים המותאמת אישית שלך כפי שמוצג למעלה.

3. כעטיפה עם אירוע מותאם אישית ב-Intel:

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

במעבדי אינטל נמדדים אירועים קבועים במונים ייעודיים. אלו הם
INSTR_RETIRED_ANY , CPU_CLK_UNHALTED_CORE. ו CPU_CLK_UNHALTED_REF אם תגדיר
המונים הקבועים האלה, likwid-perfctr יחשב את מדדי זמן הריצה והמחיר לצרכן עבורך
לָרוּץ.

4. שימוש ב-Marker API כדי למדוד רק חלקים מהקוד שלך (ניתן להשתמש בזה עם שניהם
קבוצות או ערכות אירועים מותאמים אישית):

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

אתה צריך לקשר את הקוד שלך מול liblikwid.a/.so ולהשתמש בקריאות API של סמן. ה
קטע הקוד הבא מציג את השיחות הדרושות:

#לִכלוֹל

/* רק שרשור אחד קורא ל-init */
if (ThreadId == 0)
{
likwid_markerInit();
}
/* אם אתה רוצה למדוד יישום שרשור
* אתה צריך לקרוא likwid_markerThreadInit() עבור
* הכנה, דוגמה עם OpenMP */
#pragma omp מקביל
{
likwid_markerThreadInit();
}
מַחסוֹם;
likwid_markerStartRegion("Benchmark");
/* הקוד שלך למדידה נמצא כאן.*/

likwid_markerStopRegion("Benchmark");
מַחסוֹם;
/* שוב רק חוט אחד יכול לסגור את הסמנים */
if (ThreadId == 0)
{
likwid_markerClose();
}

5. שימוש ב-likwid במצב ציר זמן:

likwid-perfctr -c 0-3 -g FLOPS_DP -t 300ms ./myApp > out.txt

זה יקרא את המונים כל 300 אלפיות השנייה על הליבות הפיזיות 0-3 ויכתוב את התוצאות
out.txt. עבור מצב ציר זמן יש יישום חזיתי likwid-scope, המאפשר
תכנון חי של אירועים נבחרים. לדוגמאות קוד נוספות, עיין ב-likwid WIKI
דפים. התהליכים הם לֹא מוצמד למעבדים 0-3.

6. שימוש ב-likwid במצב סטטוסקופ:

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

זה יתחיל את המונים ויקרא אותם לאחר 2 שניות על הליבות הפיזיות 0-3 ויכתוב
התוצאות ל-stdout. התהליכים הם לֹא מוצמד למעבדים 0-3.

השתמש ב-likwid-perfctr באינטרנט באמצעות שירותי onworks.net


שרתים ותחנות עבודה בחינם

הורד אפליקציות Windows & Linux

פקודות לינוקס

Ad