import{S as Zo,i as Wo,s as Vo,e as r,k as c,w as C,t as i,M as Ho,c as n,d as l,m as h,a as o,x as U,h as s,b as a,G as e,g as p,y as b,q as P,o as J,B as $,v as Yo}from"../chunks/vendor-hf-doc-builder.js";import{T as Qo}from"../chunks/Tip-hf-doc-builder.js";import{I as ce}from"../chunks/IconCopyLink-hf-doc-builder.js";import{C as he}from"../chunks/CodeBlock-hf-doc-builder.js";function Fo(Ne){let d,W;return{c(){d=r("p"),W=i(`oneccl_bindings_for_pytorch 1.12.0 \uBC84\uC804\uC758 \uBBF8\uB9AC \uBE4C\uB4DC\uB41C Wheel \uD30C\uC77C\uC740 PyTorch 1.12.1\uACFC \uD638\uD658\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4(PyTorch 1.12.0\uC6A9\uC785\uB2C8\uB2E4).
PyTorch 1.12.1\uC740 oneccl_bindings_for_pytorch 1.12.10 \uBC84\uC804\uACFC \uD568\uAED8 \uC0AC\uC6A9\uD574\uC57C \uD569\uB2C8\uB2E4.`)},l(_){d=n(_,"P",{});var m=o(d);W=s(m,`oneccl_bindings_for_pytorch 1.12.0 \uBC84\uC804\uC758 \uBBF8\uB9AC \uBE4C\uB4DC\uB41C Wheel \uD30C\uC77C\uC740 PyTorch 1.12.1\uACFC \uD638\uD658\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4(PyTorch 1.12.0\uC6A9\uC785\uB2C8\uB2E4).
PyTorch 1.12.1\uC740 oneccl_bindings_for_pytorch 1.12.10 \uBC84\uC804\uACFC \uD568\uAED8 \uC0AC\uC6A9\uD574\uC57C \uD569\uB2C8\uB2E4.`),m.forEach(l)},m(_,m){p(_,d,m),e(d,W)},d(_){_&&l(d)}}}function zo(Ne){let d,W,_,m,fe,tt,El,pe,ml,De,wt,wl,Xe,X,V,de,et,Cl,_e,Ul,Le,N,lt,bl,Pl,rt,Jl,$l,nt,gl,Il,ke,L,ue,Al,jl,Te,Rl,xl,Be,ot,at,Nl,Dl,Se,k,H,ve,it,Xl,ye,Ll,Ge,Ct,kl,Ze,Y,Me,u,Ut,Bl,Sl,bt,Gl,Zl,Pt,Wl,Vl,Jt,Hl,Yl,$t,Ql,Fl,gt,zl,Ol,w,T,It,ql,Kl,Ee,tr,At,er,lr,jt,rr,nr,Rt,or,ar,xt,ir,sr,v,Nt,cr,hr,me,fr,Dt,pr,dr,Xt,_r,ur,Lt,Tr,vr,kt,yr,Mr,y,Bt,Er,mr,we,wr,St,Cr,Ur,Gt,br,Pr,Zt,Jr,$r,Wt,gr,Ir,M,Vt,Ar,jr,Ce,Rr,Ht,xr,Nr,Yt,Dr,Xr,Qt,Lr,kr,Ft,Br,Sr,E,zt,Gr,Zr,Ot,Wr,Vr,qt,Hr,Yr,Kt,Qr,Fr,te,zr,Or,Ue,We,st,Ve,B,be,qr,Kr,ct,tn,en,He,Q,Ye,S,F,Pe,ht,ln,Je,rn,Qe,ee,nn,Fe,le,on,ze,ft,Oe,re,an,qe,pt,Ke,G,z,$e,dt,sn,ge,cn,tl,O,hn,ne,fn,pn,el,oe,dn,ll,Z,q,Ie,_t,_n,Ae,un,rl,ut,Tt,Tn,vn,nl,ae,yn,ol,vt,al,ie,Mn,il,se,En,sl,yt,cl,K,mn,je,wn,Cn,hl,Mt,fl;return tt=new ce({}),et=new ce({}),it=new ce({}),st=new he({props:{code:"cGlwJTIwaW5zdGFsbCUyMG9uZWNjbF9iaW5kX3B0JTNEJTNEJTdCcHl0b3JjaF92ZXJzaW9uJTdEJTIwLWYlMjBodHRwcyUzQSUyRiUyRmRldmVsb3Blci5pbnRlbC5jb20lMkZpcGV4LXdobC1zdGFibGUtY3B1",highlighted:'pip install oneccl_bind_pt=={<span class="hljs-attribute">pytorch_version} -f https</span>://developer<span class="hljs-variable">.intel</span><span class="hljs-variable">.com</span>/ipex-whl-stable-cpu'}}),Q=new Qo({props:{warning:!0,$$slots:{default:[Fo]},$$scope:{ctx:Ne}}}),ht=new ce({}),ft=new he({props:{code:"b25lY2NsX2JpbmRpbmdzX2Zvcl9weXRvcmNoX3BhdGglM0QlMjQocHl0aG9uJTIwLWMlMjAlMjJmcm9tJTIwb25lY2NsX2JpbmRpbmdzX2Zvcl9weXRvcmNoJTIwaW1wb3J0JTIwY3dkJTNCJTIwcHJpbnQoY3dkKSUyMiklMEFzb3VyY2UlMjAlMjRvbmVjY2xfYmluZGluZ3NfZm9yX3B5dG9yY2hfcGF0aCUyRmVudiUyRnNldHZhcnMuc2g=",highlighted:`oneccl_bindings_for_pytorch_path=$(<span class="hljs-keyword">python</span> -c <span class="hljs-string">&quot;from oneccl_bindings_for_pytorch import cwd; print(cwd)&quot;</span>)
<span class="hljs-keyword">source</span> $oneccl_bindings_for_pytorch_path/<span class="hljs-keyword">env</span>/setvars.sh`}}),pt=new he({props:{code:"dG9yY2hfY2NsX3BhdGglM0QlMjQocHl0aG9uJTIwLWMlMjAlMjJpbXBvcnQlMjB0b3JjaCUzQiUyMGltcG9ydCUyMHRvcmNoX2NjbCUzQiUyMGltcG9ydCUyMG9zJTNCJTIwJTIwcHJpbnQob3MucGF0aC5hYnNwYXRoKG9zLnBhdGguZGlybmFtZSh0b3JjaF9jY2wuX19maWxlX18pKSklMjIpJTBBc291cmNlJTIwJTI0dG9yY2hfY2NsX3BhdGglMkZlbnYlMkZzZXR2YXJzLnNo",highlighted:`torch_ccl_path=$(<span class="hljs-keyword">python</span> -c <span class="hljs-string">&quot;import torch; import torch_ccl; import os;  print(os.path.abspath(os.path.dirname(torch_ccl.__file__)))&quot;</span>)
<span class="hljs-keyword">source</span> $torch_ccl_path/<span class="hljs-keyword">env</span>/setvars.sh`}}),dt=new ce({}),_t=new ce({}),vt=new he({props:{code:"JTIwZXhwb3J0JTIwQ0NMX1dPUktFUl9DT1VOVCUzRDElMEElMjBleHBvcnQlMjBNQVNURVJfQUREUiUzRDEyNy4wLjAuMSUwQSUyMG1waXJ1biUyMC1uJTIwMiUyMC1nZW52JTIwT01QX05VTV9USFJFQURTJTNEMjMlMjAlNUMlMEElMjBweXRob24zJTIwcnVuX3FhLnB5JTIwJTVDJTBBJTIwLS1tb2RlbF9uYW1lX29yX3BhdGglMjBiZXJ0LWxhcmdlLXVuY2FzZWQlMjAlNUMlMEElMjAtLWRhdGFzZXRfbmFtZSUyMHNxdWFkJTIwJTVDJTBBJTIwLS1kb190cmFpbiUyMCU1QyUwQSUyMC0tZG9fZXZhbCUyMCU1QyUwQSUyMC0tcGVyX2RldmljZV90cmFpbl9iYXRjaF9zaXplJTIwMTIlMjAlMjAlNUMlMEElMjAtLWxlYXJuaW5nX3JhdGUlMjAzZS01JTIwJTIwJTVDJTBBJTIwLS1udW1fdHJhaW5fZXBvY2hzJTIwMiUyMCUyMCU1QyUwQSUyMC0tbWF4X3NlcV9sZW5ndGglMjAzODQlMjAlNUMlMEElMjAtLWRvY19zdHJpZGUlMjAxMjglMjAlMjAlNUMlMEElMjAtLW91dHB1dF9kaXIlMjAlMkZ0bXAlMkZkZWJ1Z19zcXVhZCUyRiUyMCU1QyUwQSUyMC0tbm9fY3VkYSUyMCU1QyUwQSUyMC0tZGRwX2JhY2tlbmQlMjBjY2wlMjAlNUMlMEElMjAtLXVzZV9pcGV4",highlighted:` export CCL_WORKER_COUNT=1
 export MASTER_ADDR=127.0.0.1
 mpirun -n 2 -genv OMP_NUM_THREADS=23 \\
 python3 run_qa.py \\
 --model_name_or_path bert-large-uncased \\
 --dataset_name squad \\
 --do_train \\
 --do_eval \\
 --per_device_train_batch_size 12  \\
 --learning_rate 3e-5  \\
 --num_train_epochs 2  \\
 --max_seq_length 384 \\
 --doc_stride 128  \\
 --output_dir /tmp/debug_squad/ \\
 --no_cuda \\
 --ddp_backend ccl \\
 --use_ipex`}}),yt=new he({props:{code:"JTIwY2F0JTIwaG9zdGZpbGUlMEElMjB4eHgueHh4Lnh4eC54eHglMjAlMjNub2RlMCUyMGlwJTBBJTIweHh4Lnh4eC54eHgueHh4JTIwJTIzbm9kZTElMjBpcA==",highlighted:` cat hostfile
 xxx.xxx.xxx.xxx #node0 ip
 xxx.xxx.xxx.xxx #node1 ip`}}),Mt=new he({props:{code:"JTIwZXhwb3J0JTIwQ0NMX1dPUktFUl9DT1VOVCUzRDElMEElMjBleHBvcnQlMjBNQVNURVJfQUREUiUzRHh4eC54eHgueHh4Lnh4eCUyMCUyM25vZGUwJTIwaXAlMEElMjBtcGlydW4lMjAtZiUyMGhvc3RmaWxlJTIwLW4lMjA0JTIwLXBwbiUyMDIlMjAlNUMlMEElMjAtZ2VudiUyME9NUF9OVU1fVEhSRUFEUyUzRDIzJTIwJTVDJTBBJTIwcHl0aG9uMyUyMHJ1bl9xYS5weSUyMCU1QyUwQSUyMC0tbW9kZWxfbmFtZV9vcl9wYXRoJTIwYmVydC1sYXJnZS11bmNhc2VkJTIwJTVDJTBBJTIwLS1kYXRhc2V0X25hbWUlMjBzcXVhZCUyMCU1QyUwQSUyMC0tZG9fdHJhaW4lMjAlNUMlMEElMjAtLWRvX2V2YWwlMjAlNUMlMEElMjAtLXBlcl9kZXZpY2VfdHJhaW5fYmF0Y2hfc2l6ZSUyMDEyJTIwJTIwJTVDJTBBJTIwLS1sZWFybmluZ19yYXRlJTIwM2UtNSUyMCUyMCU1QyUwQSUyMC0tbnVtX3RyYWluX2Vwb2NocyUyMDIlMjAlMjAlNUMlMEElMjAtLW1heF9zZXFfbGVuZ3RoJTIwMzg0JTIwJTVDJTBBJTIwLS1kb2Nfc3RyaWRlJTIwMTI4JTIwJTIwJTVDJTBBJTIwLS1vdXRwdXRfZGlyJTIwJTJGdG1wJTJGZGVidWdfc3F1YWQlMkYlMjAlNUMlMEElMjAtLW5vX2N1ZGElMjAlNUMlMEElMjAtLWRkcF9iYWNrZW5kJTIwY2NsJTIwJTVDJTBBJTIwLS11c2VfaXBleCUyMCU1QyUwQSUyMC0tYmYxNg==",highlighted:` export CCL_WORKER_COUNT=1
 export MASTER_ADDR=xxx.xxx.xxx.xxx #node0 ip
 mpirun -f hostfile -n 4 -ppn 2 \\
 -genv OMP_NUM_THREADS=23 \\
 python3 run_qa.py \\
 --model_name_or_path bert-large-uncased \\
 --dataset_name squad \\
 --do_train \\
 --do_eval \\
 --per_device_train_batch_size 12  \\
 --learning_rate 3e-5  \\
 --num_train_epochs 2  \\
 --max_seq_length 384 \\
 --doc_stride 128  \\
 --output_dir /tmp/debug_squad/ \\
 --no_cuda \\
 --ddp_backend ccl \\
 --use_ipex \\
 --bf16`}}),{c(){d=r("meta"),W=c(),_=r("h1"),m=r("a"),fe=r("span"),C(tt.$$.fragment),El=c(),pe=r("span"),ml=i("\uB2E4\uC911 CPU\uC5D0\uC11C \uD6A8\uC728\uC801\uC73C\uB85C \uD6C8\uB828\uD558\uAE30"),De=c(),wt=r("p"),wl=i("\uD558\uB098\uC758 CPU\uC5D0\uC11C \uD6C8\uB828\uD558\uB294 \uAC83\uC774 \uB108\uBB34 \uB290\uB9B4 \uB54C\uB294 \uB2E4\uC911 CPU\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC774 \uAC00\uC774\uB4DC\uB294 PyTorch \uAE30\uBC18\uC758 DDP\uB97C \uC0AC\uC6A9\uD558\uC5EC \uBD84\uC0B0 CPU \uD6C8\uB828\uC744 \uD6A8\uC728\uC801\uC73C\uB85C \uC218\uD589\uD558\uB294 \uBC29\uBC95\uC5D0 \uB300\uD574 \uC124\uBA85\uD569\uB2C8\uB2E4."),Xe=c(),X=r("h2"),V=r("a"),de=r("span"),C(et.$$.fragment),Cl=c(),_e=r("span"),Ul=i("PyTorch\uC6A9 Intel\xAE oneCCL \uBC14\uC778\uB529"),Le=c(),N=r("p"),lt=r("a"),bl=i("Intel\xAE oneCCL"),Pl=i(" (collective communications library)\uC740 allreduce, allgather, alltoall\uACFC \uAC19\uC740 \uC9D1\uD569 \uD1B5\uC2E0(collective communications)\uC744 \uAD6C\uD604\uD55C \uD6A8\uC728\uC801\uC778 \uBD84\uC0B0 \uB525\uB7EC\uB2DD \uD6C8\uB828\uC744 \uC704\uD55C \uB77C\uC774\uBE0C\uB7EC\uB9AC\uC785\uB2C8\uB2E4. oneCCL\uC5D0 \uB300\uD55C \uC790\uC138\uD55C \uC815\uBCF4\uB294 "),rt=r("a"),Jl=i("oneCCL \uBB38\uC11C"),$l=i("\uC640 "),nt=r("a"),gl=i("oneCCL \uC0AC\uC591"),Il=i("\uC744 \uCC38\uC870\uD558\uC138\uC694."),ke=c(),L=r("p"),ue=r("code"),Al=i("oneccl_bindings_for_pytorch"),jl=i(" \uBAA8\uB4C8 ("),Te=r("code"),Rl=i("torch_ccl"),xl=i("\uC740 \uBC84\uC804 1.12 \uC774\uC804\uC5D0 \uC0AC\uC6A9)\uC740 PyTorch C10D ProcessGroup API\uB97C \uAD6C\uD604\uD558\uBA70, \uC678\uBD80 ProcessGroup\uB85C \uB3D9\uC801\uC73C\uB85C \uAC00\uC838\uC62C \uC218 \uC788\uC73C\uBA70 \uD604\uC7AC Linux \uD50C\uB7AB\uD3FC\uC5D0\uC11C\uB9CC \uC791\uB3D9\uD569\uB2C8\uB2E4."),Be=c(),ot=r("p"),at=r("a"),Nl=i("oneccl_bind_pt"),Dl=i("\uC5D0\uC11C \uB354 \uC790\uC138\uD55C \uC815\uBCF4\uB97C \uD655\uC778\uD558\uC138\uC694."),Se=c(),k=r("h3"),H=r("a"),ve=r("span"),C(it.$$.fragment),Xl=c(),ye=r("span"),Ll=i("PyTorch\uC6A9 Intel\xAE oneCCL \uBC14\uC778\uB529 \uC124\uCE58:"),Ge=c(),Ct=r("p"),kl=i("\uB2E4\uC74C Python \uBC84\uC804\uC5D0 \uB300\uD55C Wheel \uD30C\uC77C\uC744 \uC0AC\uC6A9\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."),Ze=c(),Y=r("table"),Me=r("thead"),u=r("tr"),Ut=r("th"),Bl=i("Extension Version"),Sl=c(),bt=r("th"),Gl=i("Python 3.6"),Zl=c(),Pt=r("th"),Wl=i("Python 3.7"),Vl=c(),Jt=r("th"),Hl=i("Python 3.8"),Yl=c(),$t=r("th"),Ql=i("Python 3.9"),Fl=c(),gt=r("th"),zl=i("Python 3.10"),Ol=c(),w=r("tbody"),T=r("tr"),It=r("td"),ql=i("1.13.0"),Kl=c(),Ee=r("td"),tr=c(),At=r("td"),er=i("\u221A"),lr=c(),jt=r("td"),rr=i("\u221A"),nr=c(),Rt=r("td"),or=i("\u221A"),ar=c(),xt=r("td"),ir=i("\u221A"),sr=c(),v=r("tr"),Nt=r("td"),cr=i("1.12.100"),hr=c(),me=r("td"),fr=c(),Dt=r("td"),pr=i("\u221A"),dr=c(),Xt=r("td"),_r=i("\u221A"),ur=c(),Lt=r("td"),Tr=i("\u221A"),vr=c(),kt=r("td"),yr=i("\u221A"),Mr=c(),y=r("tr"),Bt=r("td"),Er=i("1.12.0"),mr=c(),we=r("td"),wr=c(),St=r("td"),Cr=i("\u221A"),Ur=c(),Gt=r("td"),br=i("\u221A"),Pr=c(),Zt=r("td"),Jr=i("\u221A"),$r=c(),Wt=r("td"),gr=i("\u221A"),Ir=c(),M=r("tr"),Vt=r("td"),Ar=i("1.11.0"),jr=c(),Ce=r("td"),Rr=c(),Ht=r("td"),xr=i("\u221A"),Nr=c(),Yt=r("td"),Dr=i("\u221A"),Xr=c(),Qt=r("td"),Lr=i("\u221A"),kr=c(),Ft=r("td"),Br=i("\u221A"),Sr=c(),E=r("tr"),zt=r("td"),Gr=i("1.10.0"),Zr=c(),Ot=r("td"),Wr=i("\u221A"),Vr=c(),qt=r("td"),Hr=i("\u221A"),Yr=c(),Kt=r("td"),Qr=i("\u221A"),Fr=c(),te=r("td"),zr=i("\u221A"),Or=c(),Ue=r("td"),We=c(),C(st.$$.fragment),Ve=c(),B=r("p"),be=r("code"),qr=i("{pytorch_version}"),Kr=i(`\uC740 1.13.0\uACFC \uAC19\uC774 PyTorch \uBC84\uC804\uC744 \uB098\uD0C0\uB0C5\uB2C8\uB2E4.
`),ct=r("a"),tn=i("oneccl_bind_pt \uC124\uCE58"),en=i(`\uC5D0 \uB300\uD55C \uB354 \uB9CE\uC740 \uC811\uADFC \uBC29\uBC95\uC744 \uD655\uC778\uD574 \uBCF4\uC138\uC694.
oneCCL\uACFC PyTorch\uC758 \uBC84\uC804\uC740 \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4.`),He=c(),C(Q.$$.fragment),Ye=c(),S=r("h2"),F=r("a"),Pe=r("span"),C(ht.$$.fragment),ln=c(),Je=r("span"),rn=i("Intel\xAE MPI \uB77C\uC774\uBE0C\uB7EC\uB9AC"),Qe=i(`

\uC774 \uD45C\uC900 \uAE30\uBC18 MPI \uAD6C\uD604\uC744 \uC0AC\uC6A9\uD558\uC5EC Intel\xAE \uC544\uD0A4\uD14D\uCC98\uC5D0\uC11C \uC720\uC5F0\uD558\uACE0 \uD6A8\uC728\uC801\uC774\uBA70 \uD655\uC7A5 \uAC00\uB2A5\uD55C \uD074\uB7EC\uC2A4\uD130 \uBA54\uC2DC\uC9D5\uC744 \uC81C\uACF5\uD558\uC138\uC694. \uC774 \uAD6C\uC131 \uC694\uC18C\uB294 Intel\xAE oneAPI HPC Toolkit\uC758 \uC77C\uBD80\uC785\uB2C8\uB2E4.
`),ee=r("p"),nn=i("oneccl_bindings_for_pytorch\uB294 MPI \uB3C4\uAD6C \uC138\uD2B8\uC640 \uD568\uAED8 \uC124\uCE58\uB429\uB2C8\uB2E4. \uC0AC\uC6A9\uD558\uAE30 \uC804\uC5D0 \uD658\uACBD\uC744 \uC18C\uC2A4\uB85C \uC9C0\uC815\uD574\uC57C \uD569\uB2C8\uB2E4."),Fe=c(),le=r("p"),on=i("Intel\xAE oneCCL \uBC84\uC804 1.12.0 \uC774\uC0C1\uC778 \uACBD\uC6B0"),ze=c(),C(ft.$$.fragment),Oe=c(),re=r("p"),an=i("Intel\xAE oneCCL \uBC84\uC804\uC774 1.12.0 \uBBF8\uB9CC\uC778 \uACBD\uC6B0"),qe=c(),C(pt.$$.fragment),Ke=c(),G=r("h4"),z=r("a"),$e=r("span"),C(dt.$$.fragment),sn=c(),ge=r("span"),cn=i("IPEX \uC124\uCE58:"),tl=c(),O=r("p"),hn=i("IPEX\uB294 Float32\uC640 BFloat16\uC744 \uBAA8\uB450 \uC0AC\uC6A9\uD558\uB294 CPU \uD6C8\uB828\uC744 \uC704\uD55C \uC131\uB2A5 \uCD5C\uC801\uD654\uB97C \uC81C\uACF5\uD569\uB2C8\uB2E4. "),ne=r("a"),fn=i("single CPU section"),pn=i("\uC744 \uCC38\uC870\uD558\uC138\uC694."),el=c(),oe=r("p"),dn=i("\uC774\uC5B4\uC11C \uB098\uC624\uB294 \u201CTrainer\uC5D0\uC11C\uC758 \uC0AC\uC6A9\u201D\uC740 Intel\xAE MPI \uB77C\uC774\uBE0C\uB7EC\uB9AC\uC758 mpirun\uC744 \uC608\uB85C \uB4E4\uC5C8\uC2B5\uB2C8\uB2E4."),ll=c(),Z=r("h2"),q=r("a"),Ie=r("span"),C(_t.$$.fragment),_n=c(),Ae=r("span"),un=i("Trainer\uC5D0\uC11C\uC758 \uC0AC\uC6A9"),rl=i(`

Trainer\uC5D0\uC11C ccl \uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD558\uC5EC \uBA40\uD2F0 CPU \uBD84\uC0B0 \uD6C8\uB828\uC744 \uD65C\uC131\uD654\uD558\uB824\uBA74 \uBA85\uB839 \uC778\uC218\uC5D0 **\`--ddp_backend ccl\`**\uC744 \uCD94\uAC00\uD574\uC57C \uD569\uB2C8\uB2E4.
`),ut=r("p"),Tt=r("a"),Tn=i("\uC9C8\uC758 \uC751\uB2F5 \uC608\uC81C"),vn=i("\uB97C \uC0AC\uC6A9\uD55C \uC608\uB97C \uC0B4\uD3B4\uBCF4\uACA0\uC2B5\uB2C8\uB2E4."),nl=c(),ae=r("p"),yn=i("\uB2E4\uC74C \uBA85\uB839\uC740 \uD55C Xeon \uB178\uB4DC\uC5D0\uC11C 2\uAC1C\uC758 \uD504\uB85C\uC138\uC2A4\uB85C \uD6C8\uB828\uC744 \uD65C\uC131\uD654\uD558\uBA70, \uAC01 \uC18C\uCF13\uB2F9 \uD558\uB098\uC758 \uD504\uB85C\uC138\uC2A4\uAC00 \uC2E4\uD589\uB429\uB2C8\uB2E4. OMP_NUM_THREADS/CCL_WORKER_COUNT \uBCC0\uC218\uB294 \uCD5C\uC801\uC758 \uC131\uB2A5\uC744 \uC704\uD574 \uC870\uC815\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."),ol=c(),C(vt.$$.fragment),al=c(),ie=r("p"),Mn=i("\uB2E4\uC74C \uBA85\uB839\uC740 \uB450 \uAC1C\uC758 Xeon(\uB178\uB4DC0 \uBC0F \uB178\uB4DC1, \uC8FC \uD504\uB85C\uC138\uC2A4\uB85C \uB178\uB4DC0\uC744 \uC0AC\uC6A9)\uC5D0\uC11C \uCD1D 4\uAC1C\uC758 \uD504\uB85C\uC138\uC2A4\uB85C \uD6C8\uB828\uC744 \uD65C\uC131\uD654\uD558\uBA70, \uAC01 \uC18C\uCF13\uB2F9 \uD558\uB098\uC758 \uD504\uB85C\uC138\uC2A4\uAC00 \uC2E4\uD589\uB429\uB2C8\uB2E4. OMP_NUM_THREADS/CCL_WORKER_COUNT \uBCC0\uC218\uB294 \uCD5C\uC801\uC758 \uC131\uB2A5\uC744 \uC704\uD574 \uC870\uC815\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."),il=c(),se=r("p"),En=i("\uB178\uB4DC0\uC5D0\uC11C\uB294 \uAC01 \uB178\uB4DC\uC758 IP \uC8FC\uC18C\uB97C \uD3EC\uD568\uD558\uB294 \uAD6C\uC131 \uD30C\uC77C(\uC608: hostfile)\uC744 \uC0DD\uC131\uD558\uACE0 \uD574\uB2F9 \uAD6C\uC131 \uD30C\uC77C \uACBD\uB85C\uB97C \uC778\uC218\uB85C \uC804\uB2EC\uD574\uC57C \uD569\uB2C8\uB2E4."),sl=c(),C(yt.$$.fragment),cl=c(),K=r("p"),mn=i("\uC774\uC81C \uB178\uB4DC0\uC5D0\uC11C \uB2E4\uC74C \uBA85\uB839\uC744 \uC2E4\uD589\uD558\uBA74 "),je=r("strong"),wn=i("4DDP"),Cn=i("\uAC00 \uB178\uB4DC0 \uBC0F \uB178\uB4DC1\uC5D0\uC11C BF16 \uC790\uB3D9 \uD63C\uD569 \uC815\uBC00\uB3C4\uB85C \uD65C\uC131\uD654\uB429\uB2C8\uB2E4."),hl=c(),C(Mt.$$.fragment),this.h()},l(t){const f=Ho('[data-svelte="svelte-1phssyn"]',document.head);d=n(f,"META",{name:!0,content:!0}),f.forEach(l),W=h(t),_=n(t,"H1",{class:!0});var Et=o(_);m=n(Et,"A",{id:!0,class:!0,href:!0});var Pn=o(m);fe=n(Pn,"SPAN",{});var Jn=o(fe);U(tt.$$.fragment,Jn),Jn.forEach(l),Pn.forEach(l),El=h(Et),pe=n(Et,"SPAN",{});var $n=o(pe);ml=s($n,"\uB2E4\uC911 CPU\uC5D0\uC11C \uD6A8\uC728\uC801\uC73C\uB85C \uD6C8\uB828\uD558\uAE30"),$n.forEach(l),Et.forEach(l),De=h(t),wt=n(t,"P",{});var gn=o(wt);wl=s(gn,"\uD558\uB098\uC758 CPU\uC5D0\uC11C \uD6C8\uB828\uD558\uB294 \uAC83\uC774 \uB108\uBB34 \uB290\uB9B4 \uB54C\uB294 \uB2E4\uC911 CPU\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC774 \uAC00\uC774\uB4DC\uB294 PyTorch \uAE30\uBC18\uC758 DDP\uB97C \uC0AC\uC6A9\uD558\uC5EC \uBD84\uC0B0 CPU \uD6C8\uB828\uC744 \uD6A8\uC728\uC801\uC73C\uB85C \uC218\uD589\uD558\uB294 \uBC29\uBC95\uC5D0 \uB300\uD574 \uC124\uBA85\uD569\uB2C8\uB2E4."),gn.forEach(l),Xe=h(t),X=n(t,"H2",{class:!0});var pl=o(X);V=n(pl,"A",{id:!0,class:!0,href:!0});var In=o(V);de=n(In,"SPAN",{});var An=o(de);U(et.$$.fragment,An),An.forEach(l),In.forEach(l),Cl=h(pl),_e=n(pl,"SPAN",{});var jn=o(_e);Ul=s(jn,"PyTorch\uC6A9 Intel\xAE oneCCL \uBC14\uC778\uB529"),jn.forEach(l),pl.forEach(l),Le=h(t),N=n(t,"P",{});var mt=o(N);lt=n(mt,"A",{href:!0,rel:!0});var Rn=o(lt);bl=s(Rn,"Intel\xAE oneCCL"),Rn.forEach(l),Pl=s(mt," (collective communications library)\uC740 allreduce, allgather, alltoall\uACFC \uAC19\uC740 \uC9D1\uD569 \uD1B5\uC2E0(collective communications)\uC744 \uAD6C\uD604\uD55C \uD6A8\uC728\uC801\uC778 \uBD84\uC0B0 \uB525\uB7EC\uB2DD \uD6C8\uB828\uC744 \uC704\uD55C \uB77C\uC774\uBE0C\uB7EC\uB9AC\uC785\uB2C8\uB2E4. oneCCL\uC5D0 \uB300\uD55C \uC790\uC138\uD55C \uC815\uBCF4\uB294 "),rt=n(mt,"A",{href:!0,rel:!0});var xn=o(rt);Jl=s(xn,"oneCCL \uBB38\uC11C"),xn.forEach(l),$l=s(mt,"\uC640 "),nt=n(mt,"A",{href:!0,rel:!0});var Nn=o(nt);gl=s(Nn,"oneCCL \uC0AC\uC591"),Nn.forEach(l),Il=s(mt,"\uC744 \uCC38\uC870\uD558\uC138\uC694."),mt.forEach(l),ke=h(t),L=n(t,"P",{});var Re=o(L);ue=n(Re,"CODE",{});var Dn=o(ue);Al=s(Dn,"oneccl_bindings_for_pytorch"),Dn.forEach(l),jl=s(Re," \uBAA8\uB4C8 ("),Te=n(Re,"CODE",{});var Xn=o(Te);Rl=s(Xn,"torch_ccl"),Xn.forEach(l),xl=s(Re,"\uC740 \uBC84\uC804 1.12 \uC774\uC804\uC5D0 \uC0AC\uC6A9)\uC740 PyTorch C10D ProcessGroup API\uB97C \uAD6C\uD604\uD558\uBA70, \uC678\uBD80 ProcessGroup\uB85C \uB3D9\uC801\uC73C\uB85C \uAC00\uC838\uC62C \uC218 \uC788\uC73C\uBA70 \uD604\uC7AC Linux \uD50C\uB7AB\uD3FC\uC5D0\uC11C\uB9CC \uC791\uB3D9\uD569\uB2C8\uB2E4."),Re.forEach(l),Be=h(t),ot=n(t,"P",{});var Un=o(ot);at=n(Un,"A",{href:!0,rel:!0});var Ln=o(at);Nl=s(Ln,"oneccl_bind_pt"),Ln.forEach(l),Dl=s(Un,"\uC5D0\uC11C \uB354 \uC790\uC138\uD55C \uC815\uBCF4\uB97C \uD655\uC778\uD558\uC138\uC694."),Un.forEach(l),Se=h(t),k=n(t,"H3",{class:!0});var dl=o(k);H=n(dl,"A",{id:!0,class:!0,href:!0});var kn=o(H);ve=n(kn,"SPAN",{});var Bn=o(ve);U(it.$$.fragment,Bn),Bn.forEach(l),kn.forEach(l),Xl=h(dl),ye=n(dl,"SPAN",{});var Sn=o(ye);Ll=s(Sn,"PyTorch\uC6A9 Intel\xAE oneCCL \uBC14\uC778\uB529 \uC124\uCE58:"),Sn.forEach(l),dl.forEach(l),Ge=h(t),Ct=n(t,"P",{});var Gn=o(Ct);kl=s(Gn,"\uB2E4\uC74C Python \uBC84\uC804\uC5D0 \uB300\uD55C Wheel \uD30C\uC77C\uC744 \uC0AC\uC6A9\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."),Gn.forEach(l),Ze=h(t),Y=n(t,"TABLE",{});var _l=o(Y);Me=n(_l,"THEAD",{});var Zn=o(Me);u=n(Zn,"TR",{});var g=o(u);Ut=n(g,"TH",{align:!0});var Wn=o(Ut);Bl=s(Wn,"Extension Version"),Wn.forEach(l),Sl=h(g),bt=n(g,"TH",{align:!0});var Vn=o(bt);Gl=s(Vn,"Python 3.6"),Vn.forEach(l),Zl=h(g),Pt=n(g,"TH",{align:!0});var Hn=o(Pt);Wl=s(Hn,"Python 3.7"),Hn.forEach(l),Vl=h(g),Jt=n(g,"TH",{align:!0});var Yn=o(Jt);Hl=s(Yn,"Python 3.8"),Yn.forEach(l),Yl=h(g),$t=n(g,"TH",{align:!0});var Qn=o($t);Ql=s(Qn,"Python 3.9"),Qn.forEach(l),Fl=h(g),gt=n(g,"TH",{align:!0});var Fn=o(gt);zl=s(Fn,"Python 3.10"),Fn.forEach(l),g.forEach(l),Zn.forEach(l),Ol=h(_l),w=n(_l,"TBODY",{});var D=o(w);T=n(D,"TR",{});var I=o(T);It=n(I,"TD",{align:!0});var zn=o(It);ql=s(zn,"1.13.0"),zn.forEach(l),Kl=h(I),Ee=n(I,"TD",{align:!0}),o(Ee).forEach(l),tr=h(I),At=n(I,"TD",{align:!0});var On=o(At);er=s(On,"\u221A"),On.forEach(l),lr=h(I),jt=n(I,"TD",{align:!0});var qn=o(jt);rr=s(qn,"\u221A"),qn.forEach(l),nr=h(I),Rt=n(I,"TD",{align:!0});var Kn=o(Rt);or=s(Kn,"\u221A"),Kn.forEach(l),ar=h(I),xt=n(I,"TD",{align:!0});var to=o(xt);ir=s(to,"\u221A"),to.forEach(l),I.forEach(l),sr=h(D),v=n(D,"TR",{});var A=o(v);Nt=n(A,"TD",{align:!0});var eo=o(Nt);cr=s(eo,"1.12.100"),eo.forEach(l),hr=h(A),me=n(A,"TD",{align:!0}),o(me).forEach(l),fr=h(A),Dt=n(A,"TD",{align:!0});var lo=o(Dt);pr=s(lo,"\u221A"),lo.forEach(l),dr=h(A),Xt=n(A,"TD",{align:!0});var ro=o(Xt);_r=s(ro,"\u221A"),ro.forEach(l),ur=h(A),Lt=n(A,"TD",{align:!0});var no=o(Lt);Tr=s(no,"\u221A"),no.forEach(l),vr=h(A),kt=n(A,"TD",{align:!0});var oo=o(kt);yr=s(oo,"\u221A"),oo.forEach(l),A.forEach(l),Mr=h(D),y=n(D,"TR",{});var j=o(y);Bt=n(j,"TD",{align:!0});var ao=o(Bt);Er=s(ao,"1.12.0"),ao.forEach(l),mr=h(j),we=n(j,"TD",{align:!0}),o(we).forEach(l),wr=h(j),St=n(j,"TD",{align:!0});var io=o(St);Cr=s(io,"\u221A"),io.forEach(l),Ur=h(j),Gt=n(j,"TD",{align:!0});var so=o(Gt);br=s(so,"\u221A"),so.forEach(l),Pr=h(j),Zt=n(j,"TD",{align:!0});var co=o(Zt);Jr=s(co,"\u221A"),co.forEach(l),$r=h(j),Wt=n(j,"TD",{align:!0});var ho=o(Wt);gr=s(ho,"\u221A"),ho.forEach(l),j.forEach(l),Ir=h(D),M=n(D,"TR",{});var R=o(M);Vt=n(R,"TD",{align:!0});var fo=o(Vt);Ar=s(fo,"1.11.0"),fo.forEach(l),jr=h(R),Ce=n(R,"TD",{align:!0}),o(Ce).forEach(l),Rr=h(R),Ht=n(R,"TD",{align:!0});var po=o(Ht);xr=s(po,"\u221A"),po.forEach(l),Nr=h(R),Yt=n(R,"TD",{align:!0});var _o=o(Yt);Dr=s(_o,"\u221A"),_o.forEach(l),Xr=h(R),Qt=n(R,"TD",{align:!0});var uo=o(Qt);Lr=s(uo,"\u221A"),uo.forEach(l),kr=h(R),Ft=n(R,"TD",{align:!0});var To=o(Ft);Br=s(To,"\u221A"),To.forEach(l),R.forEach(l),Sr=h(D),E=n(D,"TR",{});var x=o(E);zt=n(x,"TD",{align:!0});var vo=o(zt);Gr=s(vo,"1.10.0"),vo.forEach(l),Zr=h(x),Ot=n(x,"TD",{align:!0});var yo=o(Ot);Wr=s(yo,"\u221A"),yo.forEach(l),Vr=h(x),qt=n(x,"TD",{align:!0});var Mo=o(qt);Hr=s(Mo,"\u221A"),Mo.forEach(l),Yr=h(x),Kt=n(x,"TD",{align:!0});var Eo=o(Kt);Qr=s(Eo,"\u221A"),Eo.forEach(l),Fr=h(x),te=n(x,"TD",{align:!0});var mo=o(te);zr=s(mo,"\u221A"),mo.forEach(l),Or=h(x),Ue=n(x,"TD",{align:!0}),o(Ue).forEach(l),x.forEach(l),D.forEach(l),_l.forEach(l),We=h(t),U(st.$$.fragment,t),Ve=h(t),B=n(t,"P",{});var xe=o(B);be=n(xe,"CODE",{});var wo=o(be);qr=s(wo,"{pytorch_version}"),wo.forEach(l),Kr=s(xe,`\uC740 1.13.0\uACFC \uAC19\uC774 PyTorch \uBC84\uC804\uC744 \uB098\uD0C0\uB0C5\uB2C8\uB2E4.
`),ct=n(xe,"A",{href:!0,rel:!0});var Co=o(ct);tn=s(Co,"oneccl_bind_pt \uC124\uCE58"),Co.forEach(l),en=s(xe,`\uC5D0 \uB300\uD55C \uB354 \uB9CE\uC740 \uC811\uADFC \uBC29\uBC95\uC744 \uD655\uC778\uD574 \uBCF4\uC138\uC694.
oneCCL\uACFC PyTorch\uC758 \uBC84\uC804\uC740 \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4.`),xe.forEach(l),He=h(t),U(Q.$$.fragment,t),Ye=h(t),S=n(t,"H2",{class:!0});var ul=o(S);F=n(ul,"A",{id:!0,class:!0,href:!0});var Uo=o(F);Pe=n(Uo,"SPAN",{});var bo=o(Pe);U(ht.$$.fragment,bo),bo.forEach(l),Uo.forEach(l),ln=h(ul),Je=n(ul,"SPAN",{});var Po=o(Je);rn=s(Po,"Intel\xAE MPI \uB77C\uC774\uBE0C\uB7EC\uB9AC"),Po.forEach(l),ul.forEach(l),Qe=s(t,`

\uC774 \uD45C\uC900 \uAE30\uBC18 MPI \uAD6C\uD604\uC744 \uC0AC\uC6A9\uD558\uC5EC Intel\xAE \uC544\uD0A4\uD14D\uCC98\uC5D0\uC11C \uC720\uC5F0\uD558\uACE0 \uD6A8\uC728\uC801\uC774\uBA70 \uD655\uC7A5 \uAC00\uB2A5\uD55C \uD074\uB7EC\uC2A4\uD130 \uBA54\uC2DC\uC9D5\uC744 \uC81C\uACF5\uD558\uC138\uC694. \uC774 \uAD6C\uC131 \uC694\uC18C\uB294 Intel\xAE oneAPI HPC Toolkit\uC758 \uC77C\uBD80\uC785\uB2C8\uB2E4.
`),ee=n(t,"P",{});var Jo=o(ee);nn=s(Jo,"oneccl_bindings_for_pytorch\uB294 MPI \uB3C4\uAD6C \uC138\uD2B8\uC640 \uD568\uAED8 \uC124\uCE58\uB429\uB2C8\uB2E4. \uC0AC\uC6A9\uD558\uAE30 \uC804\uC5D0 \uD658\uACBD\uC744 \uC18C\uC2A4\uB85C \uC9C0\uC815\uD574\uC57C \uD569\uB2C8\uB2E4."),Jo.forEach(l),Fe=h(t),le=n(t,"P",{});var $o=o(le);on=s($o,"Intel\xAE oneCCL \uBC84\uC804 1.12.0 \uC774\uC0C1\uC778 \uACBD\uC6B0"),$o.forEach(l),ze=h(t),U(ft.$$.fragment,t),Oe=h(t),re=n(t,"P",{});var go=o(re);an=s(go,"Intel\xAE oneCCL \uBC84\uC804\uC774 1.12.0 \uBBF8\uB9CC\uC778 \uACBD\uC6B0"),go.forEach(l),qe=h(t),U(pt.$$.fragment,t),Ke=h(t),G=n(t,"H4",{class:!0});var Tl=o(G);z=n(Tl,"A",{id:!0,class:!0,href:!0});var Io=o(z);$e=n(Io,"SPAN",{});var Ao=o($e);U(dt.$$.fragment,Ao),Ao.forEach(l),Io.forEach(l),sn=h(Tl),ge=n(Tl,"SPAN",{});var jo=o(ge);cn=s(jo,"IPEX \uC124\uCE58:"),jo.forEach(l),Tl.forEach(l),tl=h(t),O=n(t,"P",{});var vl=o(O);hn=s(vl,"IPEX\uB294 Float32\uC640 BFloat16\uC744 \uBAA8\uB450 \uC0AC\uC6A9\uD558\uB294 CPU \uD6C8\uB828\uC744 \uC704\uD55C \uC131\uB2A5 \uCD5C\uC801\uD654\uB97C \uC81C\uACF5\uD569\uB2C8\uB2E4. "),ne=n(vl,"A",{href:!0});var Ro=o(ne);fn=s(Ro,"single CPU section"),Ro.forEach(l),pn=s(vl,"\uC744 \uCC38\uC870\uD558\uC138\uC694."),vl.forEach(l),el=h(t),oe=n(t,"P",{});var xo=o(oe);dn=s(xo,"\uC774\uC5B4\uC11C \uB098\uC624\uB294 \u201CTrainer\uC5D0\uC11C\uC758 \uC0AC\uC6A9\u201D\uC740 Intel\xAE MPI \uB77C\uC774\uBE0C\uB7EC\uB9AC\uC758 mpirun\uC744 \uC608\uB85C \uB4E4\uC5C8\uC2B5\uB2C8\uB2E4."),xo.forEach(l),ll=h(t),Z=n(t,"H2",{class:!0});var yl=o(Z);q=n(yl,"A",{id:!0,class:!0,href:!0});var No=o(q);Ie=n(No,"SPAN",{});var Do=o(Ie);U(_t.$$.fragment,Do),Do.forEach(l),No.forEach(l),_n=h(yl),Ae=n(yl,"SPAN",{});var Xo=o(Ae);un=s(Xo,"Trainer\uC5D0\uC11C\uC758 \uC0AC\uC6A9"),Xo.forEach(l),yl.forEach(l),rl=s(t,`

Trainer\uC5D0\uC11C ccl \uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD558\uC5EC \uBA40\uD2F0 CPU \uBD84\uC0B0 \uD6C8\uB828\uC744 \uD65C\uC131\uD654\uD558\uB824\uBA74 \uBA85\uB839 \uC778\uC218\uC5D0 **\`--ddp_backend ccl\`**\uC744 \uCD94\uAC00\uD574\uC57C \uD569\uB2C8\uB2E4.
`),ut=n(t,"P",{});var bn=o(ut);Tt=n(bn,"A",{href:!0,rel:!0});var Lo=o(Tt);Tn=s(Lo,"\uC9C8\uC758 \uC751\uB2F5 \uC608\uC81C"),Lo.forEach(l),vn=s(bn,"\uB97C \uC0AC\uC6A9\uD55C \uC608\uB97C \uC0B4\uD3B4\uBCF4\uACA0\uC2B5\uB2C8\uB2E4."),bn.forEach(l),nl=h(t),ae=n(t,"P",{});var ko=o(ae);yn=s(ko,"\uB2E4\uC74C \uBA85\uB839\uC740 \uD55C Xeon \uB178\uB4DC\uC5D0\uC11C 2\uAC1C\uC758 \uD504\uB85C\uC138\uC2A4\uB85C \uD6C8\uB828\uC744 \uD65C\uC131\uD654\uD558\uBA70, \uAC01 \uC18C\uCF13\uB2F9 \uD558\uB098\uC758 \uD504\uB85C\uC138\uC2A4\uAC00 \uC2E4\uD589\uB429\uB2C8\uB2E4. OMP_NUM_THREADS/CCL_WORKER_COUNT \uBCC0\uC218\uB294 \uCD5C\uC801\uC758 \uC131\uB2A5\uC744 \uC704\uD574 \uC870\uC815\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."),ko.forEach(l),ol=h(t),U(vt.$$.fragment,t),al=h(t),ie=n(t,"P",{});var Bo=o(ie);Mn=s(Bo,"\uB2E4\uC74C \uBA85\uB839\uC740 \uB450 \uAC1C\uC758 Xeon(\uB178\uB4DC0 \uBC0F \uB178\uB4DC1, \uC8FC \uD504\uB85C\uC138\uC2A4\uB85C \uB178\uB4DC0\uC744 \uC0AC\uC6A9)\uC5D0\uC11C \uCD1D 4\uAC1C\uC758 \uD504\uB85C\uC138\uC2A4\uB85C \uD6C8\uB828\uC744 \uD65C\uC131\uD654\uD558\uBA70, \uAC01 \uC18C\uCF13\uB2F9 \uD558\uB098\uC758 \uD504\uB85C\uC138\uC2A4\uAC00 \uC2E4\uD589\uB429\uB2C8\uB2E4. OMP_NUM_THREADS/CCL_WORKER_COUNT \uBCC0\uC218\uB294 \uCD5C\uC801\uC758 \uC131\uB2A5\uC744 \uC704\uD574 \uC870\uC815\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."),Bo.forEach(l),il=h(t),se=n(t,"P",{});var So=o(se);En=s(So,"\uB178\uB4DC0\uC5D0\uC11C\uB294 \uAC01 \uB178\uB4DC\uC758 IP \uC8FC\uC18C\uB97C \uD3EC\uD568\uD558\uB294 \uAD6C\uC131 \uD30C\uC77C(\uC608: hostfile)\uC744 \uC0DD\uC131\uD558\uACE0 \uD574\uB2F9 \uAD6C\uC131 \uD30C\uC77C \uACBD\uB85C\uB97C \uC778\uC218\uB85C \uC804\uB2EC\uD574\uC57C \uD569\uB2C8\uB2E4."),So.forEach(l),sl=h(t),U(yt.$$.fragment,t),cl=h(t),K=n(t,"P",{});var Ml=o(K);mn=s(Ml,"\uC774\uC81C \uB178\uB4DC0\uC5D0\uC11C \uB2E4\uC74C \uBA85\uB839\uC744 \uC2E4\uD589\uD558\uBA74 "),je=n(Ml,"STRONG",{});var Go=o(je);wn=s(Go,"4DDP"),Go.forEach(l),Cn=s(Ml,"\uAC00 \uB178\uB4DC0 \uBC0F \uB178\uB4DC1\uC5D0\uC11C BF16 \uC790\uB3D9 \uD63C\uD569 \uC815\uBC00\uB3C4\uB85C \uD65C\uC131\uD654\uB429\uB2C8\uB2E4."),Ml.forEach(l),hl=h(t),U(Mt.$$.fragment,t),this.h()},h(){a(d,"name","hf:doc:metadata"),a(d,"content",JSON.stringify(Oo)),a(m,"id","efficient-training-on-multiple-cpus"),a(m,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(m,"href","#efficient-training-on-multiple-cpus"),a(_,"class","relative group"),a(V,"id","intel-oneccl-bindings-for-pytorch"),a(V,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(V,"href","#intel-oneccl-bindings-for-pytorch"),a(X,"class","relative group"),a(lt,"href","https://github.com/oneapi-src/oneCCL"),a(lt,"rel","nofollow"),a(rt,"href","https://spec.oneapi.com/versions/latest/elements/oneCCL/source/index.html"),a(rt,"rel","nofollow"),a(nt,"href","https://spec.oneapi.com/versions/latest/elements/oneCCL/source/index.html"),a(nt,"rel","nofollow"),a(at,"href","https://github.com/intel/torch-ccl"),a(at,"rel","nofollow"),a(H,"id","intel-oneccl-bindings-for-pytorch-installation"),a(H,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(H,"href","#intel-oneccl-bindings-for-pytorch-installation"),a(k,"class","relative group"),a(Ut,"align","center"),a(bt,"align","center"),a(Pt,"align","center"),a(Jt,"align","center"),a($t,"align","center"),a(gt,"align","center"),a(It,"align","center"),a(Ee,"align","center"),a(At,"align","center"),a(jt,"align","center"),a(Rt,"align","center"),a(xt,"align","center"),a(Nt,"align","center"),a(me,"align","center"),a(Dt,"align","center"),a(Xt,"align","center"),a(Lt,"align","center"),a(kt,"align","center"),a(Bt,"align","center"),a(we,"align","center"),a(St,"align","center"),a(Gt,"align","center"),a(Zt,"align","center"),a(Wt,"align","center"),a(Vt,"align","center"),a(Ce,"align","center"),a(Ht,"align","center"),a(Yt,"align","center"),a(Qt,"align","center"),a(Ft,"align","center"),a(zt,"align","center"),a(Ot,"align","center"),a(qt,"align","center"),a(Kt,"align","center"),a(te,"align","center"),a(Ue,"align","center"),a(ct,"href","https://github.com/intel/torch-ccl"),a(ct,"rel","nofollow"),a(F,"id","intel-mpi-library"),a(F,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(F,"href","#intel-mpi-library"),a(S,"class","relative group"),a(z,"id","ipex-installation"),a(z,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(z,"href","#ipex-installation"),a(G,"class","relative group"),a(ne,"href","./perf_train_cpu"),a(q,"id","usage-in-trainer"),a(q,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),a(q,"href","#usage-in-trainer"),a(Z,"class","relative group"),a(Tt,"href","https://github.com/huggingface/transformers/tree/main/examples/pytorch/question-answering"),a(Tt,"rel","nofollow")},m(t,f){e(document.head,d),p(t,W,f),p(t,_,f),e(_,m),e(m,fe),b(tt,fe,null),e(_,El),e(_,pe),e(pe,ml),p(t,De,f),p(t,wt,f),e(wt,wl),p(t,Xe,f),p(t,X,f),e(X,V),e(V,de),b(et,de,null),e(X,Cl),e(X,_e),e(_e,Ul),p(t,Le,f),p(t,N,f),e(N,lt),e(lt,bl),e(N,Pl),e(N,rt),e(rt,Jl),e(N,$l),e(N,nt),e(nt,gl),e(N,Il),p(t,ke,f),p(t,L,f),e(L,ue),e(ue,Al),e(L,jl),e(L,Te),e(Te,Rl),e(L,xl),p(t,Be,f),p(t,ot,f),e(ot,at),e(at,Nl),e(ot,Dl),p(t,Se,f),p(t,k,f),e(k,H),e(H,ve),b(it,ve,null),e(k,Xl),e(k,ye),e(ye,Ll),p(t,Ge,f),p(t,Ct,f),e(Ct,kl),p(t,Ze,f),p(t,Y,f),e(Y,Me),e(Me,u),e(u,Ut),e(Ut,Bl),e(u,Sl),e(u,bt),e(bt,Gl),e(u,Zl),e(u,Pt),e(Pt,Wl),e(u,Vl),e(u,Jt),e(Jt,Hl),e(u,Yl),e(u,$t),e($t,Ql),e(u,Fl),e(u,gt),e(gt,zl),e(Y,Ol),e(Y,w),e(w,T),e(T,It),e(It,ql),e(T,Kl),e(T,Ee),e(T,tr),e(T,At),e(At,er),e(T,lr),e(T,jt),e(jt,rr),e(T,nr),e(T,Rt),e(Rt,or),e(T,ar),e(T,xt),e(xt,ir),e(w,sr),e(w,v),e(v,Nt),e(Nt,cr),e(v,hr),e(v,me),e(v,fr),e(v,Dt),e(Dt,pr),e(v,dr),e(v,Xt),e(Xt,_r),e(v,ur),e(v,Lt),e(Lt,Tr),e(v,vr),e(v,kt),e(kt,yr),e(w,Mr),e(w,y),e(y,Bt),e(Bt,Er),e(y,mr),e(y,we),e(y,wr),e(y,St),e(St,Cr),e(y,Ur),e(y,Gt),e(Gt,br),e(y,Pr),e(y,Zt),e(Zt,Jr),e(y,$r),e(y,Wt),e(Wt,gr),e(w,Ir),e(w,M),e(M,Vt),e(Vt,Ar),e(M,jr),e(M,Ce),e(M,Rr),e(M,Ht),e(Ht,xr),e(M,Nr),e(M,Yt),e(Yt,Dr),e(M,Xr),e(M,Qt),e(Qt,Lr),e(M,kr),e(M,Ft),e(Ft,Br),e(w,Sr),e(w,E),e(E,zt),e(zt,Gr),e(E,Zr),e(E,Ot),e(Ot,Wr),e(E,Vr),e(E,qt),e(qt,Hr),e(E,Yr),e(E,Kt),e(Kt,Qr),e(E,Fr),e(E,te),e(te,zr),e(E,Or),e(E,Ue),p(t,We,f),b(st,t,f),p(t,Ve,f),p(t,B,f),e(B,be),e(be,qr),e(B,Kr),e(B,ct),e(ct,tn),e(B,en),p(t,He,f),b(Q,t,f),p(t,Ye,f),p(t,S,f),e(S,F),e(F,Pe),b(ht,Pe,null),e(S,ln),e(S,Je),e(Je,rn),p(t,Qe,f),p(t,ee,f),e(ee,nn),p(t,Fe,f),p(t,le,f),e(le,on),p(t,ze,f),b(ft,t,f),p(t,Oe,f),p(t,re,f),e(re,an),p(t,qe,f),b(pt,t,f),p(t,Ke,f),p(t,G,f),e(G,z),e(z,$e),b(dt,$e,null),e(G,sn),e(G,ge),e(ge,cn),p(t,tl,f),p(t,O,f),e(O,hn),e(O,ne),e(ne,fn),e(O,pn),p(t,el,f),p(t,oe,f),e(oe,dn),p(t,ll,f),p(t,Z,f),e(Z,q),e(q,Ie),b(_t,Ie,null),e(Z,_n),e(Z,Ae),e(Ae,un),p(t,rl,f),p(t,ut,f),e(ut,Tt),e(Tt,Tn),e(ut,vn),p(t,nl,f),p(t,ae,f),e(ae,yn),p(t,ol,f),b(vt,t,f),p(t,al,f),p(t,ie,f),e(ie,Mn),p(t,il,f),p(t,se,f),e(se,En),p(t,sl,f),b(yt,t,f),p(t,cl,f),p(t,K,f),e(K,mn),e(K,je),e(je,wn),e(K,Cn),p(t,hl,f),b(Mt,t,f),fl=!0},p(t,[f]){const Et={};f&2&&(Et.$$scope={dirty:f,ctx:t}),Q.$set(Et)},i(t){fl||(P(tt.$$.fragment,t),P(et.$$.fragment,t),P(it.$$.fragment,t),P(st.$$.fragment,t),P(Q.$$.fragment,t),P(ht.$$.fragment,t),P(ft.$$.fragment,t),P(pt.$$.fragment,t),P(dt.$$.fragment,t),P(_t.$$.fragment,t),P(vt.$$.fragment,t),P(yt.$$.fragment,t),P(Mt.$$.fragment,t),fl=!0)},o(t){J(tt.$$.fragment,t),J(et.$$.fragment,t),J(it.$$.fragment,t),J(st.$$.fragment,t),J(Q.$$.fragment,t),J(ht.$$.fragment,t),J(ft.$$.fragment,t),J(pt.$$.fragment,t),J(dt.$$.fragment,t),J(_t.$$.fragment,t),J(vt.$$.fragment,t),J(yt.$$.fragment,t),J(Mt.$$.fragment,t),fl=!1},d(t){l(d),t&&l(W),t&&l(_),$(tt),t&&l(De),t&&l(wt),t&&l(Xe),t&&l(X),$(et),t&&l(Le),t&&l(N),t&&l(ke),t&&l(L),t&&l(Be),t&&l(ot),t&&l(Se),t&&l(k),$(it),t&&l(Ge),t&&l(Ct),t&&l(Ze),t&&l(Y),t&&l(We),$(st,t),t&&l(Ve),t&&l(B),t&&l(He),$(Q,t),t&&l(Ye),t&&l(S),$(ht),t&&l(Qe),t&&l(ee),t&&l(Fe),t&&l(le),t&&l(ze),$(ft,t),t&&l(Oe),t&&l(re),t&&l(qe),$(pt,t),t&&l(Ke),t&&l(G),$(dt),t&&l(tl),t&&l(O),t&&l(el),t&&l(oe),t&&l(ll),t&&l(Z),$(_t),t&&l(rl),t&&l(ut),t&&l(nl),t&&l(ae),t&&l(ol),$(vt,t),t&&l(al),t&&l(ie),t&&l(il),t&&l(se),t&&l(sl),$(yt,t),t&&l(cl),t&&l(K),t&&l(hl),$(Mt,t)}}}const Oo={local:"efficient-training-on-multiple-cpus",sections:[{local:"intel-oneccl-bindings-for-pytorch",sections:[{local:"intel-oneccl-bindings-for-pytorch-installation",title:"PyTorch\uC6A9 Intel\xAE oneCCL \uBC14\uC778\uB529 \uC124\uCE58: "}],title:"PyTorch\uC6A9 Intel\xAE oneCCL \uBC14\uC778\uB529 "},{local:"intel-mpi-library",sections:[{local:"ipex-installation",title:"IPEX \uC124\uCE58: "}],title:"Intel\xAE MPI \uB77C\uC774\uBE0C\uB7EC\uB9AC "},{local:"usage-in-trainer",title:"Trainer\uC5D0\uC11C\uC758 \uC0AC\uC6A9 "}],title:"\uB2E4\uC911 CPU\uC5D0\uC11C \uD6A8\uC728\uC801\uC73C\uB85C \uD6C8\uB828\uD558\uAE30 "};function qo(Ne){return Yo(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class ra extends Zo{constructor(d){super();Wo(this,d,qo,zo,Vo,{})}}export{ra as default,Oo as metadata};
