{"id":446078,"date":"2022-05-12T23:32:22","date_gmt":"2022-05-12T20:32:22","guid":{"rendered":"https:\/\/en.buradabiliyorum.com\/nvidia-releases-open-source-linux-gpu-drivers-with-a-catch\/"},"modified":"2022-05-12T23:32:22","modified_gmt":"2022-05-12T20:32:22","slug":"nvidia-releases-open-source-linux-gpu-drivers-with-a-catch","status":"publish","type":"post","link":"https:\/\/buradabiliyorum.com\/en\/nvidia-releases-open-source-linux-gpu-drivers-with-a-catch\/","title":{"rendered":"#Nvidia Releases Open-Source Linux GPU Drivers, With a Catch"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_84 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a26bbef91393\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #dd3333;color:#dd3333\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #dd3333;color:#dd3333\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a26bbef91393\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/buradabiliyorum.com\/en\/nvidia-releases-open-source-linux-gpu-drivers-with-a-catch\/#%E2%80%9CNvidia_Releases_Open-Source_Linux_GPU_Drivers_With_a_Catch%E2%80%9D\" >&#8220;Nvidia Releases Open-Source Linux GPU Drivers, With a Catch&#8221;<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/buradabiliyorum.com\/en\/nvidia-releases-open-source-linux-gpu-drivers-with-a-catch\/#Why_Open-Source_Matters\" >Why Open-Source Matters<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/buradabiliyorum.com\/en\/nvidia-releases-open-source-linux-gpu-drivers-with-a-catch\/#The_Catches\" >The Catches<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/buradabiliyorum.com\/en\/nvidia-releases-open-source-linux-gpu-drivers-with-a-catch\/#A_Long_Road_Ahead\" >A Long Road Ahead<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h1><span class=\"ez-toc-section\" id=\"%E2%80%9CNvidia_Releases_Open-Source_Linux_GPU_Drivers_With_a_Catch%E2%80%9D\"><\/span>&#8220;Nvidia Releases Open-Source Linux GPU Drivers, With a Catch&#8221;<span class=\"ez-toc-section-end\"><\/span><\/h1>\n<div>\n<!-- UNCACHED CONTENT --><\/p>\n<figure style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"type:primaryImage size-full wp-image-779121\" data-pagespeed-lazy-srcset=\"https:\/\/www.howtogeek.com\/wp-content\/uploads\/2022\/01\/nvidia-logo.jpg?width=398&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1 400w, https:\/\/www.howtogeek.com\/wp-content\/uploads\/2022\/01\/nvidia-logo.jpg?width=1198&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1 1200w\" sizes=\"auto, 400w, 1200w\" data-pagespeed-lazy-src=\"https:\/\/www.howtogeek.com\/wp-content\/uploads\/2022\/01\/nvidia-logo.jpg?width=1198&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1\" alt=\"NVIDIA logo on building\" width=\"1200\" height=\"675\" src=\"\/pagespeed_static\/1.JiBnMqyl6S.gif\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><figcaption class=\"wp-caption-text\"><span class=\"type:primaryImage imagecredit\"><a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/www.shutterstock.com\/image-photo\/nvidia-logo-sign-on-headquarters-blurred-1742705531\">Michael Vi\/Shutterstock.com<\/a><\/span><\/figcaption><\/figure>\n<p>Gaming on Linux has always been a bit more complicated than on Windows (or <a href=\"https:\/\/buradabiliyorum.com\/en\/category\/game\/\" data-internallinksmanager029f6b8e52c=\"7\" title=\"Game\" target=\"_blank\" rel=\"noopener\">game<\/a> consoles), and one reason for that is Nvidia\u2019s poor driver support on Linux. That\u2019s now changing, though it\u2019s unclear how much the situation will improve.<\/p>\n<p>Nvidia announced on Wednesday that it has published its Linux graphics kernel modules as open-source software, under a dual GPL\/MIT license. In other words, anyone can now look through Nvidia\u2019s code, and developers can submit fixes and new features to improve the drivers. Canonical (developers of Ubuntu Linux), SUSE, and Red Hat (developers of Fedora Linux) <a href=\"https:\/\/buradabiliyorum.com\/en\/category\/download-scripts-themes-apps\/\" data-internallinksmanager029f6b8e52c=\"9\" title=\"Download Scripts &amp; Themes &amp; Apps\" target=\"_blank\" rel=\"noopener\">app<\/a>lauded Nvidia\u2019s decision to finally open-source its Linux graphics drivers.<\/p>\n<p>Nvidia said in its blog post, \u201cIn this open-source release, support for GeForce and Workstation GPUs is alpha-quality. GeForce and Workstation users can use this driver on NVIDIA Turing and NVIDIA Ampere Architecture GPUs to run Linux desktops and use features such as multiple displays, G-SYNC, and NVIDIA RTX ray tracing in Vulkan and NVIDIA OptiX.\u201d<\/p>\n<h2 role=\"heading\" aria-level=\"2\"><span class=\"ez-toc-section\" id=\"Why_Open-Source_Matters\"><\/span>Why Open-Source Matters<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>So, why is this a big deal? Well, Nvidia graphics cards have never worked well with Linux PCs. Intel and AMD both maintain open-source graphics drivers for their products, which can then be included in the standard Linux kernel. The end result is that if you have a gaming PC with a Radeon GPU, or a laptop with Intel Xe graphics, everything <em>just works<\/em> on Linux. Since the code is available for anyone to look at and modify, Intel and AMD graphics work better with newer changes in the Linux ecosystem, like the emerging <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/en.wikipedia.org\/wiki\/Wayland_(display_server_protocol)\">Wayland display server<\/a>.<\/p>\n<p>Unlike AMD and Intel, Nvidia did\u00a0<em>not<\/em> open-source its drivers (before now). The proprietary driver package sometimes needs to be installed separately, and since Nvidia is the only one with access to the code, the drivers <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/wiki.gnome.org\/Initiatives\/Wayland\/NVIDIA\">don\u2019t support Wayland<\/a> and other newer Linux features. Linux developers created the open-source <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/wiki.archlinux.org\/title\/Nouveau\">Nouveau<\/a> driver as an alternative, but that usually offers worse performance than Nvidia\u2019s software, since it\u2019s essentially a reverse-engineering project.<\/p>\n<p>Put simply, Linux PCs with Nvidia graphics cards have had to choose between two bad options for years: a closed-source driver with bugs and missing features, or an open-source driver with worse performance. In theory, Nvidia\u2019s open-source drivers should be the best of both worlds.<\/p>\n<h2 role=\"heading\" aria-level=\"2\"><span class=\"ez-toc-section\" id=\"The_Catches\"><\/span>The Catches<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>That\u2019s all great <a href=\"https:\/\/buradabiliyorum.com\/en\/category\/news\/\" data-internallinksmanager029f6b8e52c=\"2\" title=\"News\" target=\"_blank\" rel=\"noopener\">news<\/a>, but there are a few reasons to temper your excitement. Hector Martin, the main developer for <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/asahilinux.org\/\">Asahi Linux<\/a>, shared in <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/twitter.com\/marcan42\/status\/1524615058688724992\">a series of tweets<\/a> that much of the important graphics code isn\u2019t actually open-source. Nvidia appears to have moved much of its proprietary code into the firmware on its graphics cards, which the open-source code interacts with \u2014 a bit like the Intel Management Engine\u00a0on Intel CPUs.<\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">For reference, Apple&#8217;s GPU firmware is ~400kB. Apple&#8217;s display controller, which is a similarly insane RPC mess, is ~7MB, but most of it is data tables (~1.5MB is code).<\/p>\n<p>Don&#8217;t get me wrong, less blobs in the kernel is great\u2026 but open source their &#8220;driver&#8221; they did not.<\/p>\n<p>\u2014 Hector Martin (@marcan42) <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/twitter.com\/marcan42\/status\/1524615060135768064?ref_src=twsrc%5Etfw\">May 12, 2022<\/a><\/p>\n<\/blockquote>\n<p>Martin theorized that some of Nvidia\u2019s code can\u2019t be open-sourced due to patent and licensing agreements, so this half-measure was the only way to make open-source drivers happen. AMD\u2019s graphics drivers also use some proprietary firmware components, but not nearly as much as Nvidia.<\/p>\n<p>There are other problems, too. The open-source driver only supports graphics cards that use Nvidia\u2019s <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/en.wikipedia.org\/wiki\/Ampere_(microarchitecture)\">Ampere<\/a> and <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/en.wikipedia.org\/wiki\/Turing_(microarchitecture)\">Turing<\/a> architectures, which includes the GeForce 16-<a href=\"https:\/\/buradabiliyorum.com\/en\/category\/watch-movies-tv-seriess\/\" data-internallinksmanager029f6b8e52c=\"8\" title=\"Watch Movies &amp; TV Series\" target=\"_blank\" rel=\"noopener\">series<\/a>, RTX 20-series, and newer GPUs. Anyone with a GTX 10-series card or other older hardware don\u2019t have access to the new driver at all.<\/p>\n<p>Finally, Nvidia isn\u2019t actually handling code updates like most open-source projects. The FAQ section on the announcement says each code release will be \u201ca snapshot generated from a shared codebase, so contributions may not be reflected as separate Git commits in the GitHub repo.\u201d In other words, it will be difficult for developers outside of Nvidia to track changes and diagnose problems.<\/p>\n<h2 role=\"heading\" aria-level=\"2\"><span class=\"ez-toc-section\" id=\"A_Long_Road_Ahead\"><\/span>A Long Road Ahead<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>The open-source driver release might be disappointing for some, especially for anyone still using older Nvidia graphics cards that aren\u2019t supported (it has been a bit difficult to buy a new graphics card lately). However, this is an important step in the right direction, if only because companies like Canonical and Red Hat have the opportunity to help improve Nvidia\u2019s code for the first time <em>ever<\/em>.<\/p>\n<p>Nvidia hopes the open-source driver can eventually be upstreamed into the Linux kernel, which might finally give PCs with GeForce hardware the same plug-and-play experience that AMD and Intel-based PCs have enjoyed for years under Linux.<\/p>\n<p><small>Source: <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/developer.nvidia.com\/blog\/nvidia-releases-open-source-gpu-kernel-modules\/\">Nvidia<\/a>, <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/github.com\/NVIDIA\/open-gpu-kernel-modules\">GitHub<\/a><\/small><\/p>\n<\/div>\n<p><script async src=\"\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<p><script>\n setTimeout(function(){\n  !function(f,b,e,v,n,t,s)\n  {if(f.fbq)return;n=f.fbq=function(){n.callMethod?\n  n.callMethod.apply(n,arguments):n.queue.push(arguments)};\n  if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\n  n.queue=[];t=b.createElement(e);t.async=!0;\n  t.src=v;s=b.getElementsByTagName(e)[0];\n  s.parentNode.insertBefore(t,s) } (window, document,'script',\n  'https:\/\/connect.facebook.net\/en_US\/fbevents.js');\n   fbq('init', '335401813750447');\n   fbq('track', 'PageView');\n  },3000);\n<\/script><\/p>\n<blockquote><p><strong><span style=\"color: #ff6600;\">If you liked the article, do not forget to share it with your friends. Follow us on\u00a0<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/news.google.com\/publications\/CAAqBwgKMLG0nwswvr63Aw\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Google News<\/a><\/span>\u00a0too, click on the star and choose us from your favorites.<\/span><\/strong><\/p><\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\">For forums sites go to <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/forum.buradabiliyorum.com\/\" target=\"_blank\" rel=\"noopener\">Forum.BuradaBiliyorum.Com<\/a><\/span><\/strong>\n<\/p><\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\"><strong>If you want to read more like this article, you can visit our <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/en.buradabiliyorum.com\/technology\/\" target=\"_blank\" rel=\"noopener\">Technology category.<\/a><\/span><\/strong><\/p>\n<\/blockquote>\n<p><span style=\"color: black;\"><a style=\"color: #ff9900;\" href=\"https:\/\/www.howtogeek.com\/805004\/nvidia-releases-open-source-linux-gpu-drivers-with-a-catch\/\" target=\"_blank\" rel=\"noopener\">Source<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;Nvidia Releases Open-Source Linux GPU Drivers, With a Catch&#8221; Michael Vi\/Shutterstock.com Gaming on Linux has always been a bit more complicated than on Windows (or game consoles), and one reason for that is Nvidia\u2019s poor driver support on Linux. That\u2019s now changing, though it\u2019s unclear how much the situation will improve. Nvidia announced on Wednesday&#8230;<\/p>\n","protected":false},"author":1,"featured_media":446079,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/www.howtogeek.com\/wp-content\/uploads\/2022\/01\/nvidia-logo.jpg?height=200p&trim=2,2,2,2","fifu_image_alt":"","footnotes":""},"categories":[18],"tags":[],"class_list":["post-446078","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology"],"_links":{"self":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/446078","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/comments?post=446078"}],"version-history":[{"count":0,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/446078\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media\/446079"}],"wp:attachment":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media?parent=446078"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/categories?post=446078"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/tags?post=446078"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}