import{S as pe,i as de,s as _e,e as s,k as U,w as X,t as u,M as ve,c as i,d as t,m as A,a as f,x as Z,h as m,b as c,G as r,g as _,y as ee,q as te,o as re,B as ae,v as $e}from"../chunks/vendor-hf-doc-builder.js";import{T as ge}from"../chunks/Tip-hf-doc-builder.js";import{I as me}from"../chunks/IconCopyLink-hf-doc-builder.js";function we(C){let a,g,n,h,v;return{c(){a=s("p"),g=u("Note: A multi GPU setup can use the majority of the strategies described in the "),n=s("a"),h=u("single GPU section"),v=u(". You must be aware of simple techniques, though, that can be used for a better usage."),this.h()},l(l){a=i(l,"P",{});var p=f(a);g=m(p,"Note: A multi GPU setup can use the majority of the strategies described in the "),n=i(p,"A",{href:!0});var w=f(n);h=m(w,"single GPU section"),w.forEach(t),v=m(p,". You must be aware of simple techniques, though, that can be used for a better usage."),p.forEach(t),this.h()},h(){c(n,"href","./perf_infer_gpu_one")},m(l,p){_(l,a,p),r(a,g),r(a,n),r(n,h),r(a,v)},d(l){l&&t(a)}}}function Ee(C){let a,g,n,h,v,l,p,w,H,M,k,L,q,E,I,$,P,S,y,W,x,N,Y,J,O,d,R,B,z,F,b,K,Q,j;return l=new me({}),E=new ge({props:{$$slots:{default:[we]},$$scope:{ctx:C}}}),y=new me({}),{c(){a=s("meta"),g=U(),n=s("h1"),h=s("a"),v=s("span"),X(l.$$.fragment),p=U(),w=s("span"),H=u("Efficient Inference on a Multiple GPUs"),M=U(),k=s("p"),L=u("This document contains information on how to efficiently infer on a multiple GPUs."),q=U(),X(E.$$.fragment),I=U(),$=s("h2"),P=s("a"),S=s("span"),X(y.$$.fragment),W=U(),x=s("span"),N=s("code"),Y=u("BetterTransformer"),J=u(" for faster inference"),O=U(),d=s("p"),R=u("We have recently integrated "),B=s("code"),z=u("BetterTransformer"),F=u(" for faster inference on multi-GPU for text, image and audio models. Check the documentation about this integration "),b=s("a"),K=u("here"),Q=u(" for more details."),this.h()},l(e){const o=ve('[data-svelte="svelte-1phssyn"]',document.head);a=i(o,"META",{name:!0,content:!0}),o.forEach(t),g=A(e),n=i(e,"H1",{class:!0});var G=f(n);h=i(G,"A",{id:!0,class:!0,href:!0});var ne=f(h);v=i(ne,"SPAN",{});var oe=f(v);Z(l.$$.fragment,oe),oe.forEach(t),ne.forEach(t),p=A(G),w=i(G,"SPAN",{});var se=f(w);H=m(se,"Efficient Inference on a Multiple GPUs"),se.forEach(t),G.forEach(t),M=A(e),k=i(e,"P",{});var ie=f(k);L=m(ie,"This document contains information on how to efficiently infer on a multiple GPUs."),ie.forEach(t),q=A(e),Z(E.$$.fragment,e),I=A(e),$=i(e,"H2",{class:!0});var D=f($);P=i(D,"A",{id:!0,class:!0,href:!0});var fe=f(P);S=i(fe,"SPAN",{});var le=f(S);Z(y.$$.fragment,le),le.forEach(t),fe.forEach(t),W=A(D),x=i(D,"SPAN",{});var V=f(x);N=i(V,"CODE",{});var ce=f(N);Y=m(ce,"BetterTransformer"),ce.forEach(t),J=m(V," for faster inference"),V.forEach(t),D.forEach(t),O=A(e),d=i(e,"P",{});var T=f(d);R=m(T,"We have recently integrated "),B=i(T,"CODE",{});var he=f(B);z=m(he,"BetterTransformer"),he.forEach(t),F=m(T," for faster inference on multi-GPU for text, image and audio models. Check the documentation about this integration "),b=i(T,"A",{href:!0,rel:!0});var ue=f(b);K=m(ue,"here"),ue.forEach(t),Q=m(T," for more details."),T.forEach(t),this.h()},h(){c(a,"name","hf:doc:metadata"),c(a,"content",JSON.stringify(Pe)),c(h,"id","efficient-inference-on-a-multiple-gpus"),c(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"),c(h,"href","#efficient-inference-on-a-multiple-gpus"),c(n,"class","relative group"),c(P,"id","bettertransformer-for-faster-inference"),c(P,"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"),c(P,"href","#bettertransformer-for-faster-inference"),c($,"class","relative group"),c(b,"href","https://huggingface.co/docs/optimum/bettertransformer/overview"),c(b,"rel","nofollow")},m(e,o){r(document.head,a),_(e,g,o),_(e,n,o),r(n,h),r(h,v),ee(l,v,null),r(n,p),r(n,w),r(w,H),_(e,M,o),_(e,k,o),r(k,L),_(e,q,o),ee(E,e,o),_(e,I,o),_(e,$,o),r($,P),r(P,S),ee(y,S,null),r($,W),r($,x),r(x,N),r(N,Y),r(x,J),_(e,O,o),_(e,d,o),r(d,R),r(d,B),r(B,z),r(d,F),r(d,b),r(b,K),r(d,Q),j=!0},p(e,[o]){const G={};o&2&&(G.$$scope={dirty:o,ctx:e}),E.$set(G)},i(e){j||(te(l.$$.fragment,e),te(E.$$.fragment,e),te(y.$$.fragment,e),j=!0)},o(e){re(l.$$.fragment,e),re(E.$$.fragment,e),re(y.$$.fragment,e),j=!1},d(e){t(a),e&&t(g),e&&t(n),ae(l),e&&t(M),e&&t(k),e&&t(q),ae(E,e),e&&t(I),e&&t($),ae(y),e&&t(O),e&&t(d)}}}const Pe={local:"efficient-inference-on-a-multiple-gpus",sections:[{local:"bettertransformer-for-faster-inference",title:"`BetterTransformer` for faster inference"}],title:"Efficient Inference on a Multiple GPUs"};function ye(C){return $e(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Ae extends pe{constructor(a){super();de(this,a,ye,Ee,_e,{})}}export{Ae as default,Pe as metadata};
