WebGPU ပံ့ပိုးမှုရယူရန် Firefox နှင့် Safari

Mozilla သည် Firefox တွင် WebGPU API နှင့် WGSL (WebGPU Shading Language) အတွက် ပံ့ပိုးမှုကို ဖွင့်ရန် ဆုံးဖြတ်ခဲ့သည်။ ပလက်ဖောင်းအတွက် Windows ဇူလိုင်လ ၂၂ ရက်နေ့တွင် စီစဉ်ထားသည့် Firefox 141 တွင် WebGPU ပံ့ပိုးမှုကို default အနေဖြင့် ဖွင့်ထားမည်ဖြစ်သည်။ ထို့နောက် WebGPU ပံ့ပိုးမှုကို အောက်ပါလများအတွက် build များတွင် ဖွင့်ရန် စီစဉ်ထားသည်- Linux и macOSနှင့် ပလက်ဖောင်းအတွက် ဗားရှင်းတွင် အချိန်အတော်ကြာပြီးနောက် AndroidWebGPU ကို ကိုယ်တိုင်ဖွင့်ရန်အတွက် about:config စာမျက်နှာရှိ "dom.webgpu.enabled" နှင့် "gfx.webrender.all" parameters များကို အသုံးပြုနိုင်ပါသည်။

Chrome တွင်၊ ဗားရှင်း 113 တွင် 2023 ခုနှစ်၊ မေလတွင် ထုတ်ပြန်ခဲ့သော ဗားရှင်း 2021 တွင် ပုံမှန်အားဖြင့် WebGPU ပံ့ပိုးမှုကို ပံ့ပိုးပေးထားသည်။ Safari တွင်၊ WebGPU ပံ့ပိုးမှုအား မူလပုံစံဖြင့် ဖွင့်ထားရန် စီစဉ်ထားသည် (စမ်းသပ်ပံ့ပိုးမှုကို နိုဝင်ဘာလ 2020 ကတည်းက ရရှိထားသည်)။ Firefox တွင်၊ စမ်းသပ်ဆဲ WebGPU ပံ့ပိုးမှုသည် 3 ကတည်းက ရှိနေသော်လည်း Firefox ၏ ညစဉ်တည်ဆောက်မှုများတွင် ပုံမှန်အားဖြင့်သာ ဖွင့်ထားသည်။ Firefox ၏ WebGPU အကောင်အထည်ဖော်မှုသည် Rust ဖြင့်ရေးသားထားသော WGPU ပရောဂျက်ကုဒ်ပေါ်တွင် အခြေခံပြီး Direct12D XNUMX၊ Vulkan၊ OpenGL နှင့် Metal ဂရပ်ဖစ် APIs များ၏ထိပ်တွင် လုပ်ဆောင်နိုင်စွမ်းရှိသည်။

WebGPU သည် GPU ဘက်ခြမ်းတွင် လုပ်ဆောင်ချက်များကို လုပ်ဆောင်ရန်အတွက် Vulkan၊ Metal နှင့် Direct3D 12 နှင့် အလားတူ API ကို ပေးပါသည်။ 3D ဂရပ်ဖစ်အပြင်၊ WebGPU သည် GPU ဘက်ခြမ်းသို့ တွက်ချက်မှုများကို offloading နှင့် shaders များလုပ်ဆောင်ခြင်းဆိုင်ရာ စွမ်းရည်များကို ပါ၀င်သည်။ သဘောတရားအရ၊ WebGPU သည် Vulkan ဂရပ်ဖစ် API သည် OpenGL နှင့် ကွဲပြားသည့်ပုံစံအတိုင်း WebGL သတ်မှတ်ချက်ဟောင်းနှင့် ကွဲပြားသည်။ တစ်ချိန်တည်းမှာပင်၊ WebGPU သည် တိကျသောဂရပ်ဖစ် API ကိုအခြေခံထားခြင်းမဟုတ်ဘဲ Vulkan၊ Metal နှင့် Direct3D တို့တွင်ရရှိနိုင်သည့် တူညီသောအဆင့်နိမ့် primitives များကိုအသုံးပြုသည့် universal layer တစ်ခုဖြစ်သည်။

WebGPU သည် အဖွဲ့အစည်းအား ထိန်းချုပ်ခြင်း၊ လုပ်ဆောင်ခြင်းနှင့် GPU ထံ ညွှန်ကြားချက်များ ပေးပို့ခြင်းတို့ကို ထိန်းချုပ်ရန်နှင့် ဆက်စပ်အရင်းအမြစ်များ၊ မှတ်ဉာဏ်၊ ကြားခံများ၊ အသွင်အပြင်အရာဝတ္ထုများနှင့် စုစည်းထားသော ဂရပ်ဖစ်အရိပ်အာဝါသများကို စီမံခန့်ခွဲရန်၊ ဤချဉ်းကပ်မှုသည် အပေါ်ပိုင်းကို လျှော့ချပြီး GPU နှင့် လုပ်ဆောင်ခြင်း၏ စွမ်းဆောင်ရည်ကို တိုးမြှင့်ခြင်းဖြင့် ဂရပ်ဖစ်အပလီကေးရှင်းများ၏ စွမ်းဆောင်ရည် ပိုမိုမြင့်မားစေသည်။

WebGPU ဖြင့်၊ သင်သည် Vulkan၊ Metal သို့မဟုတ် Direct3D ကို တိုက်ရိုက်အသုံးပြုသည့် သီးခြားပရိုဂရမ်များကဲ့သို့ လုပ်ဆောင်သည့် ပလပ်ဖောင်း-မျက်ကွယ်ပြုနိုင်သော၊ ရှုပ်ထွေးသော 3D ပရောဂျက်များကို ဖန်တီးနိုင်သည်။ WebGPU သည် WebAssembly တွင် စုစည်းထားသောကြောင့် ဘရောက်ဆာများတွင် အလုပ်လုပ်နိုင်သော ဖောင်တစ်ခုသို့ မူရင်းဂရပ်ဖစ်ပရိုဂရမ်များကို ပို့ခြင်းအတွက် နောက်ထပ်စွမ်းရည်များကို ပံ့ပိုးပေးပါသည်။

WebGPU ၏ အဓိကအင်္ဂါရပ်များနှင့် WebGL မှ ကွဲပြားချက်များ-

  • အရင်းအမြစ်များကို သီးခြားစီမံခန့်ခွဲခြင်း၊ ပြင်ဆင်ခြင်းလုပ်ငန်းနှင့် GPU သို့ အမိန့်များပေးပို့ခြင်း (WebGL တွင် အရာဝတ္ထုတစ်ခုသည် အရာအားလုံးအတွက် တစ်ပြိုင်နက် တာဝန်ရှိသည်)။ သီးခြားအကြောင်းအရာသုံးခုကို ပံ့ပိုးပေးသည်- ဖွဲ့စည်းတည်ဆောက်ပုံနှင့် ကြားခံများကဲ့သို့သော အရင်းအမြစ်များကို ဖန်တီးရန်အတွက် GPUDevice၊ တင်ဆက်ခြင်းနှင့် တွက်ချက်ခြင်းအဆင့်များအပါအဝင် တစ်ဦးချင်းစီ command များကို ကုဒ်သွင်းရန်အတွက် GPUCommandEncoder၊ GPUCommandBuffer သည် GPU ပေါ်တွင် လုပ်ဆောင်ရန် တန်းစီနေပါသည်။ ရလဒ်ကို တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော ကင်းဗတ်ဒြပ်စင်များနှင့် ဆက်စပ်နေသည့် ဧရိယာတွင် ပြန်ဆိုနိုင်သည်၊ သို့မဟုတ် အထွက်မရှိဘဲ လုပ်ဆောင်နေသည် (ဥပမာ၊ တွက်ချက်မှုလုပ်ဆောင်နေချိန်တွင်)။ အဆင့်များကို ပိုင်းခြားခြင်းဖြင့် အရင်းအမြစ်ဖန်တီးခြင်းနှင့် ပြင်ဆင်ခြင်းလုပ်ငန်းဆောင်တာများကို မတူညီသော thread များတွင် လုပ်ဆောင်နိုင်သော မတူညီသော ကိုင်တွယ်ဖြေရှင်းသူများအဖြစ် ခွဲခြားရန် ပိုမိုလွယ်ကူစေသည်။
  • လုပ်ဆောင်နေသည့် ပြည်နယ်များအတွက် ကွဲပြားသောချဉ်းကပ်မှု။ WebGPU သည် အရာဝတ္ထုနှစ်ခုကို ပံ့ပိုးပေးသည် - GPURenderPipeline နှင့် GPUComputePipeline သည် ဆော့ဖ်ဝဲရေးသားသူမှ ကြိုတင်သတ်မှတ်ထားသော ပြည်နယ်အမျိုးမျိုးကို ပေါင်းစပ်နိုင်စေကာ၊ ၎င်းသည် browser အား ပြန်လည်ပေါင်းစည်းခြင်းကဲ့သို့သော နောက်ဆက်တွဲအလုပ်များတွင် အရင်းအမြစ်များကို ဖြုန်းတီးခြင်းမပြုရန် ခွင့်ပြုပေးသည့်အရာဖြစ်သည်။ ပံ့ပိုးပေးထားသော ပြည်နယ်များ တွင်- shaders၊ vertex ကြားခံနှင့် ရည်ညွှန်းချက် အပြင်အဆင်များ၊ ကပ်စေးနဲသော အုပ်စု အပြင်အဆင်များ၊ ရောစပ်ခြင်း၊ အနက်နှင့် ပုံစံများနှင့် ပို့စ်-တင်ဆက်မှု အထွက်ဖော်မတ်များ။
  • Vulkan ၏ အရင်းအမြစ်အုပ်စုဖွဲ့ခြင်းအင်္ဂါရပ်များကဲ့သို့ ပေါင်းစပ်ထားသောပုံစံ။ အရင်းအမြစ်များကို အတူတကွ အုပ်စုဖွဲ့ရန်၊ WebGPU သည် အမိန့်များရေးသားနေစဉ် Shaders များတွင် အသုံးပြုရန်အတွက် အခြားသော အလားတူအရာများနှင့် ဆက်စပ်နိုင်သည့် GPUBindGroup အရာဝတ္ထုကို ပံ့ပိုးပေးပါသည်။ ထိုသို့သောအဖွဲ့များကိုဖန်တီးခြင်းသည် ယာဉ်မောင်းအား လိုအပ်သောကြိုတင်ပြင်ဆင်လုပ်ဆောင်မှုများကို လုပ်ဆောင်နိုင်စေပြီး ဆွဲခေါ်ခေါ်ဆိုမှုများကြားတွင် အရင်းအမြစ်ချိတ်ဆက်မှုများကို ဘရောက်ဆာအား ပြောင်းလဲနိုင်စေပါသည်။ GPUBindGroupLayout အရာဝတ္တုကို အသုံးပြု၍ ရင်းမြစ်စည်းနှောင်ခြင်း၏ အပြင်အဆင်ကို ကြိုတင်သတ်မှတ်နိုင်သည်။

source: opennet.ru

DDoS ကာကွယ်ရေး၊ VPS VDS ဆာဗာများပါသည့် ဆိုက်များအတွက် ယုံကြည်စိတ်ချရသော hosting ကို ဝယ်ယူပါ။ 🔥 DDoS ကာကွယ်မှု၊ VPS VDS ဆာဗာများပါရှိသော ယုံကြည်စိတ်ချရသော ဝဘ်ဆိုက် hosting ကို ဝယ်ယူပါ | ProHoster