ソフトウェア

「AMDのRadeon用ドライバー」はLinuxカーネル全体の1割を占めていることが判明


2020年10月11日に公開された「Linux 5.9」では、Intelの第11世代CPU「Rocket Lake」や独自GPUアーキテクチャ「Xe」のほか、RDNA 2を採用したAMD製GPU「Radeon RX 6000」といった、最新デバイスの早期サポートが行われています。そんなLinux 5.9のコードを調べた結果、全体の10.5%が「AMD Radeon用ドライバー」だったと、Linux関連のニュースを扱う「Phoronix」が伝えています。

The AMD Radeon Graphics Driver Makes Up Roughly 10.5% Of The Linux Kernel - Phoronix
https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.9-AMDGPU-Stats

Phoronixの創設者であり編集者でもあるマイケル・ララベル氏がコード行数カウントツール「cloc」でLinux 5.9のコード行数を調べたところ、有効なコード部分が2049万2875行、コメント部分が358万8199行、空行が372万9879行であり、コード行数は合計で2781万953行であったとのこと。コード行数をプログラミング言語や構造化テキストといった内容ごとに分類した結果が以下。


Linux 5.9全体のコード行数に対し、Radeon用ドライバーのコード行数は有効なコードが216万3575行であり、カーネル全体の2049万2875行の約10.5%を占めているという結果に。多くのコードはヘッダファイルであり、コードが肥大化している要因はGPUレジスタ向けに自動生成されたヘッダーファイルであるとララベル氏は指摘しています。


他のGPUドライバーはどうなのかというと、Intel HD Graphics用ドライバーのコード行数は20万9076行と、Radeon用ドライバーの216万3575行と比較するとかなり少なめ。NVIDA製GPU用のドライバー「nouveau」については、約14万9000行であったとのこと。


なお、ソーシャルニュースサイト・Hacker Newsには、GPUドライバーは長いレビュープロセスを経ていないからこそLinuxカーネルに含めることができており、必要悪と考えることもできるといった意見も。ララベル氏は「いずれにしても、Linux 5.9には素晴らしい機能がたくさん備わっています」と語っています。

この記事のタイトルとURLをコピーする

・関連記事
2万7000行ものコードをひとつのファイルに書いたLinuxカーネルパッチが送りつけられる - GIGAZINE

プログラマーの努力とコードの行数が比例しない7つの理由 - GIGAZINE

Googleは10億個のファイル・20億行のコード・合計86TBでできている - GIGAZINE

現代のインターネットを形作る「世界を変えたコード」とは? - GIGAZINE

in ソフトウェア, Posted by darkhorse_log

You can read the machine translated English article here.