{"id":75813,"date":"2020-03-28T19:42:24","date_gmt":"2020-03-28T17:42:24","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/collabora-razvivaet-nadstrojku-dlya-raboty-opencl-i-opengl-poverh-directx"},"modified":"2020-03-28T19:42:24","modified_gmt":"2020-03-28T17:42:24","slug":"collabora-razvivaet-nadstrojku-dlya-raboty-opencl-i-opengl-poverh-directx","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/collabora-razvivaet-nadstrojku-dlya-raboty-opencl-i-opengl-poverh-directx","title":{"rendered":"Collabora d\u00e9veloppe un module pour faire fonctionner OpenCL et OpenGL au-dessus de DirectX","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La soci\u00e9t\u00e9 Collabora <noindex><a rel=\"nofollow\" href=\"https:\/\/www.collabora.com\/news-and-blog\/news-and-events\/introducing-opencl-and-opengl-on-directx.html\">pr\u00e9sent\u00e9e<\/a><\/noindex> un nouveau pilote Gallium pour Mesa, impl\u00e9mentant une couche pour le fonctionnement des API OpenCL 1.2 et OpenGL 3.3 au-dessus des pilotes prenant en charge DirectX 12 (D3D12). Le code <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.freedesktop.org\/kusma\/mesa\/-\/tree\/msclc-d3d12\">publi\u00e9e<\/a><\/noindex> sous licence MIT.<\/p>\n<p>Le pilote propos\u00e9 permet d'utiliser Mesa sur des appareils qui ne supportent initialement pas OpenCL et OpenGL, ainsi que comme point de d\u00e9part pour le portage d'applications OpenGL\/OpenCL fonctionnant au-dessus de D3D12. Pour les fabricants de GPU, le sous-syst\u00e8me offre la possibilit\u00e9 de fournir un support OpenCL et OpenGL, \u00e0 condition que les pilotes ne prennent en charge que D3D12. <\/p>\n<p>Parmi les projets \u00e0 court terme, on note l'objectif d'atteindre la pleine r\u00e9ussite des tests de compatibilit\u00e9 OpenCL 1.2 et OpenGL 3.3, la v\u00e9rification de la compatibilit\u00e9 avec les applications et l'int\u00e9gration des travaux en cours dans la version principale de Mesa. Le d\u00e9veloppement se fait en collaboration avec les ing\u00e9nieurs de Microsoft qui d\u00e9veloppent    <noindex><a rel=\"nofollow\" href=\"https:\/\/devblogs.microsoft.com\/directx\/d3d12-translation-layer-and-d3d11on12-are-now-open-source\/\">ouvert<\/a><\/noindex> outils <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/microsoft\/D3D11On12\">D3D11On12<\/a><\/noindex> pour porter des jeux de D3D11 vers D3D12 et une biblioth\u00e8que <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/microsoft\/D3D12TranslationLayer\">D3D12TranslationLayer<\/a><\/noindex>, qui impl\u00e9mente des primitives graphiques typiques au-dessus de D3D12. <\/p>\n<p>La mise en \u0153uvre comprend le pilote Gallium, le compilateur OpenCL, le runtime OpenCL et le compilateur de shaders NIR-to-DXIL, transformant la repr\u00e9sentation interm\u00e9diaire des shaders NIR utilis\u00e9e dans Mesa en format binaire DXIL (DirectX Intermediate Language), pris en charge dans DirectX 12 et bas\u00e9 sur le bytecode LLVM 3.7 (<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/microsoft\/DirectXShaderCompiler\">DirectX Shader Compiler<\/a><\/noindex> de Microsoft, qui est en r\u00e9alit\u00e9 un fork \u00e9tendu de LLVM 3.7). Le compilateur OpenCL a \u00e9t\u00e9 \u00e9labor\u00e9 sur la base des travaux du projet LLVM et des outils disponibles <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/SPIRV-LLVM-Translator\">SPIRV-LLVM<\/a><\/noindex>.<\/p>\n<p>Les codes sources avec des extensions OpenCL sont compil\u00e9s \u00e0 l'aide de clang en pseudo-code interm\u00e9diaire LLVM (LLVM IR), qui est ensuite transform\u00e9 en une repr\u00e9sentation interm\u00e9diaire des noyaux OpenCL au format SPIR-V. Les noyaux en repr\u00e9sentation SPIR-V sont transmis \u00e0 Mesa, transform\u00e9s en format NIR, optimis\u00e9s et pass\u00e9s \u00e0 NIR-to-DXIL pour g\u00e9n\u00e9rer des shaders de calcul au format DXIL, adapt\u00e9s pour l'ex\u00e9cution sur GPU \u00e0 l'aide d'un runtime bas\u00e9 sur DirectX 12.<br \/>\nAu lieu de Clover, utilis\u00e9 dans l'impl\u00e9mentation OpenCL de Mesa, un nouveau runtime OpenCL a \u00e9t\u00e9 propos\u00e9, permettant plus de transformations directes vers l'API DirectX 12.<\/p>\n<p><center><noindex><a rel=\"nofollow\" href=\"https:\/\/www.collabora.com\/assets\/images\/blog\/opencl-compiler-overview.png\"><img decoding=\"async\" alt=\"Collabora d\u00e9veloppe un module pour faire fonctionner OpenCL et OpenGL au-dessus de DirectX\" src=\"\/wp-content\/uploads\/2020\/03\/194f364cee846f77fa730f828e4db726.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/center><\/p>\n<p>Les pilotes OpenCL et OpenGL ont \u00e9t\u00e9 pr\u00e9par\u00e9s en utilisant l'interface Gallium fournie dans Mesa, permettant lors de la cr\u00e9ation des pilotes de ne pas s'enfermer dans des d\u00e9tails sp\u00e9cifiques \u00e0 OpenGL et de traduire les appels OpenGL en entit\u00e9s plus proches des primitives graphiques que manipulent les GPU modernes. Le pilote Gallium re\u00e7oit les commandes OpenGL et fait appel au traducteur NIR-to-DXIL.<br \/>\nforme des tampons de commandes qui s'ex\u00e9cutent sur le GPU en utilisant le pilote D3D12.<\/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=52625\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Collabora \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u044b\u0439 Gallium-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0434\u043b\u044f Mesa, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0438\u0439 \u043f\u0440\u043e\u0441\u043b\u043e\u0439\u043a\u0443 \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b API OpenCL 1.2 \u0438 OpenGL 3.3 \u043f\u043e\u0432\u0435\u0440\u0445 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 DirectX 12 (D3D12). \u041a\u043e\u0434 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 MIT. \u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Mesa \u043d\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u0445, \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0445 OpenCL \u0438 OpenGL, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u0442\u0430\u0440\u0442\u043e\u0432\u043e\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0434\u043b\u044f \u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f OpenGL\/OpenCL-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e\u0432\u0435\u0440\u0445 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":75814,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-75813","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=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Collabora \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u044b\u0439 Gallium-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0434\u043b\u044f Mesa.\" \/>\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\/collabora-razvivaet-nadstrojku-dlya-raboty-opencl-i-opengl-poverh-directx\" \/>\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\udd47Collabora \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442 \u043d\u0430\u0434\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b OpenCL \u0438 OpenGL \u043f\u043e\u0432\u0435\u0440\u0445 DirectX | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Collabora \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u044b\u0439 Gallium-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0434\u043b\u044f Mesa.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/collabora-razvivaet-nadstrojku-dlya-raboty-opencl-i-opengl-poverh-directx\" \/>\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-03-28T17:42:24+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-28T17:42:24+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\udd47Collabora d\u00e9veloppe une interface pour faire fonctionner OpenCL et OpenGL au-dessus de DirectX | ProHoster","description":"La soci\u00e9t\u00e9 Collabora a pr\u00e9sent\u00e9 un nouveau pilote Gallium pour Mesa.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/collabora-razvivaet-nadstrojku-dlya-raboty-opencl-i-opengl-poverh-directx","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\udd47Collabora \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442 \u043d\u0430\u0434\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b OpenCL \u0438 OpenGL \u043f\u043e\u0432\u0435\u0440\u0445 DirectX | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Collabora \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u044b\u0439 Gallium-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0434\u043b\u044f Mesa.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/collabora-razvivaet-nadstrojku-dlya-raboty-opencl-i-opengl-poverh-directx","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-03-28T17:42:24+00:00","article:modified_time":"2020-03-28T17:42:24+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"75813","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 17:48:44","updated":"2022-10-05 09:19:01","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\/75813","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=75813"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/75813\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/75814"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=75813"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=75813"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=75813"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}