{"id":79172,"date":"2020-04-25T01:42:03","date_gmt":"2020-04-24T23:42:03","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/v-nochnye-sborki-firefox-dobavlena-podderzhka-webgpu"},"modified":"2020-04-25T01:42:03","modified_gmt":"2020-04-24T23:42:03","slug":"v-nochnye-sborki-firefox-dobavlena-podderzhka-webgpu","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/v-nochnye-sborki-firefox-dobavlena-podderzhka-webgpu","title":{"rendered":"La prise en charge de WebGPU a \u00e9t\u00e9 ajout\u00e9e aux versions nocturnes de Firefox.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dans <noindex><a rel=\"nofollow\" href=\"https:\/\/nightly.mozilla.org\/\">nocturnes<\/a><\/noindex> versions de Firefox <noindex><a rel=\"nofollow\" href=\"https:\/\/hacks.mozilla.org\/2020\/04\/experimental-webgpu-in-firefox\/\">est d\u00e9sormais<\/a><\/noindex> support de la sp\u00e9cification <noindex><a rel=\"nofollow\" href=\"https:\/\/webgpu.io\/\">WebGPU<\/a><\/noindex>, fournissant une interface de programmation pour le traitement des graphiques 3D et des calculs du c\u00f4t\u00e9 GPU, conceptuellement similaire \u00e0 l'API <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52194\">Vulkan<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=39913\">Metal<\/a><\/noindex> et <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Direct3D#Direct3D_12\">Direct3D 12<\/a><\/noindex>. La sp\u00e9cification est d\u00e9velopp\u00e9e par Mozilla, Google, Apple, Microsoft et des repr\u00e9sentants de la communaut\u00e9 dans <noindex><a rel=\"nofollow\" href=\"https:\/\/www.w3.org\/community\/gpu\/\">le groupe de travail<\/a><\/noindex>, cr\u00e9\u00e9 au sein de l'organisation W3C. <\/p>\n<p>L'objectif cl\u00e9 de WebGPU est de cr\u00e9er une interface de programmation s\u00e9curis\u00e9e, conviviale, portable et haute performance pour \u00eatre utilis\u00e9e dans les technologies et capacit\u00e9s graphiques 3D de la plateforme Web, propos\u00e9es par les API graphiques syst\u00e8me modernes tels que Direct3D 12 sous Windows, Metal sous macOS et Vulkan sous Linux. Conceptuellement, WebGPU diff\u00e8re de WebGL \u00e0 peu pr\u00e8s autant que Vulkan diff\u00e8re d'OpenGL, et ne repose pas sur une API graphique sp\u00e9cifique, mais repr\u00e9sente un interm\u00e9diaire universel, utilisant de mani\u00e8re g\u00e9n\u00e9rale les m\u00eames primitives de bas niveau que celles disponibles dans Vulkan, Metal et Direct3D. <\/p>\n<p>WebGPU fournit aux applications JavaScript des moyens de contr\u00f4le de bas niveau sur l'organisation, le traitement et la transmission des commandes au GPU, la gestion des ressources associ\u00e9es, de la m\u00e9moire, des tampons, des objets de texture et des shaders graphiques compil\u00e9s. Cette approche permet d'atteindre de meilleures performances pour les applications graphiques en r\u00e9duisant les frais g\u00e9n\u00e9raux et en am\u00e9liorant l'efficacit\u00e9 des interactions avec le GPU. <\/p>\n<p>WebGPU permet de cr\u00e9er pour le Web des projets 3D complexes \u00e0 part enti\u00e8re, fonctionnant aussi bien que des programmes autonomes communiquant directement avec Vulkan, Metal ou Direct3D, mais non li\u00e9s \u00e0 des plateformes sp\u00e9cifiques. WebGPU offre \u00e9galement des possibilit\u00e9s suppl\u00e9mentaires pour le portage de programmes graphiques natifs sous une forme capable de fonctionner sur des technologies Web, gr\u00e2ce \u00e0 l'utilisation de WebAssembly. En plus des graphiques 3D, WebGPU couvre \u00e9galement les capacit\u00e9s li\u00e9es \u00e0 l'externalisation des calculs vers le GPU et au support du d\u00e9veloppement de shaders. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/gfx-rs\/naga\">contiennent<\/a><\/noindex> Les shaders peuvent \u00eatre cr\u00e9\u00e9s dans le langage de shading WebGPU ou sp\u00e9cifi\u00e9s dans un format interm\u00e9diaire SPIR-V, puis traduits en langages de shader pris en charge par les pilotes actuels.<\/p>\n<p>WebGPU applique une gestion distincte des ressources, des travaux pr\u00e9paratoires et de la transmission des commandes au GPU (dans WebGL, un seul objet \u00e9tait responsable de tout en m\u00eame temps). Trois contextes s\u00e9par\u00e9s sont fournis :<br \/>\n    GPUDevice pour cr\u00e9er des ressources telles que des textures et des tampons; GPUCommandEncoder pour encoder des commandes individuelles, y compris les \u00e9tapes de rendu et de calcul; GPUCommandBuffer pour \u00eatre mis en file d'attente pour ex\u00e9cution sur le GPU. Le r\u00e9sultat peut \u00eatre rendu dans une zone li\u00e9e \u00e0 un ou plusieurs \u00e9l\u00e9ments canvas, ou trait\u00e9 sans sortie (par exemple, lors de l'ex\u00e9cution de t\u00e2ches de calcul). La s\u00e9paration des \u00e9tapes facilite la r\u00e9partition de la cr\u00e9ation des ressources et des op\u00e9rations pr\u00e9paratoires dans diff\u00e9rents gestionnaires, qui peuvent \u00eatre ex\u00e9cut\u00e9s dans diff\u00e9rents threads.<\/p>\n<p>La deuxi\u00e8me distinction entre WebGPU et WebGL est l'approche diff\u00e9rente pour le traitement des \u00e9tats. WebGPU propose deux objets \u2014 GPURenderPipeline et GPUComputePipeline \u2014 qui permettent de combiner diff\u00e9rents \u00e9tats pr\u00e9alablement d\u00e9finis par le d\u00e9veloppeur, ce qui \u00e9vite au navigateur de gaspiller des ressources sur des travaux suppl\u00e9mentaires, tels que la recompilation des shaders. Parmi les \u00e9tats pris en charge figurent : les shaders, les dispositions des buffers de sommets et des attributs, les dispositions des groupes jointe, le m\u00e9lange, la profondeur et les mod\u00e8les, ainsi que les formats de sortie apr\u00e8s le rendu.<\/p>\n<p>La troisi\u00e8me caract\u00e9ristique de WebGPU est appel\u00e9e mod\u00e8le de liaison, qui ressemble beaucoup<br \/>\naux moyens de regroupement des ressources pr\u00e9sents dans Vulkan.<br \/>\nPour regrouper les ressources dans WebGPU, il existe un objet GPUBindGroup, qui peut \u00eatre li\u00e9 \u00e0 d'autres objets similaires lors de l'enregistrement des commandes pour \u00eatre utilis\u00e9 dans les shaders. La cr\u00e9ation de tels groupes permet au pilote d'effectuer \u00e0 l'avance les actions pr\u00e9paratoires n\u00e9cessaires, et au navigateur de changer consid\u00e9rablement plus rapidement les liaisons des ressources entre les appels de rendu. La disposition des liaisons de ressources peut \u00eatre d\u00e9finie \u00e0 l'avance \u00e0 l'aide de l'objet GPUBindGroupLayout.<\/p>\n<p><center><img decoding=\"async\" alt=\"La prise en charge de WebGPU a \u00e9t\u00e9 ajout\u00e9e aux versions nocturnes de Firefox.\" src=\"\/wp-content\/uploads\/2020\/04\/28e4f9d01acd727178fb0651256b317a.png\" style=\"display:block;margin: 0 auto;\" \/><\/center><\/p>\n<p>Dans Firefox, pour activer WebGPU dans about:config, il existe une option intitul\u00e9e \u00ab dom.webgpu.enabled \u00bb. Pour le rendu de CanvasContext, il est \u00e9galement n\u00e9cessaire d'activer le syst\u00e8me de composition <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/servo\/webrender\">WebRender<\/a><\/noindex> (\u00ab gfx.webrender.all \u00bb dans about:config), d\u00e9velopp\u00e9 en Rust et d\u00e9chargeant sur le GPU les op\u00e9rations de rendu du contenu de la page. L'impl\u00e9mentation de WebGPU est bas\u00e9e sur le code du projet<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/gfx-rs\/wgpu\">wgpu<\/a><\/noindex>, \u00e9crit en Rust et capable de fonctionner sur les API DX12, Vulkan et Metal sous Linux, Android, Windows et macOS (le support pour DX11 et OpenGL ES 3.0 est \u00e9galement en cours de d\u00e9veloppement). Parall\u00e8lement, une autre impl\u00e9mentation est d\u00e9velopp\u00e9e par Google, disponible dans la <noindex><a rel=\"nofollow\" href=\"http:\/\/chrome.com\/canary\">branche Canary.<\/a><\/noindex> Chromium et s'active via le drapeau \u00ab chrome:\/\/flags\/#enable-unsafe-webgpu \u00bb, mais ne fonctionne pour l'instant que sur macOS et Windows.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Source : <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52800\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043d\u043e\u0447\u043d\u044b\u0445 \u0441\u0431\u043e\u0440\u043a\u0430\u0445 Firefox \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 WebGPU, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 3D-\u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 GPU, \u043a\u043e\u043d\u0446\u0435\u043f\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u0441\u0445\u043e\u0436\u0438\u0439 \u0441 API Vulkan, Metal \u0438 Direct3D 12. \u0421\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442\u0441\u044f Mozilla, Google, Apple, Microsoft \u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u0435\u043b\u044f\u043c\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u0433\u0440\u0443\u043f\u043f\u0435, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 W3C. \u041a\u043b\u044e\u0447\u0435\u0432\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435\u0439 WebGPU \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e, \u0443\u0434\u043e\u0431\u043d\u043e\u0433\u043e, \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c\u043e\u0433\u043e \u0438 \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":79173,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-79172","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043d\u043e\u0447\u043d\u044b\u0445 \u0441\u0431\u043e\u0440\u043a\u0430\u0445 Firefox\" \/>\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\/fr\/blog\/news\/v-nochnye-sborki-firefox-dobavlena-podderzhka-webgpu\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\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 \u043d\u043e\u0447\u043d\u044b\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 Firefox \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 WebGPU | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043d\u043e\u0447\u043d\u044b\u0445 \u0441\u0431\u043e\u0440\u043a\u0430\u0445 Firefox\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/v-nochnye-sborki-firefox-dobavlena-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=\"2020-04-24T23:42:03+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-24T23:42:03+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\udd47Le support de WebGPU a \u00e9t\u00e9 ajout\u00e9 dans les builds nocturnes de Firefox | ProHoster","description":"Dans les builds nocturnes de Firefox","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/v-nochnye-sborki-firefox-dobavlena-podderzhka-webgpu","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","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 \u043d\u043e\u0447\u043d\u044b\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 Firefox \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 WebGPU | ProHoster","og:description":"\u0412 \u043d\u043e\u0447\u043d\u044b\u0445 \u0441\u0431\u043e\u0440\u043a\u0430\u0445 Firefox","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/v-nochnye-sborki-firefox-dobavlena-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":"2020-04-24T23:42:03+00:00","article:modified_time":"2020-04-24T23:42:03+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"79172","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 16:43:23","updated":"2022-09-29 10:54:27","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/79172","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=79172"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/79172\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/79173"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=79172"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=79172"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=79172"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}