import{s as Ft,n as zt,o as Rt}from"../chunks/scheduler.b9285784.js";import{S as Qt,i as kt,e as s,s as i,c as o,h as Pt,a as S,d as l,b as a,f as Xt,g as p,j as L,k as Ut,l as At,m as n,n as c,t as r,o as m,p as M}from"../chunks/index.26bc89a1.js";import{C as Ot,H as Et,E as Dt}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.7242ff19.js";import{C as h}from"../chunks/CodeBlock.c8ee1711.js";function qt(jt){let u,k,R,P,d,A,y,O,T,D,J,Bt="Accelerate has full support for Intel CPU, all you need to do is enabling it through the config.",q,b,xt="<strong>Scenario 1</strong>: Acceleration of No distributed CPU training",K,f,It="Run <u>accelerate config</u> on your machine:",tt,U,et,j,_t=`This will generate a config file that will be used automatically to properly set the
default options when doing`,lt,B,nt,x,Gt="For instance, here is how you would run the NLP example <code>examples/nlp_example.py</code> (from the root of the repo) with <code>default_config.yaml</code> which is generated by <code>accelerate config</code>",it,I,at,_,st,w,gt="<p><code>accelerator.prepare</code> can currently only handle simultaneously preparing multiple models (and no optimizer) OR a single model-optimizer pair for training. Other attempts (e.g., two model-optimizer pairs) will raise a verbose error. To work around this limitation, consider separately using <code>accelerator.prepare</code> for each model-optimizer pair.</p>",St,G,Nt=`<strong>Scenario 2</strong>: Acceleration of distributed CPU training
we use Intel oneCCL for communication, combined with Intel® MPI library to deliver flexible, efficient, scalable cluster messaging on Intel® architecture. you could refer the <a href="https://huggingface.co/docs/transformers/perf_train_cpu_many" rel="nofollow">here</a> for the installation guide`,Lt,g,Zt="Run <u>accelerate config</u> on your machine(node0):",ot,N,pt,Z,Ct="For instance, here is how you would run the NLP example <code>examples/nlp_example.py</code> (from the root of the repo) with IPEX enabled for distributed CPU training.",ct,C,Wt="<code>default_config.yaml</code> which is generated by <code>accelerate config</code>",rt,W,mt,H,Ht="Set following env and using intel MPI to launch the training",Mt,$,$t="In <code>node0</code>, you need to create a configuration file which contains the IP addresses of each node (for example hostfile) and pass that configuration file path as an argument.",ut,Y,Yt="If you selected to let Accelerate launch <code>mpirun</code>, ensure that the location of your hostfile matches the path in the config.",ht,V,wt,v,Vt="Before executing <code>accelerate launch</code> command, you need source the oneCCL bindings <code>setvars.sh</code> to get your Intel MPI environment properly. Note that both the python script and environment need to be available on all of the machines being used for multi-CPU training.",dt,X,yt,E,vt="You can also directly launch distributed training with <code>mpirun</code> command, you need to run the following command in node0 and <strong>16DDP</strong> will be enabled in node0,node1,node2,node3 with BF16 mixed precision. When using this method, the python script, python environment, and accelerate config file need to be available on all of the machines used for multi-CPU training.",Tt,F,Jt,z,bt,Q,ft;return d=new Ot({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),y=new Et({props:{title:"Training on Intel CPU",local:"training-on-intel-cpu",headingTag:"h1"}}),T=new Et({props:{title:"How It Works For Training optimization in CPU",local:"how-it-works-for-training-optimization-in-cpu",headingTag:"h2"}}),U=new h({props:{code:"JTI0JTIwYWNjZWxlcmF0ZSUyMGNvbmZpZyUwQS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBSW4lMjB3aGljaCUyMGNvbXB1dGUlMjBlbnZpcm9ubWVudCUyMGFyZSUyMHlvdSUyMHJ1bm5pbmclM0YlMEFUaGlzJTIwbWFjaGluZSUwQS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBV2hpY2glMjB0eXBlJTIwb2YlMjBtYWNoaW5lJTIwYXJlJTIweW91JTIwdXNpbmclM0YlMEFObyUyMGRpc3RyaWJ1dGVkJTIwdHJhaW5pbmclMEFEbyUyMHlvdSUyMHdhbnQlMjB0byUyMHJ1biUyMHlvdXIlMjB0cmFpbmluZyUyMG9uJTIwQ1BVJTIwb25seSUyMChldmVuJTIwaWYlMjBhJTIwR1BVJTIwJTJGJTIwQXBwbGUlMjBTaWxpY29uJTIwZGV2aWNlJTIwaXMlMjBhdmFpbGFibGUpJTNGJTIwJTVCeWVzJTJGTk8lNUQlM0F5ZXMlMEFEbyUyMHlvdSUyMHdpc2glMjB0byUyMG9wdGltaXplJTIweW91ciUyMHNjcmlwdCUyMHdpdGglMjB0b3JjaCUyMGR5bmFtbyUzRiU1QnllcyUyRk5PJTVEJTNBTk8lMEFEbyUyMHlvdSUyMHdhbnQlMjB0byUyMHVzZSUyMERlZXBTcGVlZCUzRiUyMCU1QnllcyUyRk5PJTVEJTNBJTIwTk8lMEEtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSUwQURvJTIweW91JTIwd2lzaCUyMHRvJTIwdXNlJTIwRlAxNiUyMG9yJTIwQkYxNiUyMChtaXhlZCUyMHByZWNpc2lvbiklM0YlMEFiZjE2",highlighted:`$ accelerate config
-----------------------------------------------------------------------------------------------------------------------------------------------------------
In <span class="hljs-built_in">which</span> compute environment are you running?
This machine
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Which <span class="hljs-built_in">type</span> of machine are you using?
No distributed training
Do you want to run your training on CPU only (even <span class="hljs-keyword">if</span> a GPU / Apple Silicon device is available)? [<span class="hljs-built_in">yes</span>/NO]:<span class="hljs-built_in">yes</span>
Do you wish to optimize your script with torch dynamo?[<span class="hljs-built_in">yes</span>/NO]:NO
Do you want to use DeepSpeed? [<span class="hljs-built_in">yes</span>/NO]: NO
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Do you wish to use FP16 or BF16 (mixed precision)?
bf16`,wrap:!1}}),B=new h({props:{code:"YWNjZWxlcmF0ZSUyMGxhdW5jaCUyMG15X3NjcmlwdC5weSUyMC0tYXJnc190b19teV9zY3JpcHQ=",highlighted:"accelerate launch my_script.py --args_to_my_script",wrap:!1}}),I=new h({props:{code:"Y29tcHV0ZV9lbnZpcm9ubWVudCUzQSUyMExPQ0FMX01BQ0hJTkUlMEFkaXN0cmlidXRlZF90eXBlJTNBJTIwJ05PJyUwQWRvd25jYXN0X2JmMTYlM0ElMjAnbm8nJTBBbWFjaGluZV9yYW5rJTNBJTIwMCUwQW1haW5fdHJhaW5pbmdfZnVuY3Rpb24lM0ElMjBtYWluJTBBbWl4ZWRfcHJlY2lzaW9uJTNBJTIwYmYxNiUwQW51bV9tYWNoaW5lcyUzQSUyMDElMEFudW1fcHJvY2Vzc2VzJTNBJTIwMSUwQXJkenZfYmFja2VuZCUzQSUyMHN0YXRpYyUwQXNhbWVfbmV0d29yayUzQSUyMHRydWUlMEF0cHVfZW52JTNBJTIwJTVCJTVEJTBBdHB1X3VzZV9jbHVzdGVyJTNBJTIwZmFsc2UlMEF0cHVfdXNlX3N1ZG8lM0ElMjBmYWxzZSUwQXVzZV9jcHUlM0ElMjB0cnVl",highlighted:`compute_environment: LOCAL_MACHINE
distributed_type: <span class="hljs-string">&#x27;NO&#x27;</span>
downcast_bf16: <span class="hljs-string">&#x27;no&#x27;</span>
machine_rank: 0
main_training_function: main
mixed_precision: bf16
num_machines: 1
num_processes: 1
rdzv_backend: static
same_network: <span class="hljs-literal">true</span>
tpu_env: []
tpu_use_cluster: <span class="hljs-literal">false</span>
tpu_use_sudo: <span class="hljs-literal">false</span>
use_cpu: <span class="hljs-literal">true</span>`,wrap:!1}}),_=new h({props:{code:"YWNjZWxlcmF0ZSUyMGxhdW5jaCUyMGV4YW1wbGVzJTJGbmxwX2V4YW1wbGUucHk=",highlighted:"accelerate launch examples/nlp_example.py",wrap:!1}}),N=new h({props:{code:"JTI0JTIwYWNjZWxlcmF0ZSUyMGNvbmZpZyUwQS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBSW4lMjB3aGljaCUyMGNvbXB1dGUlMjBlbnZpcm9ubWVudCUyMGFyZSUyMHlvdSUyMHJ1bm5pbmclM0YlMEFUaGlzJTIwbWFjaGluZSUwQS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBV2hpY2glMjB0eXBlJTIwb2YlMjBtYWNoaW5lJTIwYXJlJTIweW91JTIwdXNpbmclM0YlMEFtdWx0aS1DUFUlMEFIb3clMjBtYW55JTIwZGlmZmVyZW50JTIwbWFjaGluZXMlMjB3aWxsJTIweW91JTIwdXNlJTIwKHVzZSUyMG1vcmUlMjB0aGFuJTIwMSUyMGZvciUyMG11bHRpLW5vZGUlMjB0cmFpbmluZyklM0YlMjAlNUIxJTVEJTNBJTIwNCUwQS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBV2hhdCUyMGlzJTIwdGhlJTIwcmFuayUyMG9mJTIwdGhpcyUyMG1hY2hpbmUlM0YlMEEwJTBBV2hhdCUyMGlzJTIwdGhlJTIwSVAlMjBhZGRyZXNzJTIwb2YlMjB0aGUlMjBtYWNoaW5lJTIwdGhhdCUyMHdpbGwlMjBob3N0JTIwdGhlJTIwbWFpbiUyMHByb2Nlc3MlM0YlMjAzNi4xMTIuMjMuMjQlMEFXaGF0JTIwaXMlMjB0aGUlMjBwb3J0JTIweW91JTIwd2lsbCUyMHVzZSUyMHRvJTIwY29tbXVuaWNhdGUlMjB3aXRoJTIwdGhlJTIwbWFpbiUyMHByb2Nlc3MlM0YlMjAyOTUwMCUwQUFyZSUyMGFsbCUyMHRoZSUyMG1hY2hpbmVzJTIwb24lMjB0aGUlMjBzYW1lJTIwbG9jYWwlMjBuZXR3b3JrJTNGJTIwQW5zd2VyJTIwJTYwbm8lNjAlMjBpZiUyMG5vZGVzJTIwYXJlJTIwb24lMjB0aGUlMjBjbG91ZCUyMGFuZCUyRm9yJTIwb24lMjBkaWZmZXJlbnQlMjBuZXR3b3JrJTIwaG9zdHMlMjAlNUJZRVMlMkZubyU1RCUzQSUyMHllcyUwQURvJTIweW91JTIwd2FudCUyMGFjY2VsZXJhdGUlMjB0byUyMGxhdW5jaCUyMG1waXJ1biUzRiUyMCU1QnllcyUyRk5PJTVEJTNBJTIweWVzJTBBUGxlYXNlJTIwZW50ZXIlMjB0aGUlMjBwYXRoJTIwdG8lMjB0aGUlMjBob3N0ZmlsZSUyMHRvJTIwdXNlJTIwd2l0aCUyMG1waXJ1biUyMCU1Qn4lMkZob3N0ZmlsZSU1RCUzQSUyMH4lMkZob3N0ZmlsZSUwQUVudGVyJTIwdGhlJTIwbnVtYmVyJTIwb2YlMjBvbmVDQ0wlMjB3b3JrZXIlMjB0aHJlYWRzJTIwJTVCMSU1RCUzQSUyMDElMEFEbyUyMHlvdSUyMHdpc2glMjB0byUyMG9wdGltaXplJTIweW91ciUyMHNjcmlwdCUyMHdpdGglMjB0b3JjaCUyMGR5bmFtbyUzRiU1QnllcyUyRk5PJTVEJTNBTk8lMEFIb3clMjBtYW55JTIwcHJvY2Vzc2VzJTIwc2hvdWxkJTIwYmUlMjB1c2VkJTIwZm9yJTIwZGlzdHJpYnV0ZWQlMjB0cmFpbmluZyUzRiUyMCU1QjElNUQlM0ExNiUwQS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJTBBRG8lMjB5b3UlMjB3aXNoJTIwdG8lMjB1c2UlMjBGUDE2JTIwb3IlMjBCRjE2JTIwKG1peGVkJTIwcHJlY2lzaW9uKSUzRiUwQWJmMTY=",highlighted:`$ accelerate config
-----------------------------------------------------------------------------------------------------------------------------------------------------------
In <span class="hljs-built_in">which</span> compute environment are you running?
This machine
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Which <span class="hljs-built_in">type</span> of machine are you using?
multi-CPU
How many different machines will you use (use more than 1 <span class="hljs-keyword">for</span> multi-node training)? [1]: 4
-----------------------------------------------------------------------------------------------------------------------------------------------------------
What is the rank of this machine?
0
What is the IP address of the machine that will host the main process? 36.112.23.24
What is the port you will use to communicate with the main process? 29500
Are all the machines on the same <span class="hljs-built_in">local</span> network? Answer \`no\` <span class="hljs-keyword">if</span> nodes are on the cloud and/or on different network hosts [YES/no]: <span class="hljs-built_in">yes</span>
Do you want accelerate to launch mpirun? [<span class="hljs-built_in">yes</span>/NO]: <span class="hljs-built_in">yes</span>
Please enter the path to the hostfile to use with mpirun [~/hostfile]: ~/hostfile
Enter the number of oneCCL worker threads [1]: 1
Do you wish to optimize your script with torch dynamo?[<span class="hljs-built_in">yes</span>/NO]:NO
How many processes should be used <span class="hljs-keyword">for</span> distributed training? [1]:16
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Do you wish to use FP16 or BF16 (mixed precision)?
bf16`,wrap:!1}}),W=new h({props:{code:"Y29tcHV0ZV9lbnZpcm9ubWVudCUzQSUyMExPQ0FMX01BQ0hJTkUlMEFkaXN0cmlidXRlZF90eXBlJTNBJTIwTVVMVElfQ1BVJTBBZG93bmNhc3RfYmYxNiUzQSUyMCdubyclMEFtYWNoaW5lX3JhbmslM0ElMjAwJTBBbWFpbl9wcm9jZXNzX2lwJTNBJTIwMzYuMTEyLjIzLjI0JTBBbWFpbl9wcm9jZXNzX3BvcnQlM0ElMjAyOTUwMCUwQW1haW5fdHJhaW5pbmdfZnVuY3Rpb24lM0ElMjBtYWluJTBBbWl4ZWRfcHJlY2lzaW9uJTNBJTIwYmYxNiUwQW1waXJ1bl9jb25maWclM0ElMEElMjAlMjBtcGlydW5fY2NsJTNBJTIwJzEnJTBBJTIwJTIwbXBpcnVuX2hvc3RmaWxlJTNBJTIwJTJGaG9tZSUyRnVzZXIlMkZob3N0ZmlsZSUwQW51bV9tYWNoaW5lcyUzQSUyMDQlMEFudW1fcHJvY2Vzc2VzJTNBJTIwMTYlMEFyZHp2X2JhY2tlbmQlM0ElMjBzdGF0aWMlMEFzYW1lX25ldHdvcmslM0ElMjB0cnVlJTBBdHB1X2VudiUzQSUyMCU1QiU1RCUwQXRwdV91c2VfY2x1c3RlciUzQSUyMGZhbHNlJTBBdHB1X3VzZV9zdWRvJTNBJTIwZmFsc2UlMEF1c2VfY3B1JTNBJTIwdHJ1ZQ==",highlighted:`compute_environment: LOCAL_MACHINE
distributed_type: MULTI_CPU
downcast_bf16: <span class="hljs-string">&#x27;no&#x27;</span>
machine_rank: 0
main_process_ip: 36.112.23.24
main_process_port: 29500
main_training_function: main
mixed_precision: bf16
mpirun_config:
  mpirun_ccl: <span class="hljs-string">&#x27;1&#x27;</span>
  mpirun_hostfile: /home/user/hostfile
num_machines: 4
num_processes: 16
rdzv_backend: static
same_network: <span class="hljs-literal">true</span>
tpu_env: []
tpu_use_cluster: <span class="hljs-literal">false</span>
tpu_use_sudo: <span class="hljs-literal">false</span>
use_cpu: <span class="hljs-literal">true</span>`,wrap:!1}}),V=new h({props:{code:"JTI0JTIwY2F0JTIwaG9zdGZpbGUlMEF4eHgueHh4Lnh4eC54eHglMjAlMjNub2RlMCUyMGlwJTBBeHh4Lnh4eC54eHgueHh4JTIwJTIzbm9kZTElMjBpcCUwQXh4eC54eHgueHh4Lnh4eCUyMCUyM25vZGUyJTIwaXAlMEF4eHgueHh4Lnh4eC54eHglMjAlMjNub2RlMyUyMGlw",highlighted:`$ <span class="hljs-built_in">cat</span> hostfile
xxx.xxx.xxx.xxx <span class="hljs-comment">#node0 ip</span>
xxx.xxx.xxx.xxx <span class="hljs-comment">#node1 ip</span>
xxx.xxx.xxx.xxx <span class="hljs-comment">#node2 ip</span>
xxx.xxx.xxx.xxx <span class="hljs-comment">#node3 ip</span>`,wrap:!1}}),X=new h({props:{code:"b25lY2NsX2JpbmRpbmdzX2Zvcl9weXRvcmNoX3BhdGglM0QlMjQocHl0aG9uJTIwLWMlMjAlMjJmcm9tJTIwb25lY2NsX2JpbmRpbmdzX2Zvcl9weXRvcmNoJTIwaW1wb3J0JTIwY3dkJTNCJTIwcHJpbnQoY3dkKSUyMiklMEFzb3VyY2UlMjAlMjRvbmVjY2xfYmluZGluZ3NfZm9yX3B5dG9yY2hfcGF0aCUyRmVudiUyRnNldHZhcnMuc2glMEElMEFhY2NlbGVyYXRlJTIwbGF1bmNoJTIwZXhhbXBsZXMlMkZubHBfZXhhbXBsZS5weQ==",highlighted:`oneccl_bindings_for_pytorch_path=$(python -c <span class="hljs-string">&quot;from oneccl_bindings_for_pytorch import cwd; print(cwd)&quot;</span>)
<span class="hljs-built_in">source</span> <span class="hljs-variable">$oneccl_bindings_for_pytorch_path</span>/env/setvars.sh

accelerate launch examples/nlp_example.py`,wrap:!1}}),F=new h({props:{code:"b25lY2NsX2JpbmRpbmdzX2Zvcl9weXRvcmNoX3BhdGglM0QlMjQocHl0aG9uJTIwLWMlMjAlMjJmcm9tJTIwb25lY2NsX2JpbmRpbmdzX2Zvcl9weXRvcmNoJTIwaW1wb3J0JTIwY3dkJTNCJTIwcHJpbnQoY3dkKSUyMiklMEFzb3VyY2UlMjAlMjRvbmVjY2xfYmluZGluZ3NfZm9yX3B5dG9yY2hfcGF0aCUyRmVudiUyRnNldHZhcnMuc2glMEFleHBvcnQlMjBDQ0xfV09SS0VSX0NPVU5UJTNEMSUwQWV4cG9ydCUyME1BU1RFUl9BRERSJTNEeHh4Lnh4eC54eHgueHh4JTIwJTIzbm9kZTAlMjBpcCUwQWV4cG9ydCUyMENDTF9BVExfVFJBTlNQT1JUJTNEb2ZpJTBBbXBpcnVuJTIwLWYlMjBob3N0ZmlsZSUyMC1uJTIwMTYlMjAtcHBuJTIwNCUyMGFjY2VsZXJhdGUlMjBsYXVuY2glMjBleGFtcGxlcyUyRm5scF9leGFtcGxlLnB5",highlighted:`oneccl_bindings_for_pytorch_path=$(python -c <span class="hljs-string">&quot;from oneccl_bindings_for_pytorch import cwd; print(cwd)&quot;</span>)
<span class="hljs-built_in">source</span> <span class="hljs-variable">$oneccl_bindings_for_pytorch_path</span>/env/setvars.sh
<span class="hljs-built_in">export</span> CCL_WORKER_COUNT=1
<span class="hljs-built_in">export</span> MASTER_ADDR=xxx.xxx.xxx.xxx <span class="hljs-comment">#node0 ip</span>
<span class="hljs-built_in">export</span> CCL_ATL_TRANSPORT=ofi
mpirun -f hostfile -n 16 -ppn 4 accelerate launch examples/nlp_example.py`,wrap:!1}}),z=new Dt({props:{source:"https://github.com/huggingface/accelerate/blob/main/docs/source/usage_guides/intel_cpu.md"}}),{c(){u=s("meta"),k=i(),R=s("p"),P=i(),o(d.$$.fragment),A=i(),o(y.$$.fragment),O=i(),o(T.$$.fragment),D=i(),J=s("p"),J.textContent=Bt,q=i(),b=s("p"),b.innerHTML=xt,K=i(),f=s("p"),f.innerHTML=It,tt=i(),o(U.$$.fragment),et=i(),j=s("p"),j.textContent=_t,lt=i(),o(B.$$.fragment),nt=i(),x=s("p"),x.innerHTML=Gt,it=i(),o(I.$$.fragment),at=i(),o(_.$$.fragment),st=i(),w=s("blockquote"),w.innerHTML=gt,St=i(),G=s("p"),G.innerHTML=Nt,Lt=i(),g=s("p"),g.innerHTML=Zt,ot=i(),o(N.$$.fragment),pt=i(),Z=s("p"),Z.innerHTML=Ct,ct=i(),C=s("p"),C.innerHTML=Wt,rt=i(),o(W.$$.fragment),mt=i(),H=s("p"),H.textContent=Ht,Mt=i(),$=s("p"),$.innerHTML=$t,ut=i(),Y=s("p"),Y.innerHTML=Yt,ht=i(),o(V.$$.fragment),wt=i(),v=s("p"),v.innerHTML=Vt,dt=i(),o(X.$$.fragment),yt=i(),E=s("p"),E.innerHTML=vt,Tt=i(),o(F.$$.fragment),Jt=i(),o(z.$$.fragment),bt=i(),Q=s("p"),this.h()},l(t){const e=Pt("svelte-u9bgzb",document.head);u=S(e,"META",{name:!0,content:!0}),e.forEach(l),k=a(t),R=S(t,"P",{}),Xt(R).forEach(l),P=a(t),p(d.$$.fragment,t),A=a(t),p(y.$$.fragment,t),O=a(t),p(T.$$.fragment,t),D=a(t),J=S(t,"P",{"data-svelte-h":!0}),L(J)!=="svelte-1jyp1y3"&&(J.textContent=Bt),q=a(t),b=S(t,"P",{"data-svelte-h":!0}),L(b)!=="svelte-1rh12ql"&&(b.innerHTML=xt),K=a(t),f=S(t,"P",{"data-svelte-h":!0}),L(f)!=="svelte-6hcu3i"&&(f.innerHTML=It),tt=a(t),p(U.$$.fragment,t),et=a(t),j=S(t,"P",{"data-svelte-h":!0}),L(j)!=="svelte-xoeuxn"&&(j.textContent=_t),lt=a(t),p(B.$$.fragment,t),nt=a(t),x=S(t,"P",{"data-svelte-h":!0}),L(x)!=="svelte-1efje8g"&&(x.innerHTML=Gt),it=a(t),p(I.$$.fragment,t),at=a(t),p(_.$$.fragment,t),st=a(t),w=S(t,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),L(w)!=="svelte-185lmi0"&&(w.innerHTML=gt),St=a(t),G=S(t,"P",{"data-svelte-h":!0}),L(G)!=="svelte-1sz9b1k"&&(G.innerHTML=Nt),Lt=a(t),g=S(t,"P",{"data-svelte-h":!0}),L(g)!=="svelte-1g9y35l"&&(g.innerHTML=Zt),ot=a(t),p(N.$$.fragment,t),pt=a(t),Z=S(t,"P",{"data-svelte-h":!0}),L(Z)!=="svelte-1en3aqm"&&(Z.innerHTML=Ct),ct=a(t),C=S(t,"P",{"data-svelte-h":!0}),L(C)!=="svelte-gglr21"&&(C.innerHTML=Wt),rt=a(t),p(W.$$.fragment,t),mt=a(t),H=S(t,"P",{"data-svelte-h":!0}),L(H)!=="svelte-drika4"&&(H.textContent=Ht),Mt=a(t),$=S(t,"P",{"data-svelte-h":!0}),L($)!=="svelte-ypxk6p"&&($.innerHTML=$t),ut=a(t),Y=S(t,"P",{"data-svelte-h":!0}),L(Y)!=="svelte-1qcudp5"&&(Y.innerHTML=Yt),ht=a(t),p(V.$$.fragment,t),wt=a(t),v=S(t,"P",{"data-svelte-h":!0}),L(v)!=="svelte-dt1t2o"&&(v.innerHTML=Vt),dt=a(t),p(X.$$.fragment,t),yt=a(t),E=S(t,"P",{"data-svelte-h":!0}),L(E)!=="svelte-14x3gvl"&&(E.innerHTML=vt),Tt=a(t),p(F.$$.fragment,t),Jt=a(t),p(z.$$.fragment,t),bt=a(t),Q=S(t,"P",{}),Xt(Q).forEach(l),this.h()},h(){Ut(u,"name","hf:doc:metadata"),Ut(u,"content",Kt),Ut(w,"class","caution")},m(t,e){At(document.head,u),n(t,k,e),n(t,R,e),n(t,P,e),c(d,t,e),n(t,A,e),c(y,t,e),n(t,O,e),c(T,t,e),n(t,D,e),n(t,J,e),n(t,q,e),n(t,b,e),n(t,K,e),n(t,f,e),n(t,tt,e),c(U,t,e),n(t,et,e),n(t,j,e),n(t,lt,e),c(B,t,e),n(t,nt,e),n(t,x,e),n(t,it,e),c(I,t,e),n(t,at,e),c(_,t,e),n(t,st,e),n(t,w,e),n(t,St,e),n(t,G,e),n(t,Lt,e),n(t,g,e),n(t,ot,e),c(N,t,e),n(t,pt,e),n(t,Z,e),n(t,ct,e),n(t,C,e),n(t,rt,e),c(W,t,e),n(t,mt,e),n(t,H,e),n(t,Mt,e),n(t,$,e),n(t,ut,e),n(t,Y,e),n(t,ht,e),c(V,t,e),n(t,wt,e),n(t,v,e),n(t,dt,e),c(X,t,e),n(t,yt,e),n(t,E,e),n(t,Tt,e),c(F,t,e),n(t,Jt,e),c(z,t,e),n(t,bt,e),n(t,Q,e),ft=!0},p:zt,i(t){ft||(r(d.$$.fragment,t),r(y.$$.fragment,t),r(T.$$.fragment,t),r(U.$$.fragment,t),r(B.$$.fragment,t),r(I.$$.fragment,t),r(_.$$.fragment,t),r(N.$$.fragment,t),r(W.$$.fragment,t),r(V.$$.fragment,t),r(X.$$.fragment,t),r(F.$$.fragment,t),r(z.$$.fragment,t),ft=!0)},o(t){m(d.$$.fragment,t),m(y.$$.fragment,t),m(T.$$.fragment,t),m(U.$$.fragment,t),m(B.$$.fragment,t),m(I.$$.fragment,t),m(_.$$.fragment,t),m(N.$$.fragment,t),m(W.$$.fragment,t),m(V.$$.fragment,t),m(X.$$.fragment,t),m(F.$$.fragment,t),m(z.$$.fragment,t),ft=!1},d(t){t&&(l(k),l(R),l(P),l(A),l(O),l(D),l(J),l(q),l(b),l(K),l(f),l(tt),l(et),l(j),l(lt),l(nt),l(x),l(it),l(at),l(st),l(w),l(St),l(G),l(Lt),l(g),l(ot),l(pt),l(Z),l(ct),l(C),l(rt),l(mt),l(H),l(Mt),l($),l(ut),l(Y),l(ht),l(wt),l(v),l(dt),l(yt),l(E),l(Tt),l(Jt),l(bt),l(Q)),l(u),M(d,t),M(y,t),M(T,t),M(U,t),M(B,t),M(I,t),M(_,t),M(N,t),M(W,t),M(V,t),M(X,t),M(F,t),M(z,t)}}}const Kt='{"title":"Training on Intel CPU","local":"training-on-intel-cpu","sections":[{"title":"How It Works For Training optimization in CPU","local":"how-it-works-for-training-optimization-in-cpu","sections":[],"depth":2}],"depth":1}';function te(jt){return Rt(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class ae extends Qt{constructor(u){super(),kt(this,u,te,qt,Ft,{})}}export{ae as component};
