E hoʻomaka me Intel Trace Analyzer a me ka mea hōʻiliʻili
E hoʻomaka me Intel® Trace Analyzer and Collector
E hoʻohana i kēia palapala Hoʻomaka a me kahi meheu i hōʻiliʻili mua ʻia file e hele i kahi loiloi hana MPI kumu me Intel® Trace Analyzer and Collector.
Kōkua ʻo Intel Trace Analyzer a me Collector i ka ʻimi ʻana i ka maikaʻi o ka hoʻohana ʻana i ka message passing interface (MPI) a ʻike i nā wahi piko kamaʻilio, nā bottlenecks synchronization, a me ke kaupaona ʻana. No ka 'ike hou aku e pili ana i ka huahana, e nana i ka Intel Trace Analyzer and Collector product page.
Hoʻoiho iā Intel Trace Analyzer and Collector
- ma ke ʻano he ʻāpana o Intel® oneAPI HPC Toolkit
- ma ke ʻano he mea hana kūʻokoʻa
Nā mea e pono ai
- Ma mua o ka holo ʻana iā Intel Trace Analyzer and Collector, e hōʻoia ʻoe ua hoʻokomo i ka Intel® MPI Library a me Intel® oneAPI DPC++/C++ Compiler a i ʻole Intel® Fortran Compiler.
- Hoʻonohonoho kēia i nā ʻano hoʻololi kaiapuni i koi ʻia no nā mea hoʻopili, ka Intel MPI Library, a me Intel Trace Analyzer and Collector, a ua mākaukau ʻoe e ʻimi i kāu mau noi.
- No ka 'ike hou aku, e 'ike i: Intel® oneAPI HPC Toolkit System Requirements.
E hoʻomaopopo i ke Kaʻina Hana
- E hahai i kāu palapala noi
- E noʻonoʻo i nā hana MPI ikaika loa
- E ʻike i nā pilina pilikia
- E hoʻomaikaʻi i kāu hana noi ma ka hoʻololi ʻana i ka hana pilikia
E ʻimi i kāu palapala MPI
E hana i kahi meheu file e hōʻiliʻili i nā moʻolelo hanana no ka loiloi ʻano noiʻi.
- E hoʻonohonoho i ke kaiapuni no ka hoʻomaka ʻana i ka Intel® Trace Analyzer a me Collector ma ka holo ʻana i ka palapala setvars mai ka luna hoʻonohonoho oneAPI.
HOOLAHA
Ma ka maʻamau, ua hoʻokomo ʻia ʻo Intel Trace Analyzer a me Collector i /opt/intel/oneapi/itac no Linux* OS a i ka Polokalamu. Files (x86)\Intel\oneAPI\itac\hou loa no Windows* OS.
Ma Linux:
$ kumu /opt/intel/oneapi/setvars.sh
Ma Windows:
“C:\Pahana Files (x86)\Intel\oneAPI\setvars.bat” - E holo i kāu noi MPI a hana i kahi trace me ke koho -trace.
Ma Linux:
$ mpirun -trace -n 4 ./poisson_sendrecv.single
Ma Windows:
E hōʻuluʻulu i ka app a hōʻiliʻili i ka trace.
No Intel oneAPI DPC++/C++ Compiler, holo:
> mpiicc -trace poisson_sendrecv.single.c
No Intel Fortran Compiler, holo:
> mpiifort -trace poisson_sendrecv.single.f
ʻO kēia exampLe hoʻopuka i kahi trace (stf*) no ka meaample poisson_sendrcv.hoʻokahi MPI palapala noi - E wehe i ka .stf i hana ʻia file me Intel Trace Analyzer me Intel Trace Analyzer and Collector.
Ma Linux:
$ traceanalyzer ./ poisson_sendrecv.single.stf
Ma Windows:
traceanalyzer poisson_sendrecv.single.stf
HOOLAHA
No ka hoʻāʻo ʻana, hiki iā ʻoe ke hoʻoiho i kahi meheu i hōʻiliʻili mua ʻia file poisson_sendrecv.single.stf no ka poisson i hoʻohana ʻia ma kēia palapala a wehe ʻia me Intel Trace Analyzer a me Collector.
ʻO ka .stf file wehe ʻia ma ka ʻaoʻao hōʻuluʻulu view, e hōʻike ana i ka ʻike maʻamau e pili ana i kāu hana noi noi:HOOLAHA No ka 'ike hou aku e pili ana i ka Intel Trace Analyzer and Collector functionality, e nana e a'o hou aku.
E noʻonoʻo i nā hana MPI ʻoi loa
E noʻonoʻo i kahi ʻano noi MPI, e ʻimi i nā bottlenecks a ʻike i ka serialization e ʻike i nā ala e hoʻomaikaʻi ai i ka hana noi.
- Mai ka ʻaoʻao hōʻuluʻulu e wehe i ka laina manawa hanana view ma ke kaomi ʻana i ka Continue > Charts > Event Timeline no ka nānā hohonu ʻana i nā hana MPI kiʻekiʻe.
Hōʻike ka pakuhi i nā hana kaʻina hana pākahi i ka manawa.
ʻO ka hana noiʻi he iterative, kahi i loaʻa i kēlā me kēia hoʻololi i kahi ʻāpana computational a me nā kamaʻilio MPI. - E hoʻomaopopo i hoʻokahi hoʻololi e nānā a hoʻonui iā ia ma ke kauo ʻana i kāu ʻiole ma luna o ka manawa i koi ʻia:
Ka meheu view hōʻike i ka ʻāpana i loko o ka meheu āu i koho ai. Hōʻike ka pakuhi Timeline i nā hanana i hana i ka wā o ka hoʻololi i koho ʻia.
- Hōʻike ʻia nā kaʻina hana me nā hana i kapa ʻia ma kēia mau kaʻina.
- Hōʻike nā laina ʻeleʻele i nā memo i hoʻouna ʻia ma waena o nā kaʻina hana. Hoʻopili kēia mau laina i nā kaʻina hoʻouna a loaʻa.
- Hōʻike nā laina ʻulaʻula i nā hana hui, e like me ka hoʻolaha a hōʻemi paha i nā hana.
- E hoʻololi i ka Flat Profile tab (A) e nānā pono i nā hana e hoʻokō nei i ka manawa āu (i koho ʻia ma ka Timeline Event.
- Ungroup MPI hana e kālailai i ka hana kaʻina hana MPI i kāu noi.
No ka hana ʻana i kēia, kaomi ʻākau i ka All Processes > Group MPI (B) ma ka Flat Profile a koho UngroupMPI. Hōʻike kēia hana i nā kelepona MPI pākahi. - E noʻonoʻo i nā kaʻina hana e kamaʻilio me ko lākou mau hoalauna pololei me ka hoʻohana ʻana i MPI_Sendrecv i ka hoʻomaka ʻana o ka ʻike. No example:
- a. Ma ka sampʻO ka MPI_Sendrecv data exchange he bottleneck: ʻaʻole hoʻololi ke kaʻina i ka ʻikepili me kona hoalauna a hiki i ka pau ʻana o ka hoʻololi ʻana me ka mea ma mua. Nā Manawa Hanana view hōʻike i kēia bottleneck ma ke ʻano he alapiʻi.
- b. ʻO ka MPI_Allreduce i ka hopena o ka hoʻololi hou e hoʻonohonoho hou i nā kaʻina hana a pau; ʻo ia ke kumu i loaʻa ai i kēia poloka ke ʻano alapiʻi hope.
- E ʻike i ka serialization, me ka hoʻohana ʻana i ka Function Profile a me Message Profile views.
- a. E wehe i nā pakuhi i ka manawa like:
Ma ka Function Profile pakuhi, wehe i ka Load Balancetab. - E hele i ka papa kuhikuhi Charts e wehe i kahi Message Profile.
- b. Ma ka ʻaoʻao Load Balance, hoʻonui i ka MPI_Sendrecv a me MPI_Allreduce. Hōʻike ka Load Balancing i ka piʻi ʻana o ka manawa ma MPI_Sendrecv me ka helu kaʻina hana, ʻoiai ke emi nei ka manawa no MPI_Allreduce.
- c. E nānā i ka Message Profile E kaomi ma ka ʻaoʻao ʻākau lalo.
ʻO ka hoʻopili kala ʻana o nā poloka e hōʻike ana i nā memo e hele ana mai kahi kūlana kiʻekiʻe a i kahi kūlana haʻahaʻa e pono ai ka manawa like ʻoiai ʻo nā memo e hele ana mai kahi kūlana haʻahaʻa a i kahi kūlana kiʻekiʻe e hōʻike ana i kahi ʻano ʻano like ʻole.
- a. E wehe i nā pakuhi i ka manawa like:
Hōʻike nā hopena o ka hoʻohālikelike hoʻohālikelike ʻaʻohe ʻano hoʻololi paʻakikī i ka noi, lawe ʻia ka hoʻololi ʻana me nā kaʻina hana pili. Pono ka ʻike no ka hoʻomaikaʻi ʻana i kāu hana noi noi ma o ka hoʻololi ʻana i nā ʻanuʻu kamaʻilio e hoʻomaikaʻi i ke ʻano kamaʻilio o ka noi.
E ʻike i nā Kūkākūkā Kūleʻa
E nānā i kāu noi ma lalo o nā kūlana kūpono a hoʻohālikelike i ka trace kumu file me ka mea kūpono e hoʻokaʻawale i nā pilina pilikia.
- E hana i kahi mea kūpono file:
- a. Koho i Advanced > Idealization a i ʻole kaomi i ka
(Idealization) pihi hāmeʻa.
- b. E nānā i nā ʻāpana kūpono i ka pahu kamaʻilio Idealization (ideal trace file inoa a me ka palena manawa no ka hoʻololi ʻana).
- c. Kaomi i ka Start no ka hoʻohālikelike ʻana i kāu meheu.
- a. Koho i Advanced > Idealization a i ʻole kaomi i ka
- E hoʻohālikelike i ka meheu kumu me ka meheu kūpono:
- a. Koho i ka Advanced > Imbalance Diagram a i ʻole kaomi i ka
(Imbalance Diagram) pihi hāmeʻa.
- b. I ka pahu kūkākūkā Imbalance Diagram, kaomi i ka Open Another File pihi, e hoʻokele i ke ala kūpono, a koho iā ia.
- c. Ma ka puka aniani ʻo Imbalance Diagram, kaomi i ke pihi Total Mode a koho i ka Breakdown Mode.
- a. Koho i ka Advanced > Imbalance Diagram a i ʻole kaomi i ka
Hiki iā ʻoe ke ʻike ʻo MPI_Sendrecv ka hana hoʻopau manawa. Hōʻike ʻia ka paona imbalance ma
kala māmā a loaʻa ma kahi o 10% no ka hana MPI_Sendrecv. ʻO kēia ka manawa e kali ai nā kaʻina hana i kekahi i kekahi.
E hoʻomaikaʻi i kāu hana noi ma ka hoʻololi ʻana i nā kamaʻilio
- E hoʻomaikaʻi i ka hana o ka noi MPI ma o ka hoʻololi ʻana i ka pale ʻana i nā kamaʻilio paʻa ʻole.
Ma kāu code e hoʻololi i ka serial MPI_Sendrcv me ka pāpā ʻole: MPI_Isend a me MPI_Irecv. No example: snippet code kumu:
// hoʻololi palena
hoʻololi ʻole (para* p, grid* gr){
int i,j;
MPI_Status status_100, status_200, status_300, status_400;
// hoʻouna i ka lālani mua
MPI_Send(gr->x_new[1], gr->lcol+2, MPI_DOUBLE, gr->lalo, 100, MPI_COMM_WORLD); MPI_Recv(gr->x_new[gr->lrow+1], gr->lcol+2, MPI_DOUBLE, gr->up, 100, MPI_COMM_WORLD,
& kūlana_100);
// hoʻouna i ka lālani hope
MPI_Send(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->lalo, 200, MPI_COMM_WORLD, & status_200);
E hoʻohana i ka Intel Trace Analyzer Comparison view e hoʻohālikelike i ka polokalamu serialized me ka mea i hoʻoponopono ʻia
// kope i ke kolamu hema i tmp arrays
inā(gr->hema != MPI_PROC_NULL){
gr->x_new[i][gr->lcol+1] = right_col[i]; right_col[i] = gr->x_new[i][gr->lcol];
// hoʻouna pololei
MPI_Send(right_col, gr->lrow+2, MPI_DOUBLE, gr->right, 400, MPI_COMM_WORLD); }
inā(gr->hema != MPI_PROC_NULL)
{
MPI_Recv(left_col, gr->lrow+2, MPI_DOUBLE, gr->hema, 400, MPI_COMM_WORLD,&status_400); no(i=0; i< gr->lrow+2; i++
{
gr->x_new[i][0] = left_col[i];
}
}
Hōʻano hou ʻia ka snippet code
MPI_Noi noi [7];
// hoʻouna i ka lālani mua
MPI_Isend(gr->x_new[1], gr->lcol+2, MPI_DOUBLE, gr->lalo, 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, koi, MPI_STATUSES_IGNORE);
Ke hoʻoponopono ʻia, e like ke ʻano o ka loiloi hoʻokahi o ka noi i hoʻoponopono ʻia e like me kēia example: - E hoʻohana i ka Intel Trace Analyzer Comparison view e hoʻohālikelike i ka polokalamu serialized me ka mea i hoʻoponopono ʻia. E hoʻohālikelike i ʻelua meheu me ke kōkua o ka Hoʻohālikelike View, e hele ana i View > Hoʻohālikelike. Ka Hoolikelike View like me:
Ma ka Hoʻohālikelike View, hiki iā ʻoe ke ʻike i ka hoʻohana ʻana i ke kamaʻilio non-blocking e kōkua i ka wehe ʻana i ka serialization a hoʻemi i ka manawa o ke kamaʻilio ʻana o nā kaʻina hana.
HOOLAHA No ka ʻike hou aku e pili ana i ka hana pae node o kāu noi, e ʻike i ka palapala no nā mea hana pono: Intel® VTune™ Profiler Ka helu helu helu MPI a me ka nānā ʻana i nā noi Intel® MPI me ka hoʻohana ʻana iā Intel® Advisor.
E aʻo hou aku
E ʻimi i kēia mau kumuwaiwai no ka ʻike hou aku e pili ana iā Intel Trace Analyzer a me Collector.
Hoolaha a me na Hoole
- Hiki i nā ʻōnaehana Intel ke koi ʻia i nā ʻenehana, lako polokalamu a i ʻole ka hana e lawelawe ai.
- ʻAʻole hiki ke hoʻopaʻa paʻa ʻia kekahi huahana a mea ʻāpana paha.
- He ʻokoʻa paha kāu mau koina a me nā hopena.
- © Intel Corporation. ʻO Intel, ka Intel logo, a me nā hōʻailona Intel ʻē aʻe he mau hōʻailona o Intel Corporation a i ʻole kāna mau lālā. Hiki ke koi ʻia nā inoa a me nā hōʻailona ʻē aʻe ma ke ʻano he waiwai o nā poʻe ʻē aʻe.
- ʻAʻole hāʻawi ʻia ka laikini (hōʻike a i ʻole ka manaʻo, e ka estoppel a i ʻole) i kekahi kuleana waiwai naʻauao e kēia palapala.
- Loaʻa i nā huahana i wehewehe ʻia nā hemahema hoʻolālā a i ʻole nā hewa i kapa ʻia ʻo errata e hoʻohuli i ka huahana mai nā kikoʻī i paʻi ʻia. Loaʻa ka hewa o kēia manawa ma ke noi.
- Hōʻole ʻo Intel i nā palapala hōʻoia a pau, me ka ʻole o ka palena, nā palapala hōʻoia o ke kūʻai aku, kūpono no kekahi kumu, a me ka hewa ʻole, a me nā palapala hōʻoia e puka mai ana mai ke ʻano o ka hana, ke ʻano o ka hana, a i ʻole ka hoʻohana ʻana i ke kālepa.
Palapala / Punawai
![]() |
intel E hoʻomaka me Intel Trace Analyzer a me ka mea hōʻiliʻili [pdf] Ke alakaʻi hoʻohana E hoʻomaka me Intel Trace Analyzer a me Collector, E hoʻomaka me Intel, Trace Analyzer a me Collector, Collector |