𝗪𝗲𝗯𝗚𝗣𝗨: ૨૫૦,૦૦૦ 𝗣𝗮𝗿𝘁𝗶𝗰𝗹𝗲𝘀 તમારા બ્રાઉઝરમાં
આ 50મો દિવસ છે. આ મારી શ્રેણીનો અંતિમ દિવસ છે જ્યાં હું દરરોજ શૂન્યથી એક નવી ટેકનોલોજી બનાવી રહ્યો છું. હું WebGPU સાથે આનો અંત લાવવા માંગતો હતો.
મેં બ્રાઉઝરની અંદર સંપૂર્ણપણે GPU પર ૨૫૦,૦૦૦ Particles નું સિમ્યુલેશન કર્યું.
તમારા CPU માં થોડા ઝડપી cores હોય છે. તમારા GPU માં હજારો સાદા cores હોય છે. CPU એક પછી એક Particles ને ખસેડે છે. GPU એકસાથે હજારોને ખસેડે છે.
WebGPU એ WebGL નો આધુનિક ઉત્તરાધિકારી છે. તે compute shaders દ્વારા તમારા બ્રાઉઝરને હાર્ડવેરનો એક્સેસ આપે છે. આ shaders GPU ને માત્ર ગ્રાફિક્સ દોરવા માટે જ નહીં, પણ ગણતરી (math) કરવા માટે પણ સક્ષમ બનાવે છે.
તે કેવી રીતે કામ કરે છે:
• તમે GPU ને મેનેજ કરવા માટે એક device બનાવો છો. • તમે પોઝિશન અને વેલોસિટી જેવા particle ડેટાને રાખવા માટે એક buffer બનાવો છો. • તમે ડેટા એકવાર અપલોડ કરો છો અને તેને GPU પર જ રાખો છો. • તમે એક particle માટે compute shader લખો છો. • GPU તે shader ને એકસાથે તમામ ૨૫૦,૦૦૦ Particles પર ચલાવે છે.
ડેટા GPU પર જ રહે છે. તે CPU પર પાછા આવ્યા વિના compute સ્ટેપથી render સ્ટેપ પર જાય છે. આ ઝડપને કારણે સિમ્યુલેશન 60fps પર ચાલી શકે છે.
WebGPU એ ઇન-બ્રાઉઝર ગણતરી અને લોકલ મશીન લર્નિંગ માટેનો નવો પાયો છે. આ શ્રેણીનો અંત લાવવા માટે આ એક યોગ્ય રીત હતી.
આ સફરમાં સાથે રહેવા બદલ આભાર. તમે દરેક પ્રોજેક્ટનું સંપૂર્ણ આર્કાઇવ અહીં શોધી શકો છો.
Full code: https://github.com/dev48v/webgpu-from-zero
Complete post: https://dev.to/dev48v/webgpu-i-simulated-250000-particles-entirely-on-the-gpu-in-the-browser-2o0f
Optional learning community: https://dev48v.infy.uk/techfromzero.php