intel-LOGO

intel oneAPI Threading Building Blocks

intel-oneAPI-Threading-Building-Blocks-PRODUCT

ʻIke Huahana

hoʻokahi API Threading Building Blocks (hoʻokahi TB)

ʻO oneAPI Threading Building Blocks (oneTBB) he kumu hoʻohālike hoʻolikelike like me ka wā holo no ka code C++ e hoʻohana ana i nā kaula. He hale waihona puke runtime i hoʻokumu ʻia i ka latent i hoʻolālā ʻia e kōkua i ka hoʻohana ʻana i ka hana huna o nā kaʻina hana multi-core. Hoʻomaʻamaʻa ʻo oneTBB i ka hoʻolālā like ʻana ma o ka wāwahi ʻana i ka helu i nā hana holo like. Hoʻokō ʻia ka Parallelism i loko o kahi kaʻina hana ma o nā kaula, kahi ʻōnaehana ʻōnaehana e hiki ai ke hoʻokō ʻia nā ʻōkuhi like a ʻokoʻa paha i ka manawa like.

Hiki ke hoʻoiho ʻia ka oneTBB ma ke ʻano he huahana kū hoʻokahi a i ʻole he ʻāpana o ka Intel(R) oneAPI Base Toolkit. Hele mai ka huahana me kahi hoʻonohonoho o nā koi ʻōnaehana pono e hoʻokō ʻia ma mua o ke kau ʻana.

Nā Koina Pūnaewele

  • E nānā i ka OneTBB System Requirements.

Hoʻokomo

  • Hoʻoiho iā oneTBB ma ke ʻano he huahana kū hoʻokahi a i ʻole he ʻāpana o ka Intel(R) oneAPI Base Toolkit.
  • E nānā i ke alakaʻi hoʻokomo no kahi mana kū hoʻokahi (Windows* OS a me Linux* OS) a me Intel(R) oneAPI Toolkits Installation Guide.

Nā kuhikuhi hoʻohana

    • Ma hope o ka hoʻokomo ʻana i hoʻokahiTBB, e hoʻonohonoho i nā ʻano like ʻole ma ka hele ʻana i ka papa kuhikuhi hoʻonohonoho oneTBB. Ma ka paʻamau, penei ka papa kuhikuhi hoʻonohonoho:

No Linux* OS: /opt/intel/Konami/tab/latest/env/vars.sh

No Windows* OS: %PahanaFiles(x86)%InteloneAPItbblatestenvvars.bat

    • Hoʻopili i kahi papahana me ka hoʻohana ʻana i oneTBB ma Linux * OS a me macOS * me ka hoʻohana ʻana i ka mea hana pkg-config. Hāʻawi i ke ala piha e ʻimi ai no ka hoʻokomo files a me nā hale waihona puke, a i ʻole e hāʻawi i kahi laina maʻalahi e like me kēia:

g++ -o test test.cpp $(pkg-config –libs –flags tab)

  • No Windows* OS, e hoʻohana i ka hae koho –msvc-syntax e hoʻololi i ka hōʻuluʻulu ʻana a me ka loulou i nā hae ma ke ʻano kūpono.
  • E nānā i ke alakaʻi hoʻomohala a me ka API Reference ma GitHub no nā memo kikoʻī, nā pilikia i ʻike ʻia, a me nā loli.

E hoʻomaka me hoʻokahi API Threading Building Blocks (hoʻokahi TB)

  • ʻO oneAPI Threading Building Blocks (oneTBB) he kumu hoʻohālike hoʻolikelike like me ka wā holo no ka code C++ e hoʻohana ana i nā kaula. Loaʻa iā ia kahi waihona runtime e pili ana i ka template e kōkua iā ʻoe e hoʻopaʻa i ka hana huna o nā kaʻina hana multi-core.
    OneTBB hiki iā ʻoe ke hoʻomaʻamaʻa i ka hoʻolālā like ʻana ma o ka uhaki ʻana i ka helu helu i nā hana holo like.
  • I loko o kahi kaʻina hana hoʻokahi, lawe ʻia ka parallelism ma o nā kaula, kahi ʻōnaehana ʻōnaehana e hiki ai ke hoʻokō ʻia nā ʻōkuhi like a ʻokoʻa paha i ka manawa like.
  • Maanei hiki iā ʻoe ke ʻike i kekahi o ka hoʻokō ʻana i nā hana ma nā pae.intel-oneAPI-Threading-Building-Blocks-FIG-1

E hoʻohana i hoʻokahi papa e kākau i nā noi scalable e:

  • E wehewehe i ka hoʻolālā like ʻole ma kahi o nā loina
  • Hoʻoikaika i ka hoʻolālā ʻikepili-parallel
  • Lawe i advantage o nā hōʻiliʻili like a me nā algorithms like
  • Kākoʻo ʻo oneTBB i ka nested parallelism a me ka load balancing. ʻO ia ka mea hiki iā ʻoe ke hoʻohana i ka waihona me ka hopohopo ʻole e pili ana i ka hoʻopaʻa inoa ʻana i kahi ʻōnaehana. Loaʻa ka oneTBB ma ke ʻano he huahana kū hoʻokahi a ma ke ʻāpana o ka Intel® oneAPI Base Toolkit.

Nā Koina Pūnaewele

  • E nānā i ka OneTBB System Requirements.

Hoʻoiho iā Intel(R) oneAPI Threading Building Blocks (oneTBB)

  • Hoʻoiho iā oneTBB ma ke ʻano he huahana kū hoʻokahi a i ʻole he ʻāpana o ka Intel(R) oneAPI Base Toolkit. E ʻike i ke alakaʻi hoʻonohonoho no kahi mana kū hoʻokahi (Windows* OS a me Linux* OS) a me Intel(R) oneAPI Toolkits Installation Guide.
Ma mua o kou hoʻomaka ʻana

Ma hope o ka hoʻokomo ʻana i hoʻokahiTBB, pono ʻoe e hoʻonohonoho i nā ʻano like ʻole:

  1. E hele i ka papa kuhikuhi hoʻonohonoho oneTBB ( ). Ma ka paʻamau, ʻo ia kēia:
    1. Ma Linux* OS:
    2. No nā mea hoʻohana nui (root): /opt/intel/Konami
    3. No nā mea hoʻohana maʻamau (no-root): $HOME/intel/Konami
    4. Ma Windows* OS:
    5. <Pahana Files>\Intel\oneAPI
  2. E hoʻonoho i nā ʻano hoʻololi kaiapuni, me ka hoʻohana ʻana i ka script in , ma ka holo ana
    • Ma Linux* OS: vars.{sh|csh} ma /tbb/latest/env
    • Ma Windows* OS: vars.bat i loko /tbb/latest/env

Example
Ma lalo ʻoe e ʻike ai i kahi ex maʻamauample no kahi algorithm oneTBB. ʻO ka sampLe helu ʻana i ka huina o nā helu integer mai 1 a 100.intel-oneAPI-Threading-Building-Blocks-FIG-2

oneAPI Threading Building Blocks (oneTBB) and pkg-config tool

  • Hoʻohana ʻia ka mea hana pkg-config e hoʻomaʻamaʻa i ka laina compilation ma ka lawe ʻana i ka ʻike e pili ana i nā pūʻolo mai
    metadata kūikawā files. Kōkua ia i ka pale ʻana i nā ala paʻakikī paʻakikī a hoʻonui i ka lawe ʻana i ka hui.

E hōʻuluʻulu i kahi papahana me ka hoʻohana ʻana i ka pkg-config

  • No ka hōʻuluʻulu ʻana i kahi papahana hoʻāʻo test.cpp me oneTBB ma Linux* OS a me macOS*, hāʻawi i ke ala piha e ʻimi ai files a me nā hale waihona puke, a i ʻole e hāʻawi i kahi laina maʻalahi e like me kēia:intel-oneAPI-Threading-Building-Blocks-FIG-3

Ma hea:

  • Hāʻawi nā cflags i kahi waihona waihona hoʻokahiTBB me ke ala:intel-oneAPI-Threading-Building-Blocks-FIG-4
  • Hāʻawi ka libs i ka inoa waihona Intel(R) oneTBB a me ke ala huli e loaʻa ai:intel-oneAPI-Threading-Building-Blocks-FIG-4
  • HOOLAHA No Windows* OS, e hoʻohana i ka hae koho –msvc-syntax e hoʻololi i ka hōʻuluʻulu ʻana a me ka loulou i nā hae ma ke ʻano kūpono.
E ʻimi hou aku
  • hookahiTBB Hui Kaiāulu
  • Nā nīnau nīnau huahana
  • Nā noi kākoʻo
  • E hoʻohana i kēia mau kumuwaiwai inā makemake ʻoe i ke kākoʻo me oneTBB.
  • Hoʻokuʻu ʻŌlelo E ʻimi i ka ʻike hou e pili ana i ka huahana, me nā memo kikoʻī, nā pilikia i ʻike ʻia, a me nā loli.
  • Palapala: Ke alakaʻi hoʻomohala a me ka API Reference
  • E aʻo e hoʻohana i hoʻokahiTBB.
  • GitHub* E ʻimi i ka hoʻokō hoʻokahiTBB ma ke kumu hāmama.

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.
  • Hoʻokuʻu ʻo Intel i nā palapala hōʻoia a i ʻōlelo ʻia, 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.

E hoʻouka i hoʻokahiTBB ma Windows* OS

  • Hōʻike kēia ʻāpana pehea e hiki ai iā ʻoe ke kau i ka waihona oneAPI Threading Building Blocks (oneTBB) ma kahi mīkini Windows* OS.
  • Inā hoʻolālā ʻoe e hoʻokomo i hoʻokahiTBB ma ke ʻano he ʻāpana o Intel® oneAPI Base Toolkit, e nānā i ka ʻāpana pili o ka Intel(R) oneAPI Toolkits Installation Guide.
  • Inā hoʻolālā ʻoe e hoʻokomo i hoʻokahiTBB ma ke ʻano he huahana kūʻokoʻa, e hahai i nā ʻōlelo aʻoaʻo ma lalo nei, me ka hoʻohana ʻana i ka GUI installer a i ʻole ka luna pūʻolo o kāu koho.
  • E aʻo pehea e hoʻouka ai i hoʻokahiTBB me GUI a me ka luna pūʻolo: * E hoʻouka me GUI * E hoʻouka me kahi Luna Pūʻulu

E hoʻouka me GUI

KaʻAnuʻu 1. E koho i ka mea hoʻonoho makemake

  1. E hele i ka ʻaoʻao Download. Hōʻike ʻia kahi papa inoa o nā mea hoʻonohonoho i loaʻa.
  2. E hoʻoholo i ke ʻano mea hoʻonoho Windows āu e hoʻohana ai:
    • He liʻiliʻi ka mea hoʻonoho pūnaewele file ka nui akā pono kahi pilina pūnaewele mau i ka wā e holo ana.
    • ʻOi aku ka nui o ka mea hoʻonoho hoʻopahemo file nui akā makemake i kahi pilina pūnaewele wale nō e hoʻoiho i ka mea hoʻokomo file, a holo waho waho.
  3. Ma hope o ka hoʻoholo ʻana i ke ʻano mea hoʻonoho, kaomi i ka loulou pili e hoʻomaka i ka hoʻoiho.
  4. E kali a pau ka hoʻoiho ʻana.

KaʻAnuʻu 2. E hoʻomākaukau i ka mea hoʻonoho

No nā mea hoʻokomo hoʻopahemo:

  1. Holo i ka .exe file ua hoʻoiho ʻoe. E hoʻokuʻu ʻia ka mea unuhi pūʻolo hoʻonohonoho.
  2. E wehewehe i ke ala e wehe ai i ka pūʻolo - ʻo C:\Users\ \Downloads\w_tbb_oneapi_p_ _pahemo.
  3. Inā pono, e koho i ka Wehe i unuhi ʻia files ma hope o ka hoʻokomo ʻana i ka pahu pahu.
  4. Kaomi i ka Extract.
    No ka mea hoʻonoho pūnaewele, hoʻomaka koke ka hoʻoiho ma hope o kou holo ʻana i ka .exe file.

KaʻAnuʻu 3. Holo i ka hoʻonohonoho

  1. Inā ʻoe e holo nei i ka mea hoʻokomo hoʻopahemo, e kaomi i ka Continue to continue. E hoʻomaka koke ka mea hoʻokomo pūnaewele.
  2. Ma ka ʻanuʻu Summary, koho i ka pahu koho I ʻae i nā ʻōlelo o ka ʻaelike laikini.
  3. E koho i ke ʻano hoʻonohonoho:
  • No ka hoʻohana ʻana i nā hoʻonohonoho hoʻonohonoho paʻamau, koho i ka hoʻokomo ʻia. Hoʻokomo ʻia ʻo oneTBB ma ka wahi paʻamau: % Program FIles (x86)%\Intel\oneAPI\. Kaomi i ka Continue a hele i ka hana Integrate IDE.
  • No ka hoʻololi i nā hoʻonohonoho hoʻonohonoho, koho i ka Custom Installation a kaomi iā Customize. E hoʻomau ʻoe i ka ʻanuʻu Select Components. Eia nō naʻe, ʻaʻohe mea ʻē aʻe ma mua o hoʻokahiTBB hiki ke koho ʻia ma muli o ke ʻano o ka hoʻonā. Ma kēia ʻano, hiki iā ʻoe ke hoʻololi i ka wahi hoʻonohonoho paʻamau ma ke kaomi ʻana i ka Change ma ka ʻaoʻao hema hema o ka pukaaniani.intel-oneAPI-Threading-Building-Blocks-FIG-5
  1. Ma ka ʻanuʻu Integrate IDE, nānā ka papahana inā hiki ke hoʻokomo i hoʻokahiTBB i hoʻohui piha ʻia me Microsoft Visual Studio IDE - no kēlā, pono e hoʻokomo ʻia ka mana IDE i kākoʻo ʻia ma ka mīkini ʻimi. Inā ʻaʻole i hoʻokomo ʻia, hiki iā ʻoe ke haʻalele i ka hoʻonohonoho a hoʻomaka hou ma hope o ka hoʻokomo ʻana i ka IDE, a i ʻole e hoʻomau me ka hoʻohui ʻole.
  2. Ma ka ʻanuʻu Software Improvement Program, koho i ke koho āu e makemake ai. A laila kaomi i ka Install e hoʻomaka i ka hoʻokomo.
  3. E kali a pau ka hana. A laila kaomi i ka Finish e pani i ka mea hoʻonoho a i ʻole E hele i nā huahana i hoʻonohonoho ʻia e nānā i nā mea hou a i ʻole e hana i nā hana ʻē aʻe.

HOOLAHA E hoʻomanaʻo i ka hoʻonohonoho ʻana i nā mea hoʻololi kaiapuni ma hope o ke kau ʻana. E ʻike i ka ʻāpana Ma mua o kou hoʻomaka ʻana e aʻo e pili ana.

E hoʻouka me kahi Luna Pūʻulu

  • No ka hoʻouka ʻana i hoʻokahiTBB me kahi luna pūʻulu, e holo i ke kauoha i wehewehe ʻia ma ka palapala:
  • Conda
  • Pip
  • NuGet
  • HOOLAHA E hoʻomanaʻo i ka hoʻonohonoho ʻana i nā mea hoʻololi kaiapuni ma hope o ke kau ʻana. E ʻike i ka ʻāpana Ma mua o kou hoʻomaka ʻana e aʻo e pili ana.

Hoʻonui i hoʻokahiTBB

  • Kākoʻo ʻia ka hōʻano hou ʻana no hoʻokahiTBB 2021.1 a me nā mana hope. No ka hoʻonui ʻana i hoʻokahiTBB i ka mana hou loa, e holo i ka hoʻonohonoho, e like me ka mea i wehewehe ʻia ma luna.
  • Inā hana ʻoe me nā mana kahiko (TBB), e noʻonoʻo ʻaʻole hāʻawi nā mana hou o oneTBB i ka hoʻohālikelike hope. E nana TBB Revamp: Ka hope, nā hoʻololi, a me ka hoʻoponopono hou no nā kikoʻī. Eia kekahi, e nānā i
  • Ke neʻe nei mai TBB no ka ʻike hou aku e pili ana i ka neʻe ʻana i oneTBB.

Uninstalling oneTBB

  • No ka wehe ʻana i hoʻokahiTBB, e hoʻohana i nā noi a me nā hiʻohiʻona a i ʻole nā ​​papahana a me nā hiʻohiʻona.

E hoʻouka i hoʻokahiTBB ma Linux* OS

  • Hōʻike kēia ʻāpana pehea e hiki ai iā ʻoe ke kau i ka waihona oneAPI Threading Building Blocks (oneTBB) ma kahi mīkini Linux*. E koho i ke ala makemake:
  • E hoʻouka i hoʻokahiTBB me ka hoʻohana ʻana i ka laina kauoha
  • E hoʻouka i hoʻokahiTBB me ka hoʻohana ʻana i nā Package Managers o ke koho:
  • Conda
  • APT
  • YUM
  • PIP
  • NuGet
  • HOOLAHA Hiki iā ʻoe ke hoʻouka i hoʻokahi TB ma kahi mīkini Linux* OS me ka hoʻohana ʻana iā GUI. E ʻike i ke alakaʻi hoʻonohonoho Intel(R) oneAPI e aʻo hou aku.

E hoʻouka i hoʻokahiTBB me ka hoʻohana ʻana i ka laina kauoha

  • No ka hoʻouka ʻana i hoʻokahiTBB, e holo i kekahi o kēia mau kauoha e like me kāu kuleana:
  • kumu:intel-oneAPI-Threading-Building-Blocks-FIG-6
  • mea hoʻohana:intel-oneAPI-Threading-Building-Blocks-FIG-7

Ma hea:

  • hāmau - Holo i ka mea hoʻonoho ma ke ʻano non-interactive (silent).
  • ʻula – E ʻae a hōʻole paha i ka End User License Agreement (EULA), nā waiwai i kākoʻo ʻia: ʻae a hōʻole paha (paʻamau).
  • ʻāpana - E ʻae iā ʻoe i nā mea i hoʻokomo pono ʻia.

No example:intel-oneAPI-Threading-Building-Blocks-FIG-8

E hoʻouka i hoʻokahiTBB me ka hoʻohana ʻana i nā mana hoʻokele

  • E hahai i nā ʻōlelo aʻoaʻo, me ka hoʻohana ʻana i kahi luna pūʻolo o kāu koho.

Conda

  • Hāʻawi kēia ʻāpana i nā ʻōlelo aʻoaʻo maʻamau no ka hoʻokomo ʻana i ka oneAPI Threading Building Blocks (oneTBB) ma o ka
  • Conda* luna pūʻolo. No nā memo hoʻokomo hou, e nānā i ka palapala Conda.
  • No ka hoʻouka ʻana i hoʻokahiTBB, e holo i kēia kauoha:intel-oneAPI-Threading-Building-Blocks-FIG-9
  • Hiki iā ʻoe ke hoʻohana: conda install -c intel/label/intel tbb-devel
  • HOOLAHA E ʻike i ke alakaʻi hoʻonohonoho Intel(R) oneAPI e aʻo pehea e hoʻonohonoho ai iā Conda.

APT

  • No ka hoʻouka ʻana i hoʻokahiTBB me ka hoʻohana ʻana iā APT*, holo:intel-oneAPI-Threading-Building-Blocks-FIG-10
  • No example:

intel-oneAPI-Threading-Building-Blocks-FIG-11

HOOLAHA E ʻike i ke alakaʻi hoʻonohonoho Intel(R) oneAPI e aʻo pehea e hoʻonohonoho ai iā YUM.

No ka hoʻouka ʻana i hoʻokahiTBB me ka hoʻohana ʻana i ka PIP*, holo:intel-oneAPI-Threading-Building-Blocks-FIG-14

No example:

intel-oneAPI-Threading-Building-Blocks-FIG-15

NuGet

No ka hoʻouka ʻana i hoʻokahiTBB mai NuGet* me ka hoʻohana ʻana i ka laina kauoha, e hana i kēia:

  1. E hele i ka nuget.org
  2. Holo:intel-oneAPI-Threading-Building-Blocks-FIG-16

HOOLAHA E ʻike i ke alakaʻi hoʻonohonoho Intel(R) oneAPI e aʻo pehea e hoʻonohonoho ai iā NuGet*.
HOOLAHA E hoʻomanaʻo i ka hoʻonohonoho ʻana i nā mea hoʻololi kaiapuni ma hope o ke kau ʻana. E ʻike i ka ʻāpana Ma mua o kou hoʻomaka ʻana e aʻo e pili ana.

Hoʻonui i hoʻokahiTBB
  • Kākoʻo ʻia ka hōʻano hou ʻana no hoʻokahiTBB 2021.1 a me nā mana hope. No ka hoʻonui ʻana i hoʻokahiTBB i ka mana hou loa, e holo i ka hoʻonohonoho, e like me ka mea i wehewehe ʻia ma luna.
  • Inā hana ʻoe me nā mana kahiko (TBB), e noʻonoʻo ʻaʻole hāʻawi nā mana hou o oneTBB i ka hoʻohālikelike hope. E nana TBB Revamp: Ka hope, nā hoʻololi, a me ka hana hou no nā kikoʻī. Eia kekahi, e nānā i ka Migrating from TBB no ka ʻike hou aku e pili ana i ka neʻe ʻana i hoʻokahi TB.

Palapala / Punawai

intel oneAPI Threading Building Blocks [pdf] Ke alakaʻi hoʻohana
oneAPI Threading Building Blocks, Threading Building Blocks, Building Blocks, Blocks

Nā kuhikuhi

Waiho i kahi manaʻo

ʻAʻole e paʻi ʻia kāu leka uila. Hōʻailona ʻia nā kahua i makemake ʻia *