{"id":107760,"date":"2023-04-06T12:48:22","date_gmt":"2023-04-06T10:48:22","guid":{"rendered":"https:\/\/prohoster.info\/?p=107760"},"modified":"2023-04-06T17:07:09","modified_gmt":"2023-04-06T15:07:09","slug":"v-chrome-budet-vklyuchena-podderzhka-webgpu","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu","title":{"rendered":"O Chrome ter\u00e1 suporte ao WebGPU","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A empresa Google anunciou que a partir da vers\u00e3o 113 do Chrome, que ser\u00e1 lan\u00e7ada em 2 de maio, o suporte ao API gr\u00e1fico WebGPU e \u00e0 linguagem de sombreamento WGSL (WebGPU Shading Language) ser\u00e1 ativado por padr\u00e3o. O WebGPU fornece uma interface de programa\u00e7\u00e3o semelhante ao Vulkan, Metal e Direct3D 12 para executar opera\u00e7\u00f5es do lado da GPU, como renderiza\u00e7\u00e3o e c\u00e1lculos, al\u00e9m de permitir o uso da linguagem de sombreamento para escrever programas que rodam na GPU. A implementa\u00e7\u00e3o do WebGPU ser\u00e1 inicialmente inclu\u00edda apenas em vers\u00f5es para ChromeOS, macOS e Windows. O suporte ao WebGPU para Linux e Android ser\u00e1 ativado posteriormente.       <\/p>\n<p>Al\u00e9m do Chrome, o suporte experimental ao WebGPU vem sendo testado desde abril de 2020 no Firefox e desde novembro de 2021 no Safari. Para ativar o WebGPU no Firefox, \u00e9 necess\u00e1rio ajustar as configura\u00e7\u00f5es em about:config, habilitando as flags dom.webgpu.enabled e gfx.webgpu.force-enabled. At\u00e9 o momento, n\u00e3o h\u00e1 informa\u00e7\u00f5es sobre planos para habilitar o WebGPU como padr\u00e3o no Firefox e no Safari. As implementa\u00e7\u00f5es do WebGPU para Firefox e Chrome est\u00e3o dispon\u00edveis na forma de bibliotecas separadas \u2014 Dawn (C++) e wgpu (Rust), que podem ser utilizadas para integrar o suporte ao WebGPU em suas aplica\u00e7\u00f5es. Tamb\u00e9m est\u00e1 sendo trabalhado para adicionar suporte ao WebGPU em bibliotecas populares de JavaScript que originalmente utilizam WebGL. Por exemplo, o suporte completo ao WebGPU j\u00e1 foi anunciado no Babylon.js, e suporte parcial no Three.js, PlayCanvas e TensorFlow.js.       <\/p>\n<p>Conceitualmente, o WebGPU difere do WebGL de forma semelhante ao que o API gr\u00e1fico Vulkan difere do OpenGL, mas o WebGPU n\u00e3o se baseia em um API gr\u00e1fico espec\u00edfico, representando sim uma camada universal que utiliza os mesmos primitivos de baixo n\u00edvel dispon\u00edveis no Vulkan, Metal e Direct3D. O WebGPU fornece aos aplicativos em JavaScript ferramentas para controle de baixo n\u00edvel sobre a organiza\u00e7\u00e3o, processamento e transmiss\u00e3o de comandos para a GPU, al\u00e9m de gerenciar recursos relacionados, mem\u00f3ria, buffers, objetos de textura e sombreados gr\u00e1ficos compilados. Essa abordagem permite alcan\u00e7ar um desempenho mais alto em aplicativos gr\u00e1ficos, reduzindo a sobrecarga e aumentando a efici\u00eancia no trabalho com a GPU.     <\/p>\n<p>WebGPU permite criar projetos 3D complexos para a web que funcionam t\u00e3o bem quanto programas isolados que usam Vulkan, Metal ou Direct3D diretamente, mas sem estarem restritos a plataformas espec\u00edficas. O WebGPU tamb\u00e9m oferece capacidades adicionais na portabilidade de programas gr\u00e1ficos nativos para uma forma que pode operar com tecnologias web, gra\u00e7as \u00e0 compila\u00e7\u00e3o em WebAssembly. Al\u00e9m da gr\u00e1ficos 3D, o WebGPU abrange tamb\u00e9m capacidades relacionadas ao deslocamento de c\u00e1lculos para a GPU e \u00e0 execu\u00e7\u00e3o de shaders.       <\/p>\n<p>Principais caracter\u00edsticas do WebGPU:  <\/p>\n<ul>\n<li class=\"l\"> Gerenciamento separado de recursos, tarefas preparat\u00f3rias e envio de comandos para a GPU (no WebGL, um \u00fanico objeto lidava com tudo de uma vez). S\u00e3o fornecidos tr\u00eas contextos distintos: GPUDevice para a cria\u00e7\u00e3o de recursos, como texturas e buffers; GPUCommandEncoder para a codifica\u00e7\u00e3o de comandos individuais, incluindo fases de renderiza\u00e7\u00e3o e computa\u00e7\u00e3o; GPUCommandBuffer para o envio \u00e0 fila de execu\u00e7\u00e3o na GPU. O resultado pode ser renderizado em uma \u00e1rea associada a um ou mais elementos canvas, ou processado sem sa\u00edda (por exemplo, ao executar tarefas computacionais). A separa\u00e7\u00e3o das fases simplifica a distribui\u00e7\u00e3o da cria\u00e7\u00e3o de recursos e opera\u00e7\u00f5es preparat\u00f3rias em diferentes manipuladores, que podem ser executados em diferentes threads.    <\/li>\n<li class=\"l\"> Uma abordagem diferente na manipula\u00e7\u00e3o de estados. O WebGPU prop\u00f5e dois objetos \u2014 GPURenderPipeline e GPUComputePipeline, permitindo combinar diferentes estados, previamente definidos pelo desenvolvedor, o que possibilita ao navegador economizar recursos ao evitar trabalhos adicionais, como a recompila\u00e7\u00e3o de shaders. Entre os estados suportados est\u00e3o: shaders, layouts de buffers de v\u00e9rtices e atributos, layouts de grupos vinculados, mistura, profundidade e modelos, formatos de sa\u00edda ap\u00f3s a renderiza\u00e7\u00e3o.    <\/li>\n<li class=\"l\"> O modelo de liga\u00e7\u00e3o, que se assemelha muito aos mecanismos de agrupamento de recursos presentes no Vulkan. Para agrupar recursos no WebGPU, \u00e9 fornecido o objeto GPUBindGroup, que pode ser associado a outros objetos semelhantes durante a grava\u00e7\u00e3o de comandos para uso em shaders. A cria\u00e7\u00e3o de tais grupos permite que o driver execute antecipadamente as a\u00e7\u00f5es preparat\u00f3rias necess\u00e1rias, al\u00e9m de permitir que o navegador altere as liga\u00e7\u00f5es de recursos de forma significativamente mais r\u00e1pida entre as chamadas de renderiza\u00e7\u00e3o. A disposi\u00e7\u00e3o das liga\u00e7\u00f5es de recursos pode ser definida previamente utilizando o objeto GPUBindGroupLayout.  <\/li>\n<\/ul>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58929\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e API WebGPU \u0438 \u044f\u0437\u044b\u043a\u0430 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 WGSL (WebGPU Shading Language) \u0432 \u0432\u0435\u0442\u043a\u0435 Chrome 113, \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043c\u0435\u0447\u0435\u043d \u043d\u0430 2 \u043c\u0430\u044f. WebGPU \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u0445\u043e\u0436\u0438\u0439 \u0441 Vulkan, Metal \u0438 Direct3D 12 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 GPU, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433 \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-107760","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e API WebGPU \u0438 \u044f\u0437\u044b\u043a\u0430 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 WGSL (WebGPU Shading Language) \u0432 \u0432\u0435\u0442\u043a\u0435 Chrome 113, \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043c\u0435\u0447\u0435\u043d \u043d\u0430 2 \u043c\u0430\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412 Chrome \u0431\u0443\u0434\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 WebGPU | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e API WebGPU \u0438 \u044f\u0437\u044b\u043a\u0430 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 WGSL (WebGPU Shading Language) \u0432 \u0432\u0435\u0442\u043a\u0435 Chrome 113, \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043c\u0435\u0447\u0435\u043d \u043d\u0430 2 \u043c\u0430\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-04-06T10:48:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-04-06T15:07:09+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47O Chrome ter\u00e1 suporte ao WebGPU | ProHoster","description":"A empresa Google anunciou a inclus\u00e3o por padr\u00e3o do suporte ao API gr\u00e1fico WebGPU e \u00e0 linguagem de shaders WGSL (WebGPU Shading Language) na vers\u00e3o Chrome 113, cuja libera\u00e7\u00e3o est\u00e1 prevista para 2 de maio.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412 Chrome \u0431\u0443\u0434\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 WebGPU | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e API WebGPU \u0438 \u044f\u0437\u044b\u043a\u0430 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 WGSL (WebGPU Shading Language) \u0432 \u0432\u0435\u0442\u043a\u0435 Chrome 113, \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043c\u0435\u0447\u0435\u043d \u043d\u0430 2 \u043c\u0430\u044f.","og:url":"https:\/\/prohoster.info\/pt\/blog\/news\/v-chrome-budet-vklyuchena-podderzhka-webgpu","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2023-04-06T10:48:22+00:00","article:modified_time":"2023-04-06T15:07:09+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/107760","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=107760"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/107760\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=107760"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=107760"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=107760"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}