Anza na Intel Trace Analyzer na Collector

Anza-na-Intel-Trace-Analyzer-and-Collector-bidhaa

Anza na Intel® Trace Analyzer na Collector

Tumia hati hii ya Anza na ufuatiliaji uliokusanywa mapema file ili kupitia uchanganuzi msingi wa utendakazi wa MPI kwa kutumia Intel® Trace Analyzer na Collector.
Intel Trace Analyzer na Collector husaidia kuchunguza ufanisi wa utumiaji wa kiolesura cha kupitisha ujumbe (MPI) na kutambua maeneo-hotspots ya mawasiliano, vikwazo vya ulandanishi, na kusawazisha upakiaji. Kwa maelezo zaidi kuhusu bidhaa, angalia ukurasa wa bidhaa wa Intel Trace Analyzer na Collector.

Pakua Intel Trace Analyzer na Collector

  • kama sehemu ya Intel® oneAPI HPC Toolkit
  • kama chombo cha kujitegemea

Masharti

  • Kabla ya kuendesha Intel Trace Analyzer na Collector, hakikisha kuwa umesakinisha Intel® MPI Library na Intel® oneAPI DPC++/C++ Compiler au Intel® Fortran Compiler.
  • Hii huweka vigezo vya mazingira vinavyohitajika kwa wakusanyaji, Maktaba ya Intel MPI, na Intel Trace Analyzer na Collector, na uko tayari kufuatilia programu zako.
  • Kwa maelezo zaidi, angalia: Mahitaji ya Mfumo wa Intel® oneAPI HPC Toolkit.

Kuelewa Mtiririko wa Kazi

  1. Fuatilia Maombi Yako
  2. Changanua vitendakazi amilifu zaidi vya MPI
  3. Tambua mwingiliano wenye matatizo
  4. Boresha utendakazi wa programu yako kwa kubadilisha kitendakazi cha kusababisha matatizo

Fuatilia Maombi yako ya MPI

Tengeneza ufuatiliaji file kukusanya kumbukumbu za matukio kwa uchanganuzi ufuatao wa tabia ya programu.

  1. Weka mazingira ya kuzindua Intel® Trace Analyzer na Collector kwa kuendesha hati ya setvars kutoka kwa mkurugenzi wa usakinishaji wa oneAPI.
    KUMBUKA
    Kwa chaguomsingi, Intel Trace Analyzer na Collector imesakinishwa kwa /opt/intel/oneapi/itac kwa Linux* OS na kwa Program. Files (x86)\Intel\oneAPI\itac\ya hivi karibuni kwa Windows* OS.
    Kwenye Linux:
    $ source /opt/intel/oneapi/setvars.sh
    Kwenye Windows:
    "C:\Programu Files (x86)\Intel\oneAPI\setvars.bat”
  2. Endesha programu yako ya MPI na utengeneze ufuatiliaji na chaguo la -trace.
    Kwenye Linux:
    $ mpirun -trace -n 4 ./poisson_sendrecv.single
    Kwenye Windows:
    Kusanya programu na kukusanya kuwaeleza.
    Kwa Intel oneAPI DPC++/C++ Compiler, endesha:
    > mpiicc -fuatilia poisson_sendrecv.single.c
    Kwa Mkusanyaji wa Intel Fortran, endesha:
    > mpiifort -fuatilia poisson_sendrecv.single.f
    Ex huyuample hutoa athari (stf*) kwa asample poisson_sendrcv.single MPI maombi
  3. Fungua .stf file na Intel Trace Analyzer na Intel Trace Analyzer na Collector.
    Kwenye Linux:
    $ traceanalyzer ./ poisson_sendrecv.single.stf
    Kwenye Windows:
    traceanalyzer poisson_sendrecv.single.stf

KUMBUKA
Kwa madhumuni ya majaribio, unaweza kupakua ufuatiliaji uliokusanywa mapema file poisson_sendrecv.single.stf kwa poisson iliyotumiwa katika hati hii na uifungue kwa Intel Trace Analyzer na Collector.
The.stf file inafungua katika Ukurasa wa Muhtasari view, ambayo inawakilisha maelezo ya jumla kuhusu utendakazi wa programu yako:Anza-na-Intel-Trace-Analyzer-na-Collector-fig-1Anza-na-Intel-Trace-Analyzer-na-Collector-fig-2KUMBUKA Kwa maelezo zaidi kuhusu Intel Trace Analyzer na utendaji wa Mtozaji, angalia Jifunze Zaidi.

Changanua Kazi Zinazotumika Zaidi za MPI

Changanua tabia ya utumaji programu ya MPI, tafuta vikwazo na utambue usakinishaji ili kutafuta njia za kuboresha utendakazi wa programu.

  1. Kutoka kwa Ukurasa wa Muhtasari fungua Rekodi ya Matukio view kwa kubofya Endelea > Chati > Rekodi ya Matukio kwa uchanganuzi wa kina wa vitendaji vya juu vya MPI.
    Chati inaonyesha shughuli za mchakato wa mtu binafsi kwa wakati.
    Kazi ya maombi ni ya kurudia, ambapo kila marudio yana sehemu ya hesabu na mawasiliano ya MPI.
  2. Tambua marudio moja ya kuzingatia na kuvuta ndani yake kwa kuburuta kipanya chako kwa muda unaohitajika:Anza-na-Intel-Trace-Analyzer-na-Collector-fig-3kuwaeleza view inaonyesha sehemu iliyo ndani ya ufuatiliaji uliochagua. Chati ya Rekodi ya Matukio inaonyesha matukio ambayo yalitumika wakati wa marudio yaliyochaguliwa.
    • Pau mlalo huwakilisha michakato iliyo na kazi zinazoitwa katika michakato hii.
    • Mistari nyeusi inaonyesha ujumbe uliotumwa kati ya michakato. Mistari hii inaunganisha michakato ya kutuma na kupokea.
    • Laini za samawati huwakilisha shughuli za pamoja, kama vile utangazaji au kupunguza shughuli.
  3. Badili hadi Flat Profile tab (A) ili kuangalia kwa karibu kazi zinazotekelezwa katika muda uliochaguliwa ( uliochaguliwa kwenye Rekodi ya Matukio.Anza-na-Intel-Trace-Analyzer-na-Collector-fig-4
  4. Tenganisha chaguo za kukokotoa za MPI ili kuchanganua shughuli za mchakato wa MPI katika programu yako.
    Ili kufanya hivyo, bofya-kulia Mchakato wote > MPI ya Kikundi ( B) kwenye Flat Profile na uchague UngroupMPI. Operesheni hii inafichua simu mahususi za MPI.
  5. Changanua michakato ya kuwasiliana na majirani zao wa moja kwa moja kwa kutumia MPI_Sendrecv mwanzoni mwa kurudia. Kwa mfanoample:Anza-na-Intel-Trace-Analyzer-na-Collector-fig-5
    • a. Katika sampHata hivyo, ubadilishanaji wa data wa MPI_Sendrecv una shida: mchakato haubadilishana data na jirani yake anayefuata hadi ubadilishanaji na ule wa awali ukamilike. Ratiba za Matukio view inaonyesha kizuizi hiki kama ngazi.
    • b. MPI_Allreduce mwishoni mwa marudio husawazisha michakato yote; ndiyo sababu kizuizi hiki kina mwonekano wa ngazi za nyuma.
  6. Tambua usakinishaji kwa kutumia Function Profile na Message Profile views.
    • a. Fungua chati kwa wakati mmoja:
      Katika Kazi Profile chati, fungua kichupo cha Mizani ya Mzigo.
    • Nenda kwenye menyu ya Chati ili kufungua Message Profile.
    • b. Katika kichupo cha Salio la Mzigo, panua MPI_Sendrecv na MPI_Allreduce. Usawazishaji wa Mzigo unaonyesha kuwa muda unaotumika katika MPI_Sendrecv huongezeka kwa nambari ya mchakato, huku muda wa MPI_Allreduce ukipungua.
    • c. Chunguza Mtaalamu wa Ujumbefile Chati hadi kona ya chini kulia.
      Uwekaji wa rangi wa vizuizi unaonyesha kuwa ujumbe unaosafiri kutoka cheo cha juu hadi cha chini unahitaji muda zaidi wakati ujumbe unaosafiri kutoka cheo cha chini hadi cheo cha juu unaonyesha muundo dhaifu hata usio wa kawaida:Anza-na-Intel-Trace-Analyzer-na-Collector-fig-6

Matokeo ya uchambuzi wa kulinganisha yanaonyesha kuwa hakuna mifumo ngumu ya kubadilishana katika programu, ubadilishanaji unafanywa tu na michakato ya jirani. Maelezo yatakuwa muhimu kwa Uboreshaji wa Utendakazi wa Maombi Yako kwa Kubadilisha hatua ya Mawasiliano ili kuboresha muundo wa mawasiliano wa programu.

Tambua Mawasiliano Yenye Mizani

Tazama ombi lako chini ya hali bora na ulinganishe athari asili file na ile iliyoboreshwa ili kutenga mwingiliano wenye matatizo.

  1. Unda bora file:
    • a. Chagua Kina > Uboreshaji au ubofyeAnza-na-Intel-Trace-Analyzer-na-Collector-fig-7 (Idealization) kitufe cha upau wa vidhibiti.
    • b. Angalia vigezo vya ukamilifu katika kisanduku cha mazungumzo ya Uboreshaji (ufuatiliaji bora file jina na kipindi cha ubadilishaji).
    • c. Bofya Anza ili kuboresha ufuatiliaji wako.
  2. Linganisha ufuatiliaji wa asili na ufuatiliaji bora:
    • a. Chagua Kina > Mchoro wa Kutosawazisha au ubofye Anza-na-Intel-Trace-Analyzer-na-Collector-fig-8(Mchoro usio na usawa) kitufe cha upau wa vidhibiti.
    • b. Katika kisanduku cha Kielelezo cha Usawa, bofya Fungua Nyingine File kitufe, nenda kwenye ufuatiliaji ulioboreshwa, na uchague.
    • c. Katika dirisha la Mchoro wa Usawa, bofya kifungo cha Njia ya Jumla na uchague Njia ya Kuvunja.

Anza-na-Intel-Trace-Analyzer-na-Collector-fig-9

Unaweza kuona kuwa MPI_Sendrecv ndio kazi inayotumia wakati mwingi. Uzito wa usawa unaonyeshwa ndani
rangi nyepesi na inajumuisha takriban 10% kwa chaguo za kukokotoa za MPI_Sendrecv. Huu ndio wakati ambao michakato hutumia kusubiriana.

Boresha Utendaji Wako wa Maombi kwa Kubadilisha Mawasiliano

  1. Boresha utendakazi wa programu ya MPI kwa kubadilisha uzuiaji hadi mawasiliano yasiyozuia.
    Katika msimbo wako badilisha safu ya MPI_Sendrcv na mawasiliano yasiyozuia: MPI_Isend na MPI_Irecv. Kwa mfanoample: Kijisehemu cha msimbo asilia:
    // ubadilishaji wa mipaka
    kubadilishana utupu(para* p, grid* gr){
    ndani i,j;
    MPI_Hali status_100, status_200, status_300, status_400;
    // tuma chini safu ya kwanza
    MPI_Tuma(gr->x_new[1], gr->lcol+2, MPI_DOUBLE, gr->down, 100, MPI_COMM_WORLD); MPI_Recv(gr->x_new[gr->lrow+1], gr->lcol+2, MPI_DOUBLE, gr->up, 100, MPI_COMM_WORLD,
    &status_100);
    // tuma safu ya mwisho
    MPI_Tuma(gr->x_new[gr->lrow], gr->lcol+2, MPI_DOUBLE, gr->up, 200, MPI_COMM_WORLD);
    MPI_Recv(gr->x_new[0], gr->lcol+2, MPI_DOUBLE, gr->down, 200, MPI_COMM_WORLD, &status_200);
    Tumia Ulinganisho wa Intel Trace Analyzer view kulinganisha programu iliyosasishwa na iliyorekebishwa
    // nakili safu wima ya kushoto kwa safu za tmp
    if(gr-> left != MPI_PROC_NULL){
    gr->x_new[i][gr->lcol+1] = right_col[i]; right_col[i] = gr->x_new[i][gr->lcol];
    // tuma kulia
    MPI_Tuma(kulia_col, gr->lrow+2, MPI_DOUBLE, gr->kulia, 400, MPI_COMM_WORLD); }
    ikiwa(gr->kushoto != MPI_PROC_NULL)
    {
    MPI_Recv(left_col, gr->lrow+2, MPI_DOUBLE, gr->left, 400, MPI_COMM_WORLD,&status_400); kwa(i=0; i< gr->lrow+2; i++
    {
    gr->x_new[i][0] = left_col[i];
    }
    }
    Kijisehemu cha msimbo kilichosasishwa
    MPI_Ombi ombi[7];
    // tuma chini safu ya kwanza
    MPI_Isend(gr->x_new[1], gr->lcol+2, MPI_DOUBLE, gr->down, 100, MPI_COMM_WORLD, &req[0]);
    MPI_Irecv(gr->x_new[gr->lrow+1], gr->lcol+2, MPI_DOUBLE, gr->up, 100, MPI_COMM_WORLD, &req[1]);
    …..
    MPI_Waitall(7, req, MPI_STATUSES_IGNORE);
    Mara baada ya kusahihishwa, kurudia mara moja kwa programu iliyosasishwa kutaonekana kama ex ifuatayoample:Anza-na-Intel-Trace-Analyzer-na-Collector-fig-10
  2. Tumia Ulinganisho wa Intel Trace Analyzer view kulinganisha programu iliyosasishwa na iliyosasishwa. Linganisha athari mbili kwa msaada wa Ulinganisho View, kwenda View > Linganisha. Ulinganisho View inaonekana sawa na:Anza-na-Intel-Trace-Analyzer-na-Collector-fig-11Katika Ulinganisho View, unaweza kuona kwamba kutumia mawasiliano yasiyo ya kuzuia husaidia kuondoa serial na kupunguza muda wa mawasiliano ya michakato.
    KUMBUKA Kwa maelezo zaidi kuhusu utendakazi wa kiwango cha nodi ya programu yako, angalia hati za zana husika: Intel® VTune™ Pro.filer Uchambuzi wa Msimbo wa MPI na Kuchanganua programu za Intel® MPI kwa kutumia Intel® Advisor.

Jifunze Zaidi

Gundua nyenzo zifuatazo kwa maelezo zaidi kuhusu Intel Trace Analyzer na Collector.Anza-na-Intel-Trace-Analyzer-na-Collector-fig-12Anza-na-Intel-Trace-Analyzer-na-Collector-fig-13

Matangazo na Kanusho

  • Teknolojia za Intel zinaweza kuhitaji vifaa, programu au uanzishaji wa huduma.
  • Hakuna bidhaa au sehemu inaweza kuwa salama kabisa.
  • Gharama na matokeo yako yanaweza kutofautiana.
  • © Intel Corporation. Intel, nembo ya Intel, na alama zingine za Intel ni chapa za biashara za Intel Corporation au kampuni zake tanzu. Majina na chapa zingine zinaweza kudaiwa kama mali ya wengine.
  • Hakuna leseni (ya kueleza au kudokezwa, kwa njia ya estoppel au vinginevyo) kwa haki zozote za uvumbuzi inatolewa na hati hii.
  • Bidhaa zilizoelezewa zinaweza kuwa na kasoro za muundo au hitilafu zinazojulikana kama errata ambayo inaweza kusababisha bidhaa kupotoka kutoka kwa vipimo vilivyochapishwa. Makosa ya sasa yanapatikana kwa ombi.
  • Intel inakanusha dhamana zote zilizo wazi na zilizodokezwa, ikijumuisha bila kikomo, dhamana zilizodokezwa za uuzaji, kufaa kwa madhumuni mahususi, na kutokiuka, pamoja na dhamana yoyote inayotokana na mwendo wa utendaji, shughuli, au matumizi katika biashara.

Nyaraka / Rasilimali

intel Anza na Intel Trace Analyzer na Collector [pdf] Mwongozo wa Mtumiaji
Anza na Intel Trace Analyzer na Collector, Anza na Intel, Trace Analyzer na Collector, Collector

Marejeleo

Acha maoni

Barua pepe yako haitachapishwa. Sehemu zinazohitajika zimetiwa alama *