<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>GPU on KnightLiブログ</title>
        <link>https://knightli.com/ja/tags/gpu/</link>
        <description>Recent content in GPU on KnightLiブログ</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>ja</language>
        <lastBuildDate>Mon, 27 Apr 2026 08:51:10 +0800</lastBuildDate><atom:link href="https://knightli.com/ja/tags/gpu/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>2026年4月のGPU選び：避けたいモデルと、より見やすいモデル</title>
        <link>https://knightli.com/ja/2026/04/27/gpu-buying-guide-april-2026-model-picks/</link>
        <pubDate>Mon, 27 Apr 2026 08:51:10 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/27/gpu-buying-guide-april-2026-model-picks/</guid>
        <description>&lt;p&gt;最近PCを組もうとしているなら、GPU選びでは「新しいかどうか」だけで見ないほうがいいです。2026年4月という時点では、すでにかなり買いにくくなっているカードもありますし、完璧ではなくても同価格帯の中ではまだ素直に選びやすいカードもあります。&lt;/p&gt;
&lt;p&gt;今回は理屈を広げすぎず、型番をそのまま挙げていきます。&lt;/p&gt;
&lt;h2 id=&#34;あまりおすすめしにくいモデル&#34;&gt;あまりおすすめしにくいモデル
&lt;/h2&gt;&lt;h2 id=&#34;1-rtx-5060-ti-8gb&#34;&gt;1. &lt;code&gt;RTX 5060 Ti 8GB&lt;/code&gt;
&lt;/h2&gt;&lt;p&gt;このカードの問題は、まったく使えないことではありません。問題は、&lt;code&gt;8GB&lt;/code&gt; という容量がこの時点では少し中途半端になってきていることです。&lt;/p&gt;
&lt;p&gt;軽めのオンラインゲームを &lt;code&gt;1080p&lt;/code&gt; 中高設定で遊ぶだけならまだ成立します。ですが、次のような方向に進むと弱点がかなり早く見えてきます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;新しめのAAAタイトル&lt;/li&gt;
&lt;li&gt;より高いテクスチャ設定&lt;/li&gt;
&lt;li&gt;&lt;code&gt;1440p&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;AI推論、編集、制作作業との兼用&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;すでに &lt;code&gt;RTX 5060 Ti&lt;/code&gt; を見ているなら、少し予算を削って &lt;code&gt;8GB&lt;/code&gt; にするより、最初から &lt;code&gt;16GB&lt;/code&gt; 版を選ぶほうが無難です。&lt;/p&gt;
&lt;p&gt;短く言えば、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;RTX 5060 Ti 8GB&lt;/code&gt;：あまりおすすめしにくい&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RTX 5060 Ti 16GB&lt;/code&gt;：かなり見やすい&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;2-まだ高い旧世代カード特に-rtx-3080-10gb-と-rtx-3070-ti&#34;&gt;2. まだ高い旧世代カード、特に &lt;code&gt;RTX 3080 10GB&lt;/code&gt; と &lt;code&gt;RTX 3070 Ti&lt;/code&gt;
&lt;/h2&gt;&lt;p&gt;これらのカードは、性能がまったく通用しないわけではありません。ただ、いま買うとかなり微妙な位置に置かれやすいです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;消費電力は低くない&lt;/li&gt;
&lt;li&gt;世代は古い&lt;/li&gt;
&lt;li&gt;VRAMも余裕があるとは言いにくい&lt;/li&gt;
&lt;li&gt;中古の出どころも複雑になりやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;特に &lt;code&gt;RTX 3080 10GB&lt;/code&gt; は、価格がまだ高いままだと「見た目は強いけれど、実際はあまりバランスが良くないカード」になりやすいです。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;RTX 3070 Ti&lt;/code&gt; も同じです。絶対に買えないわけではありませんが、価格差が十分でないなら、もう少し新しいカードや、VRAMに余裕があるカード、あるいは消費電力とのバランスが良いカードを見たほうがたいてい納得しやすいです。&lt;/p&gt;
&lt;h2 id=&#34;3-出どころが不明な旧フラッグシップたとえば-rtx-3090-や-rtx-3080-ti&#34;&gt;3. 出どころが不明な旧フラッグシップ、たとえば &lt;code&gt;RTX 3090&lt;/code&gt; や &lt;code&gt;RTX 3080 Ti&lt;/code&gt;
&lt;/h2&gt;&lt;p&gt;この2枚は欲しくなる理由がとてもわかりやすいです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;名前が強い&lt;/li&gt;
&lt;li&gt;スペック上の性能もまだ悪くない&lt;/li&gt;
&lt;li&gt;中古市場でよく見かける&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ただし、本当に注意すべきなのは出どころです。&lt;/p&gt;
&lt;p&gt;もし買うものが、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;抜き取り品&lt;/li&gt;
&lt;li&gt;修理歴あり&lt;/li&gt;
&lt;li&gt;使用履歴がはっきりしない中古&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;であるなら、普通の新品カードよりリスクはかなり高くなります。&lt;code&gt;RTX 3090&lt;/code&gt; は &lt;code&gt;24GB&lt;/code&gt; VRAM が魅力ですが、発熱、電源まわり、個体の状態、過去の使われ方など、気にすべき点が新品カードよりずっと多いです。&lt;/p&gt;
&lt;p&gt;自分が何を買っているのかをはっきり把握していないなら、こうした旧フラッグシップは気軽に手を出さないほうが無難です。&lt;/p&gt;
&lt;h2 id=&#34;4-価格が合っていない-rtx-5070&#34;&gt;4. 価格が合っていない &lt;code&gt;RTX 5070&lt;/code&gt;
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;RTX 5070&lt;/code&gt; は、存在そのものが悪いカードではありません。ただし、価格が正しいことが前提です。&lt;/p&gt;
&lt;p&gt;気まずくなりやすいのは、&lt;code&gt;RTX 5070 Ti&lt;/code&gt; との差額があまり開いていないときです。そうなると、多くの人が買ったあとに微妙な気分になりやすいです。&lt;/p&gt;
&lt;p&gt;よくある感覚はこうです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;5070&lt;/code&gt; を買う：もう少し出せば &lt;code&gt;5070 Ti&lt;/code&gt; に届いた気がする&lt;/li&gt;
&lt;li&gt;予算を足さない：それでも「少し足りない側」を買った感覚が残る&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;なので &lt;code&gt;RTX 5070&lt;/code&gt; は完全に候補外ではありませんが、&lt;strong&gt;価格が明確にうまいときだけ見るカード&lt;/strong&gt; だと思ったほうがいいです。値付けが中途半端だと、理屈では正しくても実際にはあまり気持ちよく買えません。&lt;/p&gt;
&lt;h2 id=&#34;比較的見やすいモデル&#34;&gt;比較的見やすいモデル
&lt;/h2&gt;&lt;h2 id=&#34;1-rtx-5060-ti-16gb&#34;&gt;1. &lt;code&gt;RTX 5060 Ti 16GB&lt;/code&gt;
&lt;/h2&gt;&lt;p&gt;中価格帯を見ているなら、このカードは &lt;code&gt;8GB&lt;/code&gt; 版よりずっと無難です。&lt;/p&gt;
&lt;p&gt;理由は単純です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;同じシリーズ内で余裕がある&lt;/li&gt;
&lt;li&gt;今後数年でVRAM不足にぶつかりにくい&lt;/li&gt;
&lt;li&gt;ゲームと制作系を混ぜても扱いやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この価格帯で一番派手なカードとは限りませんが、「買ってすぐ後悔しにくい」カードではあります。&lt;/p&gt;
&lt;h2 id=&#34;2-rtx-5070-ti&#34;&gt;2. &lt;code&gt;RTX 5070 Ti&lt;/code&gt;
&lt;/h2&gt;&lt;p&gt;予算を伸ばせるなら、現状では &lt;code&gt;RTX 5070&lt;/code&gt; よりこちらのほうが完成度の高い答えに見えます。&lt;/p&gt;
&lt;p&gt;強みは、あらゆる場面で圧倒することではありません。ゲーム、解像度、そして使う年数のバランスを取りやすいことです。&lt;/p&gt;
&lt;p&gt;特に向いているのは、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;1440p&lt;/code&gt; 高設定を狙いたい人&lt;/li&gt;
&lt;li&gt;何年か使いたい人&lt;/li&gt;
&lt;li&gt;すぐにアップグレードを考えたくない人&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;もともと &lt;code&gt;5070&lt;/code&gt; と &lt;code&gt;5070 Ti&lt;/code&gt; のあいだで悩んでいて、差額が極端でないなら、最初から &lt;code&gt;5070 Ti&lt;/code&gt; にしたほうが気持ちよく終わることが多いです。&lt;/p&gt;
&lt;h2 id=&#34;3-ちゃんとした価格の新品カードは古い高級カードより先に見る価値がある&#34;&gt;3. ちゃんとした価格の新品カードは、古い高級カードより先に見る価値がある
&lt;/h2&gt;&lt;p&gt;中古GPUを掘り慣れていないなら、単純ですがかなり有効な考え方があります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;まずは普通の新品カードを優先する&lt;/li&gt;
&lt;li&gt;出どころの複雑な旧ハイエンドは後回しにする&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;今の時点では、より現実的なのはたとえばこうです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;中価格帯の予算：まず &lt;code&gt;RTX 5060 Ti 16GB&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;もう少し上：&lt;code&gt;RTX 5070 Ti&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RTX 5070&lt;/code&gt; は価格が明らかに良いときだけ検討&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;名前が強そうだからといって、履歴の重い古いカードに最初から賭けに行く必要はあまりありません。&lt;/p&gt;
&lt;h2 id=&#34;ひとことで言うなら&#34;&gt;ひとことで言うなら
&lt;/h2&gt;&lt;p&gt;次のように覚えておくと早いです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;あまりおすすめしにくい：&lt;code&gt;RTX 5060 Ti 8GB&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;価格次第で判断：&lt;code&gt;RTX 5070&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;慎重に扱うべき：&lt;code&gt;RTX 3080 10GB&lt;/code&gt;、&lt;code&gt;RTX 3070 Ti&lt;/code&gt;、出どころ不明の &lt;code&gt;RTX 3090&lt;/code&gt; / &lt;code&gt;RTX 3080 Ti&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;比較的見やすい：&lt;code&gt;RTX 5060 Ti 16GB&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;予算が届くならより安心：&lt;code&gt;RTX 5070 Ti&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;最後に&#34;&gt;最後に
&lt;/h2&gt;&lt;p&gt;この時期のGPU選びでいちばん怖いのは、少し高く買うことではありません。&lt;strong&gt;見た目には問題なさそうなのに、実際に使うとずっと何か足りないと感じるカードを買ってしまうこと&lt;/strong&gt; です。&lt;/p&gt;
&lt;p&gt;後悔を減らしたいなら、&lt;code&gt;RTX 5060 Ti 16GB&lt;/code&gt; と &lt;code&gt;RTX 5070 Ti&lt;/code&gt; は比較的選びやすく、&lt;code&gt;RTX 5060 Ti 8GB&lt;/code&gt;、価格が合わない &lt;code&gt;RTX 5070&lt;/code&gt;、そして履歴の複雑な旧ハイエンドは先に消していくほうが楽です。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Ubuntu 26.04 LTS の GPU とハードウェア対応アップデート: CUDA、ROCm、DPC&#43;&#43;、そして各種プラットフォームの変更</title>
        <link>https://knightli.com/ja/2026/04/26/ubuntu-26-04-lts-gpu-hardware-ai-updates/</link>
        <pubDate>Sun, 26 Apr 2026 19:35:57 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/26/ubuntu-26-04-lts-gpu-hardware-ai-updates/</guid>
        <description>&lt;p&gt;前の記事が &lt;code&gt;Ubuntu 26.04 LTS&lt;/code&gt; のデスクトップ全体像だったとすれば、こちらはハードウェアと計算基盤まわりの補足版です。今回の &lt;code&gt;26.04&lt;/code&gt; では、AI、GPU コンピューティング、プラットフォーム互換性に関わる項目が、メインアーカイブや正式サポートの範囲にかなり取り込まれています。&lt;/p&gt;
&lt;p&gt;先に結論を言うと、今回の注目点は単なるデスクトップやカーネルの更新ではなく、&lt;strong&gt;Ubuntu が Intel、NVIDIA、AMD の GPU コンピューティングスタックを、より体系的にディストリビューションへ取り込み始めたこと&lt;/strong&gt;です。&lt;/p&gt;
&lt;h2 id=&#34;1-intel-dpc-と関連コンポーネントが-ubuntu-archive-に追加&#34;&gt;1. Intel DPC++ と関連コンポーネントが Ubuntu Archive に追加
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;26.04&lt;/code&gt; から、Intel のオープンソース &lt;code&gt;oneAPI DPC++&lt;/code&gt; コンパイラが Ubuntu Archive から直接利用できるようになり、&lt;code&gt;SYCL&lt;/code&gt; コードのビルドに使えます。ランタイムには Intel GPU 向けアダプタも含まれます。&lt;/p&gt;
&lt;p&gt;あわせて、次の関連コンポーネントも Ubuntu リポジトリで利用可能になりました。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;oneDPL&lt;/code&gt;。DPC++ library として、より高生産性な開発 API を提供&lt;/li&gt;
&lt;li&gt;&lt;code&gt;oneDNN&lt;/code&gt;。&lt;code&gt;dpclang-6&lt;/code&gt; でビルドされており、Intel GPU 上で実行可能&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;つまり、すでに &lt;code&gt;SYCL&lt;/code&gt;、ヘテロジニアスコンピューティング、あるいは Intel GPU 上の AI ワークロードを見ている人にとって、Ubuntu 上での導入経路がかなり素直になったということです。従来のように外部スタックを丸ごと別管理する必要が薄くなります。&lt;/p&gt;
&lt;p&gt;実運用上の注意点として、Ubuntu はこれらの Intel GPU 関連機能を使うにはユーザーが &lt;code&gt;render&lt;/code&gt; グループに属している必要があるとも明記しています。&lt;/p&gt;
&lt;h2 id=&#34;2-nvidia-cuda-toolkit-も-apt-で直接導入可能に&#34;&gt;2. NVIDIA CUDA toolkit も &lt;code&gt;apt&lt;/code&gt; で直接導入可能に
&lt;/h2&gt;&lt;p&gt;多くの開発者や運用担当者にとって、これは今回の更新の中でもかなり実用的な変更でしょう。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;26.04&lt;/code&gt; から、&lt;code&gt;NVIDIA CUDA toolkit&lt;/code&gt; を Ubuntu Archive から直接インストールできます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install cuda-toolkit
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;意味があるのは、単にセットアップ手順が少し減るという話だけではありません。&lt;/p&gt;
&lt;p&gt;Ubuntu 向けにソフトウェアを配布する開発者にとっては、&lt;code&gt;CUDA runtime&lt;/code&gt; への依存関係を宣言するだけでよくなり、実際のインストールや互換性管理は Ubuntu 側がディストリビューションレベルで面倒を見る形になります。CUDA が Ubuntu 上でよりネイティブなシステム機能に近づき、別管理の外部スタックとして抱え込む必要が減るわけです。&lt;/p&gt;
&lt;h2 id=&#34;3-amd-rocm-710-が-universe-に追加&#34;&gt;3. AMD ROCm 7.1.0 が Universe に追加
&lt;/h2&gt;&lt;p&gt;AMD 側では、Ubuntu Universe に &lt;code&gt;ROCm 7.1.0&lt;/code&gt; が入りました。&lt;/p&gt;
&lt;p&gt;このライブラリ群が提供する主なものは次の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AMD GPU 向け AI 学習・推論のバックエンド基盤&lt;/li&gt;
&lt;li&gt;機械学習および高性能計算向けのソフトウェア基盤&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;さらに Canonical は、ROCm 関連コンポーネントを自社の CI/CD パイプラインで継続的に検証していると述べています。&lt;code&gt;autopkgtests&lt;/code&gt; に加えて、次のようなユーザー空間アプリケーションも対象です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;llama.cpp&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pytorch&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Blender&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Lemonade Server&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ここはかなり重要です。Ubuntu は単にパッケージを置いただけではなく、ROCm をメンテナブルなソフトウェアスタックとして扱い、継続的に検証していることを意味します。&lt;/p&gt;
&lt;h2 id=&#34;4-本当のポイントは-3-社の-gpu-エコシステムが同時に進んでいること&#34;&gt;4. 本当のポイントは 3 社の GPU エコシステムが同時に進んでいること
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;DPC++&lt;/code&gt;、&lt;code&gt;CUDA&lt;/code&gt;、&lt;code&gt;ROCm&lt;/code&gt; を並べて見ると、&lt;code&gt;26.04&lt;/code&gt; の方向性がわかりやすくなります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Intel: &lt;code&gt;SYCL&lt;/code&gt; / &lt;code&gt;oneAPI&lt;/code&gt; 系の機能を公式リポジトリへ取り込む&lt;/li&gt;
&lt;li&gt;NVIDIA: &lt;code&gt;CUDA toolkit&lt;/code&gt; にディストリビューション管理の導入経路を与える&lt;/li&gt;
&lt;li&gt;AMD: &lt;code&gt;ROCm 7.1.0&lt;/code&gt; を Universe に入れ、継続的な検証も行う&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ubuntu 上で次のような用途に触れる人ほど、この更新の意味を感じやすいはずです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ローカル LLM 推論&lt;/li&gt;
&lt;li&gt;GPU アクセラレーションを使った学習やファインチューニング&lt;/li&gt;
&lt;li&gt;Blender、科学技術計算、HPC&lt;/li&gt;
&lt;li&gt;複数の GPU プラットフォームをまたぐ開発環境&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;要するに、Ubuntu は「GPU ドライバが入る OS」から一歩進み、&lt;strong&gt;AI と GPU コンピューティングに必要なユーザー空間ソフトウェアスタックもより包括的に担うディストリビューション&lt;/strong&gt;になりつつあります。&lt;/p&gt;
&lt;h2 id=&#34;5-nvidia-dynamic-boost-がデフォルトで有効化&#34;&gt;5. NVIDIA Dynamic Boost がデフォルトで有効化
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;25.04&lt;/code&gt; 以降、対応する NVIDIA 搭載ノート PC では &lt;code&gt;Dynamic Boost&lt;/code&gt; がデフォルトで有効になっています。&lt;/p&gt;
&lt;p&gt;仕組み自体はわかりやすく、システム負荷に応じて CPU と GPU の間で消費電力を動的に振り分けます。ゲーム用途では、必要なときに GPU へより多くの電力を回し、性能を引き上げる形になります。&lt;/p&gt;
&lt;p&gt;ただし有効になる条件は 2 つあります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AC 電源に接続されていること&lt;/li&gt;
&lt;li&gt;GPU 負荷が十分に高いこと&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;バッテリー駆動時には動作しません。&lt;/p&gt;
&lt;h2 id=&#34;6-新しい-intel-内蔵-gpu--外付け-gpu-のサポートも前進&#34;&gt;6. 新しい Intel 内蔵 GPU / 外付け GPU のサポートも前進
&lt;/h2&gt;&lt;p&gt;Ubuntu は新しい Intel GPU への対応も引き続き進めています。主な対象は次の通りです。&lt;/p&gt;
&lt;p&gt;統合 GPU:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Intel Core Ultra Xe2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Intel Core Ultra Xe3&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ディスクリート GPU:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Intel Arc 5 B570&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Intel Arc 5 B580&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Intel Arc Pro B50&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Intel Arc Pro B60&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Intel Arc Pro B65&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Intel Arc Pro B70&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;これらのデバイスに関連して、Ubuntu はすでに利用可能な機能も挙げています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Intel Embree を利用した GPU / CPU レイトレーシング描画性能の向上。&lt;code&gt;Blender 4.2+&lt;/code&gt; などで恩恵あり&lt;/li&gt;
&lt;li&gt;&amp;ldquo;Battlemage&amp;rdquo; デバイスで &lt;code&gt;AVC&lt;/code&gt;、&lt;code&gt;JPEG&lt;/code&gt;、&lt;code&gt;HEVC&lt;/code&gt;、&lt;code&gt;AV1&lt;/code&gt; のハードウェアエンコードをサポート&lt;/li&gt;
&lt;li&gt;Intel Compute Runtime に新しい &lt;code&gt;CCS&lt;/code&gt; 最適化を導入&lt;/li&gt;
&lt;li&gt;Intel Xe GPU のデバッグサポートを有効化&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;さらに後続の &lt;code&gt;25.10&lt;/code&gt; では、次のような機能強化も続きます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Linux kernel 6.17&lt;/code&gt; を通じて、開発コードネーム &lt;code&gt;Panther Lake&lt;/code&gt; の次世代 Intel クライアントプラットフォームを初期サポート&lt;/li&gt;
&lt;li&gt;IOMMU、PCIe サブシステム、マルチ GPU サポートの改善&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Mesa 25.2.3&lt;/code&gt; で Battlemage と Panther Lake 向けに &lt;code&gt;VK_KHR_shader_bfloat16&lt;/code&gt; を有効化&lt;/li&gt;
&lt;li&gt;&lt;code&gt;intel-media-driver 25.3.0&lt;/code&gt; で Panther Lake のデコードと &lt;code&gt;VP9&lt;/code&gt; エンコードを追加&lt;/li&gt;
&lt;li&gt;&lt;code&gt;intel-compute-runtime 25.31&lt;/code&gt; で Level Zero の &lt;code&gt;USM&lt;/code&gt; プールやローカルデバイスメモリ上のイベント確保戦略を調整&lt;/li&gt;
&lt;li&gt;&lt;code&gt;level-zero 1.24&lt;/code&gt; と &lt;code&gt;level-zero-raytracing 1.1.0&lt;/code&gt; で仕様対応と RTAS 拡張を強化&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;7-nvidia-デスクトップのサスペンド復帰も安定化&#34;&gt;7. Nvidia デスクトップのサスペンド復帰も安定化
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;25.10&lt;/code&gt; から、Ubuntu はプロプライエタリな &lt;code&gt;Nvidia&lt;/code&gt; ドライバでサスペンド復帰を有効化し、復帰時の破損やフリーズを減らしています。&lt;/p&gt;
&lt;p&gt;見た目に派手な変更ではありませんが、長時間稼働させるデスクトップや、サスペンドと復帰を繰り返す環境ではかなり大事な改善です。&lt;/p&gt;
&lt;h2 id=&#34;8-armraspberry-pirisc-vibm-z-でも要件変更がある&#34;&gt;8. ARM、Raspberry Pi、RISC-V、IBM Z でも要件変更がある
&lt;/h2&gt;&lt;p&gt;GPU ソフトウェアスタック以外にも、今回のリリースノートにはプラットフォーム面で覚えておきたい変更がいくつかあります。&lt;/p&gt;
&lt;h3 id=&#34;arm64-デスクトッププラットフォーム&#34;&gt;ARM64 デスクトッププラットフォーム
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;25.10&lt;/code&gt; から、&lt;code&gt;ARM64&lt;/code&gt; 向け &lt;code&gt;linux-generic&lt;/code&gt; カーネルは、&lt;code&gt;UEFI&lt;/code&gt; で起動する ARM64 デスクトッププラットフォームへの互換性をより広く提供します。&lt;/p&gt;
&lt;h3 id=&#34;raspberry-pi-の新しいブートレイアウト&#34;&gt;Raspberry Pi の新しいブートレイアウト
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;25.10&lt;/code&gt; で導入され、&lt;code&gt;26.04&lt;/code&gt; でも継続調整されている変更の 1 つが、Raspberry Pi 向けブートパーティションの新レイアウトです。&lt;/p&gt;
&lt;p&gt;目的はブート信頼性の向上で、新しく書き込まれたブート資産はいったん「テスト」され、問題がなければ新しい &amp;ldquo;known good&amp;rdquo; セットとして確定されます。&lt;/p&gt;
&lt;p&gt;特に覚えておきたいのはファームウェア日付の条件です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Pi 3 / 3+ / CM3+ / Zero 2W&lt;/code&gt;: 追加作業は不要。ブートファームウェアはイメージ自体に含まれる&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Pi 4 / 400 / CM4&lt;/code&gt;: ブートファームウェアの日付が &lt;code&gt;2022-11-25&lt;/code&gt; 以前であってはならない&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Pi 5 / 500 / CM5&lt;/code&gt;: ブートファームウェアの日付が &lt;code&gt;2025-02-11&lt;/code&gt; 以前であってはならない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;確認コマンドは次の通りです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo rpi-eeprom-update
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;ファームウェアが古く、かつ &lt;code&gt;Ubuntu 24.04 LTS&lt;/code&gt; 以降を使っているなら、次のように更新できます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo rpi-eeprom-update -a
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo reboot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;raspberry-pi-デスクトップイメージは-desktop-minimal-ベースに&#34;&gt;Raspberry Pi デスクトップイメージは desktop-minimal ベースに
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;25.10&lt;/code&gt; から、Raspberry Pi 向け Ubuntu Desktop イメージは完全な &lt;code&gt;desktop&lt;/code&gt; seed ではなく、&lt;code&gt;desktop-minimal&lt;/code&gt; ベースになりました。&lt;/p&gt;
&lt;p&gt;Ubuntu が示している利点は明確で、デフォルトのアプリセットが小さくなり、非圧縮イメージと実システムの両方で約 &lt;code&gt;777MB&lt;/code&gt; を節約できます。&lt;/p&gt;
&lt;p&gt;アップグレード後にこのデフォルトアプリ群をまとめて削除したい場合は、次を使えます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt purge ubuntu-desktop --autoremove
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;一部のアプリを残したいなら、先に &lt;code&gt;apt&lt;/code&gt; で手動インストール扱いにしておけば除外できます。&lt;/p&gt;
&lt;h3 id=&#34;raspberry-pi-の-swap-は-cloud-init-管理に&#34;&gt;Raspberry Pi の swap は cloud-init 管理に
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;25.10&lt;/code&gt; から、Raspberry Pi デスクトップイメージ上の swap ファイル作成は &lt;code&gt;cloud-init&lt;/code&gt; が担当します。&lt;br&gt;
初回起動前に swap サイズを調整したい場合は、ブートパーティション上の &lt;code&gt;user-data&lt;/code&gt; を直接編集できます。&lt;/p&gt;
&lt;h3 id=&#34;risc-v-の要件が引き上げ&#34;&gt;RISC-V の要件が引き上げ
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;25.10&lt;/code&gt; から、&lt;code&gt;Ubuntu 26.04 LTS&lt;/code&gt; の &lt;code&gt;RISC-V&lt;/code&gt; 版は &lt;code&gt;RVA23S64 ISA profile&lt;/code&gt; を実装したハードウェアを必要とします。&lt;/p&gt;
&lt;p&gt;この要件を満たさないシステムでは &lt;code&gt;Ubuntu 26.04 LTS&lt;/code&gt; を動かせません。もし以前の &lt;code&gt;RVA20&lt;/code&gt; プロセッサコアを使ったボードを使っているなら、&lt;code&gt;Ubuntu 24.04 LTS&lt;/code&gt; のサポートラインに留まる必要があります。&lt;/p&gt;
&lt;p&gt;Ubuntu の説明では、&lt;code&gt;2026 年 4 月&lt;/code&gt; 時点で実機の &lt;code&gt;RVA23S64&lt;/code&gt; ハードウェアはまだ存在しません。そのため、現在サポートされる唯一の環境は、実質的には &lt;code&gt;-cpu rva23s64&lt;/code&gt; を指定した &lt;code&gt;QEMU&lt;/code&gt; 仮想環境です。&lt;/p&gt;
&lt;h3 id=&#34;ibm-z-の最低要件は-z15-に&#34;&gt;IBM Z の最低要件は z15 に
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;26.04&lt;/code&gt; から、&lt;code&gt;s390x&lt;/code&gt; アーキテクチャの最低要件は &lt;code&gt;z15&lt;/code&gt; へ引き上げられました。&lt;/p&gt;
&lt;p&gt;つまり次のようになります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;z14&lt;/code&gt; / &lt;code&gt;LinuxONE II&lt;/code&gt; およびそれ以前のシステムでは &lt;code&gt;Ubuntu 26.04 LTS&lt;/code&gt; をインストールできない&lt;/li&gt;
&lt;li&gt;&lt;code&gt;z15&lt;/code&gt; / &lt;code&gt;LinuxONE III&lt;/code&gt; 以降では性能向上が期待できる&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;9-この内容を先に読むべき人&#34;&gt;9. この内容を先に読むべき人
&lt;/h2&gt;&lt;p&gt;次のようなケースでは、この文章のほうがデスクトップ概要より優先度が高いはずです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ubuntu 上で &lt;code&gt;CUDA&lt;/code&gt;、&lt;code&gt;ROCm&lt;/code&gt;、&lt;code&gt;SYCL&lt;/code&gt;、ローカル AI 推論を使う&lt;/li&gt;
&lt;li&gt;Intel、NVIDIA、AMD の GPU を使った開発や計算処理を行う&lt;/li&gt;
&lt;li&gt;Raspberry Pi、ARM64、RISC-V、IBM Z など、標準的な x86 以外のプラットフォームを運用している&lt;/li&gt;
&lt;li&gt;アップグレード後のリポジトリ可用性、ドライバ挙動、ランタイム、プラットフォーム要件に敏感である&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;10-ひと言でまとめると&#34;&gt;10. ひと言でまとめると
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;Ubuntu 26.04 LTS&lt;/code&gt; のハードウェアと AI スタック面での要点は、どこか 1 社の GPU だけが大きく強化されたことではありません。&lt;strong&gt;Intel の DPC++、NVIDIA の CUDA、AMD の ROCm が、より公式に、よりリポジトリ内で、より保守しやすい形で Ubuntu エコシステムへ入ってきたこと&lt;/strong&gt;です。&lt;/p&gt;
&lt;p&gt;これまで Ubuntu を「まず OS を入れて、その上に GPU 環境は自分で組むもの」と見ていたなら、&lt;code&gt;26.04&lt;/code&gt; は AI やヘテロジニアスコンピューティングのワークロードを、ディストリビューション側がより積極的に支える方向へ進み始めた版だと言えます。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Ollama が GPU を使わず CPU で動いてしまう問題の対処法</title>
        <link>https://knightli.com/ja/2026/04/24/fix-ollama-using-cpu-instead-of-gpu/</link>
        <pubDate>Fri, 24 Apr 2026 18:30:00 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/24/fix-ollama-using-cpu-instead-of-gpu/</guid>
        <description>&lt;p&gt;ローカルで大規模モデルを動かしているとき、かなり悩まされやすいのが「GPU があるのに &lt;code&gt;Ollama&lt;/code&gt; がほぼ &lt;code&gt;CPU&lt;/code&gt; しか使わず、速度も極端に遅い」という問題です。&lt;/p&gt;
&lt;p&gt;先に結論を言うと、この手の問題はたいてい単一の原因ではありません。よくある原因は次のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Ollama&lt;/code&gt; が利用可能な GPU を認識できていない&lt;/li&gt;
&lt;li&gt;ドライバ、&lt;code&gt;ROCm&lt;/code&gt;、&lt;code&gt;CUDA&lt;/code&gt; の環境構築が正しくない&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Ollama&lt;/code&gt; サービスが正しい環境変数を引き継がずに起動している&lt;/li&gt;
&lt;li&gt;モデルが大きすぎて &lt;code&gt;CPU&lt;/code&gt; もしくは &lt;code&gt;CPU/GPU&lt;/code&gt; の混在ロードに落ちている&lt;/li&gt;
&lt;li&gt;AMD 環境では、&lt;code&gt;ROCm&lt;/code&gt; のバージョン、&lt;code&gt;gfx&lt;/code&gt; 設定、デバイス可視性などの互換性問題が追加で発生している&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;以下、時間を無駄にしにくい順番で切り分けていきます。&lt;/p&gt;
&lt;h2 id=&#34;1-まず本当に-gpu-を使えていないのか確認する&#34;&gt;1. まず本当に GPU を使えていないのか確認する
&lt;/h2&gt;&lt;p&gt;一番わかりやすい確認方法はこれです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ollama ps
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;見るべきなのは &lt;code&gt;PROCESSOR&lt;/code&gt; 列です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;100% GPU&lt;/code&gt;: モデルは完全に GPU 上で動いている&lt;/li&gt;
&lt;li&gt;&lt;code&gt;100% CPU&lt;/code&gt;: GPU はまったく使えていない&lt;/li&gt;
&lt;li&gt;&lt;code&gt;48%/52% CPU/GPU&lt;/code&gt; のような表示: 一部は VRAM に載り、一部はシステムメモリに落ちている&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;100% CPU&lt;/code&gt; なら、次は環境とサービス設定を重点的に確認すべきです。&lt;br&gt;
混在ロードの場合は、GPU が壊れているとは限らず、単純に VRAM が足りないだけのことも多いです。&lt;/p&gt;
&lt;h2 id=&#34;2-まず一番多い思い込みを外す-モデルが-vram-に収まっていない&#34;&gt;2. まず一番多い思い込みを外す: モデルが VRAM に収まっていない
&lt;/h2&gt;&lt;p&gt;GPU を積んでいれば &lt;code&gt;Ollama&lt;/code&gt; は常にフル GPU 推論になる、と考えている人は多いですが、実際はそうではありません。&lt;/p&gt;
&lt;p&gt;モデルが大きすぎる、コンテキストが長すぎる、あるいは別のモデルがすでに VRAM を使っている場合、&lt;code&gt;Ollama&lt;/code&gt; は次のような状態に落ちることがあります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;一部 GPU + 一部 CPU&lt;/li&gt;
&lt;li&gt;&lt;code&gt;100% CPU&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この場合、まずは次の 2 つを試すのがいちばん早いです。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;より小さいモデルでテストする&lt;br&gt;
いきなり大きなモデルを試すのではなく、まずは &lt;code&gt;4B&lt;/code&gt; や &lt;code&gt;7B&lt;/code&gt; のような小さめのモデルで確認します。&lt;/li&gt;
&lt;li&gt;すでに読み込まれている他のモデルを外してから再確認する&lt;br&gt;
先に &lt;code&gt;ollama ps&lt;/code&gt; を見て、別のモデルが VRAM を占有していないか確認します。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;小さいモデルは GPU で動くのに、大きいモデルだけだめなら、原因はドライバではなく VRAM 容量であることがほとんどです。&lt;/p&gt;
&lt;h2 id=&#34;3-gpu-ドライバと下位ランタイムが正常か確認する&#34;&gt;3. GPU ドライバと下位ランタイムが正常か確認する
&lt;/h2&gt;&lt;p&gt;小さいモデルですら &lt;code&gt;CPU&lt;/code&gt; しか使わないなら、次は下位レイヤの確認です。&lt;/p&gt;
&lt;h3 id=&#34;nvidia-の場合&#34;&gt;NVIDIA の場合
&lt;/h3&gt;&lt;p&gt;まずはドライバが正常で、OS から GPU が見えているかを確認します。よく使う確認方法は次のとおりです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvidia-smi
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;ここでエラーになるなら、&lt;code&gt;Ollama&lt;/code&gt; が GPU を正常に使える可能性はかなり低いです。&lt;/p&gt;
&lt;h3 id=&#34;amd--rocm-の場合&#34;&gt;AMD / ROCm の場合
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;AMD GPU&lt;/code&gt;、特に &lt;code&gt;ROCm&lt;/code&gt; 環境なら、まず次を確認します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rocminfo
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rocm-smi
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;これらがデバイスを正常に列挙できないなら、問題はまだ &lt;code&gt;Ollama&lt;/code&gt; より下の層にあります。アプリ側をいじる前に、そこを直すべきです。&lt;/p&gt;
&lt;p&gt;AMD でよくあるのは、単純な「ドライバが入っているか」ではなく、次のような問題です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ROCm&lt;/code&gt; のバージョンと OS の組み合わせが合っていない&lt;/li&gt;
&lt;li&gt;対象 GPU アーキテクチャのサポートが不完全&lt;/li&gt;
&lt;li&gt;デバイス自体は存在するが、実行環境が &lt;code&gt;Ollama&lt;/code&gt; に正しく渡っていない&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;4-ターミナルではなく-ollama-サービス自体を再起動する&#34;&gt;4. ターミナルではなく Ollama サービス自体を再起動する
&lt;/h2&gt;&lt;p&gt;これはかなりよくある落とし穴です。&lt;/p&gt;
&lt;p&gt;ドライバを入れ直し、環境変数を変え、&lt;code&gt;ROCm&lt;/code&gt; を調整したあとで、単に新しいターミナルを開いて &lt;code&gt;ollama run&lt;/code&gt; を続けてしまうケースがあります。ですが &lt;code&gt;Ollama&lt;/code&gt; がバックグラウンドサービスとして動いているなら、古い環境のまま動作し続けている可能性があります。&lt;/p&gt;
&lt;p&gt;なので、より安全なのは次のやり方です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Ollama&lt;/code&gt; サービスを完全に再起動する&lt;/li&gt;
&lt;li&gt;必要なら OS ごと再起動する&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Linux でサービスとして動かしているなら、古いプロセスを再利用していないかも確認してください。&lt;/p&gt;
&lt;h2 id=&#34;5-環境変数が本当にサービスまで届いているか確認する&#34;&gt;5. 環境変数が本当にサービスまで届いているか確認する
&lt;/h2&gt;&lt;p&gt;これは特に &lt;code&gt;AMD ROCm&lt;/code&gt; 環境で重要です。&lt;/p&gt;
&lt;p&gt;シェル上で手動実行すると問題ないのに、&lt;code&gt;Ollama&lt;/code&gt; サービスにすると &lt;code&gt;CPU&lt;/code&gt; しか使わない、というケースがあります。多くの場合、原因はシェルで設定した変数がサービスプロセスに渡っていないことです。&lt;/p&gt;
&lt;p&gt;よく確認したい変数は次のあたりです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ROCR_VISIBLE_DEVICES
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;HSA_OVERRIDE_GFX_VERSION
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;それぞれの意味は次のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ROCR_VISIBLE_DEVICES&lt;/code&gt;: &lt;code&gt;ROCm&lt;/code&gt; から見える GPU を制限または指定する&lt;/li&gt;
&lt;li&gt;&lt;code&gt;HSA_OVERRIDE_GFX_VERSION&lt;/code&gt;: 一部 AMD 環境で互換性確保のために使うことがある&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;現在のターミナルで一時的に &lt;code&gt;export&lt;/code&gt; しただけでは、systemd、デスクトップのバックグラウンドサービス、その他のデーモン経由で起動された &lt;code&gt;Ollama&lt;/code&gt; には反映されないことがあります。&lt;/p&gt;
&lt;p&gt;つまり、ターミナルで「設定済みに見える」ことと、&lt;code&gt;Ollama&lt;/code&gt; が実際にその設定を使っていることは別です。&lt;/p&gt;
&lt;h2 id=&#34;6-amd-環境では-rocm-の互換性を重点的に見る&#34;&gt;6. AMD 環境では ROCm の互換性を重点的に見る
&lt;/h2&gt;&lt;p&gt;公開ページの情報を見る限り、この話題の元動画は &lt;code&gt;AMD Max+ 395&lt;/code&gt;、&lt;code&gt;strix halo&lt;/code&gt;、&lt;code&gt;AMD ROCm&lt;/code&gt; の文脈にあります。&lt;br&gt;
この種の環境では、&lt;code&gt;Ollama&lt;/code&gt; が GPU を使えない原因は、NVIDIA よりもバージョン整合性に左右されやすい傾向があります。&lt;/p&gt;
&lt;p&gt;優先的に見るべき点は次のとおりです。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;現在の OS と GPU に対して &lt;code&gt;ROCm&lt;/code&gt; のバージョンが適切か&lt;/li&gt;
&lt;li&gt;その GPU が &lt;code&gt;ROCm&lt;/code&gt; で比較的安定して動くアーキテクチャか&lt;/li&gt;
&lt;li&gt;&lt;code&gt;HSA_OVERRIDE_GFX_VERSION&lt;/code&gt; の指定が必要か&lt;/li&gt;
&lt;li&gt;古い &lt;code&gt;Ollama&lt;/code&gt; や古い推論ランタイムが互換性の問題を起こしていないか&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;code&gt;rocminfo&lt;/code&gt; は正常で GPU も OS から見えているのに、&lt;code&gt;Ollama&lt;/code&gt; だけが &lt;code&gt;CPU&lt;/code&gt; しか使わないなら、モデルパラメータをいじるより、まずバージョンの組み合わせを疑うべきです。&lt;/p&gt;
&lt;h2 id=&#34;7-dockerwslリモート環境ではデバイスマッピングも確認する&#34;&gt;7. Docker、WSL、リモート環境ではデバイスマッピングも確認する
&lt;/h2&gt;&lt;p&gt;もしベアメタルではなく、次のような環境で動かしているなら:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;WSL&lt;/li&gt;
&lt;li&gt;リモートコンテナ&lt;/li&gt;
&lt;li&gt;仮想化環境&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;もう一段下を見て、「GPU デバイスが本当にその環境に渡っているか」を確認する必要があります。&lt;/p&gt;
&lt;p&gt;典型的には次のような状態になります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ホスト側では GPU が見えている&lt;/li&gt;
&lt;li&gt;しかしコンテナやサブシステム内の &lt;code&gt;Ollama&lt;/code&gt; は &lt;code&gt;CPU&lt;/code&gt; しか使わない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この場合、問題は &lt;code&gt;Ollama&lt;/code&gt; 自体ではなく、コンテナやサブシステムに GPU アクセス権限が渡っていない可能性があります。&lt;/p&gt;
&lt;h2 id=&#34;8-最後にログを見るやみくもに再インストールしない&#34;&gt;8. 最後にログを見る。やみくもに再インストールしない
&lt;/h2&gt;&lt;p&gt;ここまで確認したなら、次に有効なのは何度も再インストールすることではなく、&lt;code&gt;Ollama&lt;/code&gt; の起動ログと実行ログを直接見ることです。&lt;/p&gt;
&lt;p&gt;見るべきポイントは大きく 2 つです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GPU を認識できているか&lt;/li&gt;
&lt;li&gt;ドライバ、ライブラリ読込、デバイス初期化失敗などのエラーが出ていないか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ログに「互換 GPU が見つからない」や「ROCm/CUDA の初期化に失敗した」といった内容が出ていれば、切り分けの方向はかなり明確になります。&lt;/p&gt;
&lt;h2 id=&#34;切り分け順序&#34;&gt;切り分け順序
&lt;/h2&gt;&lt;p&gt;最短ルートだけ覚えたいなら、次の順番で確認すると効率的です。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;ollama ps&lt;/code&gt; で &lt;code&gt;GPU&lt;/code&gt;、&lt;code&gt;CPU&lt;/code&gt;、混在ロードのどれかを確認する&lt;/li&gt;
&lt;li&gt;小さいモデルで試し、VRAM 不足を切り分ける&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nvidia-smi&lt;/code&gt;、&lt;code&gt;rocminfo&lt;/code&gt;、&lt;code&gt;rocm-smi&lt;/code&gt; で下位環境が正常か先に確認する&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Ollama&lt;/code&gt; サービスを完全に再起動する&lt;/li&gt;
&lt;li&gt;特に AMD では &lt;code&gt;ROCR_VISIBLE_DEVICES&lt;/code&gt; と &lt;code&gt;HSA_OVERRIDE_GFX_VERSION&lt;/code&gt; を確認する&lt;/li&gt;
&lt;li&gt;Docker / WSL ならデバイスマッピングを確認する&lt;/li&gt;
&lt;li&gt;最後にログを見て、具体的なエラーを特定する&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;まとめ&#34;&gt;まとめ
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;Ollama&lt;/code&gt; が &lt;code&gt;GPU&lt;/code&gt; ではなく &lt;code&gt;CPU&lt;/code&gt; を使ってしまう問題は、だいたい次の 3 パターンのどれかです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GPU がそもそも認識されていない&lt;/li&gt;
&lt;li&gt;GPU は見えているが、実行環境が &lt;code&gt;Ollama&lt;/code&gt; に届いていない&lt;/li&gt;
&lt;li&gt;GPU は動いているが、モデルが大きすぎて &lt;code&gt;CPU&lt;/code&gt; または混在メモリに落ちている&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この 3 つをまず分けて考えるだけで、切り分けはかなり速くなります。&lt;br&gt;
AMD 環境では特に、&lt;code&gt;ROCm&lt;/code&gt; のバージョン整合性、デバイス可視性、互換性用の環境変数を重視して確認するのがポイントです。&lt;/p&gt;
&lt;p&gt;元動画：&lt;a class=&#34;link&#34; href=&#34;https://www.bilibili.com/video/BV1cHoYBqE8k/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://www.bilibili.com/video/BV1cHoYBqE8k/&lt;/a&gt;&lt;/p&gt;
</description>
        </item>
        <item>
        <title>NVIDIA nvbandwidth とは何か：GPU 帯域テストツールの使い方</title>
        <link>https://knightli.com/ja/2026/04/24/nvidia-nvbandwidth-guide/</link>
        <pubDate>Fri, 24 Apr 2026 14:41:35 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/24/nvidia-nvbandwidth-guide/</guid>
        <description>&lt;p&gt;複数の &lt;code&gt;NVIDIA GPU&lt;/code&gt; 間の接続性能を調べているときや、&lt;code&gt;PCIe&lt;/code&gt;、&lt;code&gt;NVLink&lt;/code&gt;、ホストメモリと VRAM の間で実際にどれくらいの帯域が出ているか確認したいとき、&lt;code&gt;NVIDIA/nvbandwidth&lt;/code&gt; は知っておく価値のある小さなツールです。&lt;/p&gt;
&lt;p&gt;これは汎用的なベンチマークソフトではなく、大規模モデルのフレームワークに隠れているコマンドでもありません。NVIDIA がオープンソースで公開している、GPU 関連のメモリコピーにおける帯域とレイテンシを測定するための専用ツールです。理論帯域を見るだけではなく、&lt;code&gt;nvbandwidth&lt;/code&gt; は次のような実務的な問いに向いています。&lt;strong&gt;このマシンにある GPU と相互接続の組み合わせで、実際にどれだけの帯域が出るのか。&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id=&#34;1-nvbandwidth-は何をするツールか&#34;&gt;1. &lt;code&gt;nvbandwidth&lt;/code&gt; は何をするツールか
&lt;/h2&gt;&lt;p&gt;公式 README によると、&lt;code&gt;nvbandwidth&lt;/code&gt; は &lt;code&gt;NVIDIA GPU&lt;/code&gt; の帯域を測定するためのコマンドラインツールです。&lt;/p&gt;
&lt;p&gt;主に、さまざまな &lt;code&gt;memcpy&lt;/code&gt; パターンにおける転送性能を測ります。たとえば次のようなものです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;GPU -&amp;gt; GPU&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CPU -&amp;gt; GPU&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;GPU -&amp;gt; CPU&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;マルチノード環境での GPU 間転送&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この種のテストは、特に次のような場面で役立ちます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;マルチ GPU の学習や推論で相互接続のボトルネックを調べる&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NVLink&lt;/code&gt;、&lt;code&gt;PCIe&lt;/code&gt;、&lt;code&gt;C2C&lt;/code&gt; などのリンクが実際にどう動いているかを確認する&lt;/li&gt;
&lt;li&gt;サーバー構成、トポロジ、ドライバ、CUDA バージョンごとの差を比較する&lt;/li&gt;
&lt;li&gt;クラスタ導入前の基礎的なハードウェア検証を行う&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;要するに、&lt;code&gt;nvbandwidth&lt;/code&gt; が見ているのはモデルのスループットではなく、より下層の「データを運ぶ力」です。&lt;/p&gt;
&lt;h2 id=&#34;2-単なる-1-つのスコアを出すツールではない&#34;&gt;2. 単なる 1 つのスコアを出すツールではない
&lt;/h2&gt;&lt;p&gt;帯域テストというと最後に 1 つの数字だけが出るイメージを持つ人もいますが、&lt;code&gt;nvbandwidth&lt;/code&gt; の出力はもっと細かいです。&lt;/p&gt;
&lt;p&gt;各テストごとに行列形式で結果を出します。たとえば &lt;code&gt;device_to_device_memcpy_write_ce&lt;/code&gt; のようなテストでは、GPU の行列として各デバイス対の帯域が表示されます。これにより、「このマシンはだいたい速いかどうか」だけでなく、次のようなことも見えてきます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;どの GPU ペアが特に高速か&lt;/li&gt;
&lt;li&gt;どの経路が明らかに &lt;code&gt;PCIe&lt;/code&gt; に制限されているか&lt;/li&gt;
&lt;li&gt;一部の GPU ペアで異常に低い帯域が出ていないか&lt;/li&gt;
&lt;li&gt;マルチ GPU のトポロジが想定どおりか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;8 GPU サーバー、デュアルソケット構成、あるいはマルチノード環境を見ているなら、この行列形式の出力は単純な平均値より役に立つことが多いです。&lt;/p&gt;
&lt;h2 id=&#34;3-ce-と-sm-の-2-種類のコピーをどう理解するか&#34;&gt;3. &lt;code&gt;CE&lt;/code&gt; と &lt;code&gt;SM&lt;/code&gt; の 2 種類のコピーをどう理解するか
&lt;/h2&gt;&lt;p&gt;公式ドキュメントでは、テストを 2 種類に分けています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CE&lt;/code&gt;：&lt;code&gt;memcpy&lt;/code&gt; API に基づく copy engine 転送&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SM&lt;/code&gt;：kernel ベースの転送&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この 2 種類の結果は、必ずしも完全には一致しません。なぜなら、異なるコピー経路を表しているからです。&lt;br&gt;
まず通常のデバイス間転送を見たいなら、一般的には &lt;code&gt;CE&lt;/code&gt; を先に確認します。より細かい実行経路まで見たい場合は、続けて &lt;code&gt;SM&lt;/code&gt; を見るのがよいです。&lt;/p&gt;
&lt;p&gt;また README では、帯域の結果は既定で複数回の測定に対する中央値を使うと説明されています。新しいバージョンでは変動統計も追加されており、値の安定性を判断しやすくなっています。&lt;/p&gt;
&lt;h2 id=&#34;4-実行に必要な環境&#34;&gt;4. 実行に必要な環境
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;nvbandwidth&lt;/code&gt; は、ダウンロードしてそのまま実行できる単独バイナリではありません。標準的な CUDA 開発環境が前提です。&lt;/p&gt;
&lt;p&gt;現在の README にある基本要件は次のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CUDA Toolkit 11.x&lt;/code&gt; 以上&lt;/li&gt;
&lt;li&gt;&lt;code&gt;C++17&lt;/code&gt; をサポートするコンパイラ&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CMake 3.20+&lt;/code&gt;、推奨は &lt;code&gt;3.24+&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Boost program_options&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;利用可能な &lt;code&gt;CUDA&lt;/code&gt; デバイスと互換ドライバ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;マルチノード版を使う場合は要件がさらに上がります。README では次のように明記されています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;マルチノード版のビルドには &lt;code&gt;CUDA Toolkit 12.3&lt;/code&gt; が必要&lt;/li&gt;
&lt;li&gt;ドライバは &lt;code&gt;550&lt;/code&gt; 以上が必要&lt;/li&gt;
&lt;li&gt;&lt;code&gt;MPI&lt;/code&gt; が必要&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nvidia-imex&lt;/code&gt; サービスの設定が必要&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;そのため、これは一般的なデスクトップ向けというより、Linux の GPU サーバーやクラスタ向けのエンジニアリングツールと考えたほうが自然です。&lt;/p&gt;
&lt;h2 id=&#34;5-シングルノード版のビルドと実行方法&#34;&gt;5. シングルノード版のビルドと実行方法
&lt;/h2&gt;&lt;p&gt;シングルノード版のビルド手順はシンプルです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cmake .
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;make
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;Ubuntu&lt;/code&gt; / &lt;code&gt;Debian&lt;/code&gt; では、共通依存関係のインストールとビルドを行う &lt;code&gt;debian_install.sh&lt;/code&gt; スクリプトも用意されています。&lt;/p&gt;
&lt;p&gt;ビルド後は、まずヘルプを確認できます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./nvbandwidth -h
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;よく使うオプションは次のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-l&lt;/code&gt;：利用可能なテストを一覧表示する&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-t&lt;/code&gt;：名前または番号で特定のテストを実行する&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-p&lt;/code&gt;：プレフィックス指定でテストをまとめて実行する&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-b&lt;/code&gt;：memcpy buffer サイズを設定する。既定値は &lt;code&gt;512 MiB&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-i&lt;/code&gt;：測定反復回数を設定する&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-j&lt;/code&gt;：&lt;code&gt;JSON&lt;/code&gt; で出力する&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-H&lt;/code&gt;：ホストメモリ割り当てで huge pages を有効にする&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;まずは既定のテストを 1 回流したいだけなら、次のように実行します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./nvbandwidth
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;特定の項目だけ試したい場合、たとえばデバイス間コピーを 1 つだけ見るなら次のようにします。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./nvbandwidth -t device_to_device_memcpy_read_ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;6-マルチノード対応がこのツールの特徴&#34;&gt;6. マルチノード対応がこのツールの特徴
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;nvbandwidth&lt;/code&gt; はシングルノードのマルチ GPU テストだけのツールではなく、マルチノード環境にも対応しています。&lt;/p&gt;
&lt;p&gt;README によると、マルチノード版のビルドは次のように行います。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cmake -DMULTINODE&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; .
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;make
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;実行時は通常 &lt;code&gt;mpirun&lt;/code&gt; と組み合わせ、GPU ごとに 1 プロセスを割り当てて起動します。&lt;br&gt;
公式ドキュメントでは、参加するすべての rank が同じ multinode clique に属している必要があるとされており、MPI 環境では主に &lt;code&gt;multinode&lt;/code&gt; プレフィックスの付いたテストを実行することが推奨されています。&lt;/p&gt;
&lt;p&gt;このあたりからも、ワークステーションの簡単な自己診断用というより、高性能計算や大規模 GPU システム寄りのツールであることが分かります。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;NVLink&lt;/code&gt; を使うマルチノード構成や、&lt;code&gt;GB200&lt;/code&gt; / &lt;code&gt;Grace Hopper&lt;/code&gt; のような複雑なプラットフォームを扱っているなら、一般的なコンシューマ GPU 環境よりも &lt;code&gt;nvbandwidth&lt;/code&gt; の価値はずっと高くなります。&lt;/p&gt;
&lt;h2 id=&#34;7-v09-では何が変わったか&#34;&gt;7. &lt;code&gt;v0.9&lt;/code&gt; では何が変わったか
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;2026 年 4 月 24 日&lt;/strong&gt; 時点で、GitHub Releases ページでは &lt;code&gt;nvbandwidth&lt;/code&gt; の最新バージョンは &lt;strong&gt;&lt;code&gt;v0.9&lt;/code&gt;&lt;/strong&gt;、公開日は &lt;strong&gt;2026 年 4 月 8 日&lt;/strong&gt; となっています。&lt;/p&gt;
&lt;p&gt;このリリースで特に注目しやすい更新点は次のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;帯域出力に変動統計を追加&lt;/li&gt;
&lt;li&gt;ホストメモリ向け huge pages 対応を追加（&lt;code&gt;Windows&lt;/code&gt; は対象外）&lt;/li&gt;
&lt;li&gt;デバイス間テストに pair sampling オプションを追加&lt;/li&gt;
&lt;li&gt;troubleshooting guide を追加&lt;/li&gt;
&lt;li&gt;シングルノードとマルチノードの実行経路を統一&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;加えて、エンジニアリング面で次の 2 点も実用的です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;実際の GPU アクセスにあまり依存しない CUDA アーキテクチャ検出に改善&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CUDA Toolkit 13.0+&lt;/code&gt; 環境で &lt;code&gt;Volta&lt;/code&gt;（&lt;code&gt;sm_70&lt;/code&gt; / &lt;code&gt;sm_72&lt;/code&gt;）サポートを廃止&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;初期の情報しか見ていなかった人にとっては、&lt;code&gt;v0.9&lt;/code&gt; はもはや単なる帯域測定の初期版ではありません。自動化、トラブルシュート、大規模システム検証へと明確に進んでいます。&lt;/p&gt;
&lt;h2 id=&#34;8-どんなときに使うとよいか&#34;&gt;8. どんなときに使うとよいか
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;nvbandwidth&lt;/code&gt; が特に向いているのは次のようなケースです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;複数の &lt;code&gt;NVIDIA GPU&lt;/code&gt; 間で実際の相互接続帯域を確認したい&lt;/li&gt;
&lt;li&gt;ある GPU が帯域制限のある &lt;code&gt;PCIe&lt;/code&gt; スロットに挿さっている疑いがある&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NVLink&lt;/code&gt; 経路と非 &lt;code&gt;NVLink&lt;/code&gt; 経路を比較したい&lt;/li&gt;
&lt;li&gt;マルチノード GPU クラスタを構築していて、リンクを検証したい&lt;/li&gt;
&lt;li&gt;結果を &lt;code&gt;JSON&lt;/code&gt; で出して自動化パイプラインに組み込みたい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;一方で、「学習はどれくらい速いか」「推論は何 tokens/s 出るか」といった問いにそのまま答えるツールではありません。&lt;br&gt;
その場合は、学習フレームワーク、推論エンジン、あるいは実際のワークロードでの測定と合わせて見る必要があります。&lt;/p&gt;
&lt;h2 id=&#34;9-このツールの価値をどう捉えるか&#34;&gt;9. このツールの価値をどう捉えるか
&lt;/h2&gt;&lt;p&gt;GPU の性能問題の多くは、実は計算性能そのものが足りないのではなく、データの通り道が想定どおりに機能していないことが原因です。&lt;/p&gt;
&lt;p&gt;たとえば次のようなケースです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GPU 間で意図した接続経路が使われていない&lt;/li&gt;
&lt;li&gt;NUMA をまたぐアクセスで速度が落ちている&lt;/li&gt;
&lt;li&gt;一部の GPU ペアだけ帯域が異常に低い&lt;/li&gt;
&lt;li&gt;マルチノード通信の設定が不完全&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;こうした問題は、&lt;code&gt;nvidia-smi&lt;/code&gt; やモデルのスループットだけを見ていても特定しにくいことがあります。&lt;br&gt;
&lt;code&gt;nvbandwidth&lt;/code&gt; のような、より低レイヤで行列形式のテストツールは、相互接続レイヤで何が起きているかを可視化できる点が強みです。&lt;/p&gt;
&lt;p&gt;つまり、&lt;strong&gt;&lt;code&gt;nvbandwidth&lt;/code&gt; は NVIDIA GPU システム向けの帯域ヘルスチェック用コマンドラインツール&lt;/strong&gt;として理解すると分かりやすいです。&lt;/p&gt;
&lt;h2 id=&#34;関連リンク&#34;&gt;関連リンク
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;GitHub プロジェクト: &lt;a class=&#34;link&#34; href=&#34;https://github.com/NVIDIA/nvbandwidth&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/NVIDIA/nvbandwidth&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Releases: &lt;a class=&#34;link&#34; href=&#34;https://github.com/NVIDIA/nvbandwidth/releases&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/NVIDIA/nvbandwidth/releases&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        <item>
        <title>Tesla V100 に ECC エラーがあるか確認する方法</title>
        <link>https://knightli.com/ja/2026/04/23/check-tesla-v100-ecc-errors/</link>
        <pubDate>Thu, 23 Apr 2026 11:50:21 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/23/check-tesla-v100-ecc-errors/</guid>
        <description>&lt;p&gt;手元に &lt;code&gt;Tesla V100&lt;/code&gt; があり、まず基本的なヘルスチェックをしたいなら、優先して確認したい項目のひとつが &lt;code&gt;ECC&lt;/code&gt; の状態です。&lt;/p&gt;
&lt;p&gt;最も手軽な方法は、&lt;code&gt;nvidia-smi&lt;/code&gt; でカードの詳細情報を確認することです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvidia-smi -q
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 查询第 0 块 GPU&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvidia-smi -q -i &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;見るべきなのは &lt;code&gt;ECC Errors&lt;/code&gt; のセクションです。&lt;/p&gt;
&lt;p&gt;正常な状態のカードであれば、&lt;code&gt;ECC Errors&lt;/code&gt; の下にある代表的な 4 つの統計グループは、いずれも &lt;code&gt;0&lt;/code&gt; または &lt;code&gt;N/A&lt;/code&gt; であるはずです。ここにすでに非ゼロの値がある場合、そのカードは過去に対応する種類の ECC 異常を起こしたことがあるため、引き続き使用してよいか追加で判断する必要があります。&lt;/p&gt;
&lt;p&gt;参考出力は次のとおりです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;19
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;20
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;21
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;22
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;23
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;24
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;25
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;26
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;27
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;28
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;29
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;30
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;31
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;32
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;33
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;34
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;35
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;36
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;37
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;38
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;39
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;40
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;41
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;42
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;43
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;44
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvidia-smi -q
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    ECC Mode
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        Current                          : Enabled
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        Pending                          : Enabled
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    ECC Errors
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        Volatile
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            Single Bit
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Device Memory            : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Register File            : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                L1 Cache                 : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                L2 Cache                 : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Texture Memory           : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Texture Shared           : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                CBU                      : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Total                    : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            Double Bit
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Device Memory            : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Register File            : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                L1 Cache                 : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                L2 Cache                 : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Texture Memory           : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Texture Shared           : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                CBU                      : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Total                    : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        Aggregate
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            Single Bit
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Device Memory            : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Register File            : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                L1 Cache                 : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                L2 Cache                 : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Texture Memory           : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Texture Shared           : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                CBU                      : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Total                    : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            Double Bit
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Device Memory            : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Register File            : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                L1 Cache                 : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                L2 Cache                 : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Texture Memory           : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Texture Shared           : N/A
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                CBU                      : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                Total                    : 0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Retired Pages
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;簡単に整理すると、次のように理解できます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Volatile&lt;/code&gt; は今回の通電サイクル内でのエラー統計&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Aggregate&lt;/code&gt; は累積エラー統計&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Single Bit&lt;/code&gt; は訂正可能エラー&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Double Bit&lt;/code&gt; は訂正不能エラーで、よりリスクが高い&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;素早くふるい分けしたいだけなら、まずは次の基準を覚えておけば十分です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ほとんどの項目は &lt;code&gt;0&lt;/code&gt; であるべき&lt;/li&gt;
&lt;li&gt;該当しない項目が &lt;code&gt;N/A&lt;/code&gt; なのは正常&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Double Bit&lt;/code&gt; や合計値が &lt;code&gt;0&lt;/code&gt; でない場合は、売り手の説明だけを鵜呑みにせず、より十分なストレステストと安定性確認を続けるべき&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この確認だけで完全な検品にはなりませんが、&lt;code&gt;V100&lt;/code&gt; を入手した直後の第一段階のチェックとしては十分に実用的です。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Tesla V100 はまだ買う価値があるか：ECC確認、冷却改造、DIYの落とし穴</title>
        <link>https://knightli.com/ja/2026/04/23/tesla-v100-buying-ecc-cooling-diy-guide/</link>
        <pubDate>Thu, 23 Apr 2026 11:15:10 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/23/tesla-v100-buying-ecc-cooling-diy-guide/</guid>
        <description>&lt;p&gt;最近、中古の &lt;code&gt;Tesla V100&lt;/code&gt; を見ていると、だいたい次の2つの意見にぶつかります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;まだ十分戦えるし、コストパフォーマンスが高い&lt;/li&gt;
&lt;li&gt;この手のカードは闇が深く、DIY ユーザーは簡単に失敗する&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;どちらも間違っていません。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;V100&lt;/code&gt; は買ってはいけないカードなのではなく、普通の民生向け GPU と同じ感覚で買ってはいけないカードです。見るべきなのは、起動するかどうかだけでも、「新品同様」「純正サーバー抜き取り」といった売り文句だけでもありません。このカードに手が入っていないか、&lt;code&gt;ECC&lt;/code&gt; の状態はどうか、冷却と電源構成が本当に信頼できるかが重要です。&lt;/p&gt;
&lt;p&gt;この記事では、実際の購入と運用で役立つチェックポイントをまとめます。&lt;/p&gt;
&lt;h2 id=&#34;まず結論&#34;&gt;まず結論
&lt;/h2&gt;&lt;p&gt;短く要点だけ見るなら、次を覚えておけば十分です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;V100&lt;/code&gt; はおおむね &lt;code&gt;2017&lt;/code&gt; 年から &lt;code&gt;2021&lt;/code&gt; 年まで生産され、&lt;code&gt;16G&lt;/code&gt; 版で &lt;code&gt;2021&lt;/code&gt; 年製はあまり多くありません&lt;/li&gt;
&lt;li&gt;「ECC が全部ゼロ」「純正抜き取り」だけでは判断材料として足りません。数値も外観も手を入れられている可能性があります&lt;/li&gt;
&lt;li&gt;本当に危ないのは、古いカードを買うこと自体より、分解済み・書き換え済み・冷却に欠陥があるカードを買うことです&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DIY&lt;/code&gt; ユーザーにとって最大の落とし穴は、コアそのものより、変換基板、電源供給、ホットスポット温度、バックプレート冷却です&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;1-まず製造年とロット感を見る&#34;&gt;1. まず製造年とロット感を見る
&lt;/h2&gt;&lt;p&gt;実用的な見方は、チップ本体の年式を見て、その周辺部品の年式がだいたい一致しているかを確認することです。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/23/tesla-v100-buying-ecc-cooling-diy-guide/1.png&#34;
	width=&#34;1139&#34;
	height=&#34;670&#34;
	srcset=&#34;https://knightli.com/2026/04/23/tesla-v100-buying-ecc-cooling-diy-guide/1_hu_a8325dae98af3ae7.png 480w, https://knightli.com/2026/04/23/tesla-v100-buying-ecc-cooling-diy-guide/1_hu_40537b27bd676168.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;Tesla V100&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;170&#34;
		data-flex-basis=&#34;408px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;たとえばチップ表面に &lt;code&gt;1828&lt;/code&gt; とあれば、通常は次のように読めます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;18&lt;/code&gt; = &lt;code&gt;2018&lt;/code&gt; 年&lt;/li&gt;
&lt;li&gt;&lt;code&gt;28&lt;/code&gt; = 第 &lt;code&gt;28&lt;/code&gt; 週&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;つまり &lt;code&gt;2018&lt;/code&gt; 年第 &lt;code&gt;28&lt;/code&gt; 週製造のチップです。&lt;/p&gt;
&lt;p&gt;チップ本体だけでなく、周辺のインダクタにも年式に関係する刻印があることがあります。もしチップ年式とインダクタ年式が大きくずれていて、たとえば：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;チップは &lt;code&gt;2017&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;インダクタは &lt;code&gt;2020&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;となっているなら、注意したほうがよいです。即座に不良と断定はできませんが、少なくとも非常にオリジナルに近い状態とは言いにくくなります。&lt;/p&gt;
&lt;p&gt;逆に、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;2018&lt;/code&gt; のチップに &lt;code&gt;2018&lt;/code&gt; 年ごろの周辺部品&lt;/li&gt;
&lt;li&gt;&lt;code&gt;2019&lt;/code&gt; 年末のチップに &lt;code&gt;2020&lt;/code&gt; 年ごろの周辺部品&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;のように大筋で辻褄が合っているなら、より自然です。&lt;/p&gt;
&lt;h2 id=&#34;2-外観確認ではチップだけでなくインダクタスプリングフレームも見る&#34;&gt;2. 外観確認ではチップだけでなく、インダクタ、スプリング、フレームも見る
&lt;/h2&gt;&lt;p&gt;外観確認は、いくつかの段階に分けて見るのがわかりやすいです。&lt;/p&gt;
&lt;h3 id=&#34;1-まずインダクタを触る&#34;&gt;1. まずインダクタを触る
&lt;/h3&gt;&lt;p&gt;インダクタを軽く触ってみて、通常はどれもグラつかないはずです。&lt;/p&gt;
&lt;p&gt;もしどれかがすでに動くなら、たいていは：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;はんだの状態が良くない&lt;/li&gt;
&lt;li&gt;使用を続けると問題が広がる可能性がある&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ということです。今は動いていても、積極的には勧めにくい状態です。&lt;/p&gt;
&lt;h3 id=&#34;2-固定スプリングが外された形跡を確認する&#34;&gt;2. 固定スプリングが外された形跡を確認する
&lt;/h3&gt;&lt;p&gt;ここでも実用的な判断があります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;売り手が「純正サーバー抜き取り」と強く主張するなら&lt;/li&gt;
&lt;li&gt;固定スプリングは簡単に外された形跡がないほうが自然です&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;通常のサーバー運用で、このスプリングだけをわざわざ外すことはあまりありません。&lt;/p&gt;
&lt;p&gt;もし軽くこじるだけで簡単に外れるなら、一度は分解されている可能性が高いです。それでいて「未分解」と言っているなら、かなり怪しいと考えるべきです。&lt;/p&gt;
&lt;h3 id=&#34;3-フレームが簡単に分かれるのも不自然&#34;&gt;3. フレームが簡単に分かれるのも不自然
&lt;/h3&gt;&lt;p&gt;中央フレームを外したあと、構造がほとんど力を入れずに分離するなら、それも何度も分解された痕跡であることが多いです。&lt;/p&gt;
&lt;p&gt;中古 &lt;code&gt;V100&lt;/code&gt; ではこの点が重要です。後からの書き換え、改造、修理は、こうした分解痕を残しやすいからです。&lt;/p&gt;
&lt;h2 id=&#34;3-バックプレートが簡単に外れるならvbios-書き換えや改造を疑う&#34;&gt;3. バックプレートが簡単に外れるなら、VBIOS 書き換えや改造を疑う
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;PCB&lt;/code&gt; の下には金属製のプレートがあり、これは保護だけでなく放熱にも関わっています。&lt;/p&gt;
&lt;p&gt;オリジナルに近い状態では、このプレートは普通あまり簡単には外れません。理由は次の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;接着材&lt;/li&gt;
&lt;li&gt;構造的な密着&lt;/li&gt;
&lt;li&gt;そもそも何度も分解する前提の設計ではない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;もし少し力を入れるだけでバックプレートが &lt;code&gt;PCB&lt;/code&gt; から外れるなら、次のような可能性を疑うべきです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;過去に分解された&lt;/li&gt;
&lt;li&gt;&lt;code&gt;VBIOS&lt;/code&gt; が書き換えられた可能性がある&lt;/li&gt;
&lt;li&gt;二次的な改造が行われた可能性がある&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;それだけで使えないとは言えませんが、「完全オリジナル」とは明らかに整合しません。&lt;/p&gt;
&lt;h2 id=&#34;4-ecc-の見方重要なのはゼロかどうかではなく増えるかどうか&#34;&gt;4. &lt;code&gt;ECC&lt;/code&gt; の見方：重要なのはゼロかどうかではなく、増えるかどうか
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;V100&lt;/code&gt; を買うとき、多くの人が &lt;code&gt;ECC&lt;/code&gt; を気にします。この項目は丁寧に見る価値があります。&lt;/p&gt;
&lt;p&gt;よく使われる方法は、&lt;code&gt;nvidia-smi&lt;/code&gt; の詳細表示で &lt;code&gt;ECC Errors&lt;/code&gt; を確認することです。&lt;/p&gt;
&lt;h3 id=&#34;1-リアルタイムのエラーが最も危ない&#34;&gt;1. リアルタイムのエラーが最も危ない
&lt;/h3&gt;&lt;p&gt;上のほうの項目は、実運用中のリアルタイムエラーとして捉えられます。&lt;/p&gt;
&lt;p&gt;もし稼働中にその数字が増え続けるなら、小さな問題ではないことが多く、すでに不安定なカードである可能性が高いです。&lt;/p&gt;
&lt;p&gt;要するに：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;静的にゼロであることより、実際に走らせても増えないことのほうが重要&lt;/li&gt;
&lt;li&gt;負荷をかけるとすぐ増えるカードは、履歴だけ多いカードより怖い&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;2-生涯累積エラーは必ずしも致命的ではない&#34;&gt;2. 生涯累積エラーは必ずしも致命的ではない
&lt;/h3&gt;&lt;p&gt;別の項目には、そのカードがこれまでに経験した累積エラー数が出ることがあります。&lt;/p&gt;
&lt;p&gt;それが：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;一桁&lt;/li&gt;
&lt;li&gt;あるいは十数件程度&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;であれば、即アウトとは限りません。&lt;/p&gt;
&lt;p&gt;実際の動作中にリアルタイムエラーが増えないなら、普通に使えることもあります。&lt;/p&gt;
&lt;h3 id=&#34;3-ページリタイアはより重視したい&#34;&gt;3. ページリタイアはより重視したい
&lt;/h3&gt;&lt;p&gt;さらに重要なのが、修復不能エラーによってメモリブロックが退役したことを示すページリタイア系の項目です。&lt;/p&gt;
&lt;p&gt;実用的には次のように考えられます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;シングルビット側、ダブルビット側それぞれに退役ブロックがあり得る&lt;/li&gt;
&lt;li&gt;合計が &lt;code&gt;10&lt;/code&gt; を超えてくると、かなり慎重に見たほうがよい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;完全に使えないわけではありませんが、実効メモリ量や長期安定性には明らかに影響します。&lt;/p&gt;
&lt;h2 id=&#34;5-ecc-ゼロを信じすぎない数値自体が触られている可能性もある&#34;&gt;5. 「ECC ゼロ」を信じすぎない。数値自体が触られている可能性もある
&lt;/h2&gt;&lt;p&gt;ここで現実的に意識したいのは、&lt;code&gt;ECC&lt;/code&gt; の数値それ自体も絶対的ではないということです。&lt;/p&gt;
&lt;p&gt;もしカードが：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;異様にきれいな数値を示している&lt;/li&gt;
&lt;li&gt;それなのに分解痕は強い&lt;/li&gt;
&lt;li&gt;構造的にも明らかに手が入っている&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;なら、「ECC がゼロだから安心」とは言えません。&lt;/p&gt;
&lt;p&gt;たとえるなら、何年も経った中古車なのに、走行距離が突然 &lt;code&gt;0&lt;/code&gt; で、タイヤ摩耗もほとんどないようなものです。走行計に手が入っていないか疑うのが自然です。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;V100&lt;/code&gt; でも同じで：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;完璧すぎる数値は、必ずしも良い兆候ではない&lt;/li&gt;
&lt;li&gt;数値、外観、ストレステスト結果が互いに噛み合っているかのほうが大事&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;6-ストレステストは必須ただしコアだけ見ても足りない&#34;&gt;6. ストレステストは必須。ただしコアだけ見ても足りない
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;gpu-burn&lt;/code&gt; のようなツールで数分から十数分以上負荷をかけ、次の点を確認するとよいです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;安定しているか&lt;/li&gt;
&lt;li&gt;カードが落ちないか&lt;/li&gt;
&lt;li&gt;新しい &lt;code&gt;ECC&lt;/code&gt; エラーが出ないか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ただし、ここでも重要な注意点があります。&lt;/p&gt;
&lt;p&gt;コアだけテストしても、カード全体が健全だとは言えません。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;V100&lt;/code&gt; の故障は、必ずしもコアから始まるわけではなく、次のような場所から壊れることも多いからです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;電源回路の過熱&lt;/li&gt;
&lt;li&gt;バックプレート周辺の冷却不足&lt;/li&gt;
&lt;li&gt;ホットスポット温度の上昇&lt;/li&gt;
&lt;li&gt;変換基板や冷却構成が長期間ギリギリの状態にあること&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;つまり、ストレステストでわかるのは「今は動く」ということまでで、「この DIY 構成で長く安定運用できる」ことまでは保証してくれません。&lt;/p&gt;
&lt;h2 id=&#34;7-diy-ユーザーが本当に失敗しやすいのは購入より冷却と電源&#34;&gt;7. DIY ユーザーが本当に失敗しやすいのは、購入より冷却と電源
&lt;/h2&gt;&lt;p&gt;ここがいちばん重要なポイントかもしれません。&lt;/p&gt;
&lt;p&gt;結論から言えば、&lt;code&gt;DIY&lt;/code&gt; ユーザーが適当な変換ベースと汎用クーラーを組み合わせるだけでは、安定した構成になりにくいです。&lt;/p&gt;
&lt;p&gt;なぜなら &lt;code&gt;V100&lt;/code&gt; は普通の民生 GPU ではなく、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;消費電力が高く&lt;/li&gt;
&lt;li&gt;発熱が大きく&lt;/li&gt;
&lt;li&gt;熱分布が複雑な&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;サーバー向けアクセラレータだからです。&lt;/p&gt;
&lt;p&gt;発熱源はチップ中央だけではありません。バックプレート、電源回路、コネクタ周辺もかなり熱くなります。&lt;/p&gt;
&lt;h3 id=&#34;1-gpu-の平均温度だけを見ない&#34;&gt;1. GPU の平均温度だけを見ない
&lt;/h3&gt;&lt;p&gt;多くの監視ツールが表示するのはカード全体の平均温度ですが、本当に危険なのは &lt;code&gt;hot spot&lt;/code&gt; のほうであることが多いです。&lt;/p&gt;
&lt;p&gt;つまり：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;表示温度は 60 度台でも&lt;/li&gt;
&lt;li&gt;局所的なホットスポットは 100 度超えになっているかもしれない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;それが、見た目には「温度は大丈夫そう」な DIY &lt;code&gt;V100&lt;/code&gt; が、後から突然壊れる理由のひとつです。&lt;/p&gt;
&lt;h3 id=&#34;2-バックプレートと電源まわりの冷却は必須&#34;&gt;2. バックプレートと電源まわりの冷却は必須
&lt;/h3&gt;&lt;p&gt;バックプレートと電源まわりを冷却しない構成は危険です。&lt;/p&gt;
&lt;p&gt;コアだけを冷やしても、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;MOS&lt;/code&gt; 周辺を見ていない&lt;/li&gt;
&lt;li&gt;バックプレートに熱を逃がせていない&lt;/li&gt;
&lt;li&gt;背面側に十分な放熱設計がない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;のであれば、構成全体としては不完全です。&lt;/p&gt;
&lt;h3 id=&#34;3-安い寄せ集め水冷構成はリスクが高い&#34;&gt;3. 安い寄せ集め水冷構成はリスクが高い
&lt;/h3&gt;&lt;p&gt;「適当な変換基板に、安い一体型水冷をのせる」ような構成には慎重になるべきです。&lt;/p&gt;
&lt;p&gt;問題は、すぐ壊れると決まっていることではなく、次のような欠点を抱えがちなことです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;水路のカバー範囲が不均一&lt;/li&gt;
&lt;li&gt;電源部の冷却が足りない&lt;/li&gt;
&lt;li&gt;ホットスポットを本当に押さえられていない&lt;/li&gt;
&lt;li&gt;長期寿命が読みにくい&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;8-それでも-diy-するなら最低限ここは見る&#34;&gt;8. それでも DIY するなら、最低限ここは見る
&lt;/h2&gt;&lt;p&gt;実用的なポイントは次の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;より成熟していて実績のある変換基板を優先する&lt;/li&gt;
&lt;li&gt;コアだけでなく、背面の電源部とバックプレートにも熱対策をする&lt;/li&gt;
&lt;li&gt;水枕は「物理的に載る」だけでなく、面全体をきちんとカバーできるものを選ぶ&lt;/li&gt;
&lt;li&gt;ストレステスト後も温度、ホットスポット、長期安定性を継続して確認する&lt;/li&gt;
&lt;li&gt;電源の質もコイル鳴きや安定性に影響する&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;要するに、DIY &lt;code&gt;V100&lt;/code&gt; の難しさは「起動するか」ではなく、「その後ちゃんと生き残るか」にあります。&lt;/p&gt;
&lt;h2 id=&#34;9-コイル鳴きと変換基板の個体差も現実的な問題&#34;&gt;9. コイル鳴きと変換基板の個体差も現実的な問題
&lt;/h2&gt;&lt;p&gt;最後に、見落とされやすい点が2つあります。&lt;/p&gt;
&lt;h3 id=&#34;1-コイル鳴きは完全には消せないことがある&#34;&gt;1. コイル鳴きは完全には消せないことがある
&lt;/h3&gt;&lt;p&gt;カードの個体差、インダクタ、コンデンサ、電源環境が絡むため、ケーブルや小物ひとつで必ず解決できるとは限りません。&lt;/p&gt;
&lt;h3 id=&#34;2-変換基板の個体差はかなり大きい&#34;&gt;2. 変換基板の個体差はかなり大きい
&lt;/h3&gt;&lt;p&gt;そのため、裸カードを売るタイプの売り手でも：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;先に動作確認する&lt;/li&gt;
&lt;li&gt;シリアル番号を記録する&lt;/li&gt;
&lt;li&gt;ストレステストを行う&lt;/li&gt;
&lt;li&gt;手順を記録する&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;といった対応を重視することがあります。&lt;/p&gt;
&lt;p&gt;トラブルの原因はシリコン本体より、後から組み合わせた変換基板や冷却構成にあることも多いからです。&lt;/p&gt;
&lt;h2 id=&#34;まとめ&#34;&gt;まとめ
&lt;/h2&gt;&lt;p&gt;では &lt;code&gt;Tesla V100&lt;/code&gt; はまだ買う価値があるのか。答えは、ある。ただし、自分が何を買っていて、その後どう使うのかを理解している場合に限ります。&lt;/p&gt;
&lt;p&gt;見るべきなのは、単に：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;起動するか&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ECC&lt;/code&gt; がゼロか&lt;/li&gt;
&lt;li&gt;売り手が「純正抜き取り」と言っているか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;だけではありません。&lt;/p&gt;
&lt;p&gt;本当に確認したいのは：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;年式とロット感が合っているか&lt;/li&gt;
&lt;li&gt;分解痕が不自然でないか&lt;/li&gt;
&lt;li&gt;バックプレートや構造に明らかな改造痕がないか&lt;/li&gt;
&lt;li&gt;負荷時にエラーが増えないか&lt;/li&gt;
&lt;li&gt;冷却と電源構成に無理がないか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;特に &lt;code&gt;DIY&lt;/code&gt; ユーザーにとって危険なのは、「古いカードを買うこと」より、「このカードが要求する冷却・電源・改造品質を甘く見ること」です。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>llama.cpp / ollama GPU 性能ランキング：CUDA、ROCm、Vulkan</title>
        <link>https://knightli.com/ja/2026/04/23/llama-cpp-gpu-benchmark-cuda-rocm-vulkan-scoreboard/</link>
        <pubDate>Thu, 23 Apr 2026 10:22:04 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/23/llama-cpp-gpu-benchmark-cuda-rocm-vulkan-scoreboard/</guid>
        <description>&lt;h2 id=&#34;まずパラメータを理解する&#34;&gt;まずパラメータを理解する
&lt;/h2&gt;&lt;h3 id=&#34;q4_0-とは&#34;&gt;&lt;code&gt;Q4_0&lt;/code&gt; とは
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;Q4_0&lt;/code&gt; は 4-bit 量子化フォーマットの一種です。これは「モデルがより強い」という意味ではなく、「モデルが小さく、VRAM を節約でき、より多くのデバイスに載せやすい」という意味です。これらのランキングでは多くの場合 &lt;code&gt;Llama 2 7B, Q4_0&lt;/code&gt; に条件をそろえ、変数を減らして GPU 同士を横比較しやすくしています。&lt;/p&gt;
&lt;h3 id=&#34;pp512-とは&#34;&gt;&lt;code&gt;pp512&lt;/code&gt; とは
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;pp512&lt;/code&gt; は一般に &lt;code&gt;prompt processing 512 tokens&lt;/code&gt;、つまり 512 個の入力 token を処理するときのスループットとして理解できます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pp&lt;/code&gt; = prompt processing&lt;/li&gt;
&lt;li&gt;&lt;code&gt;512&lt;/code&gt; = 入力長が 512 token&lt;/li&gt;
&lt;li&gt;&lt;code&gt;t/s&lt;/code&gt; = tokens per second&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;これは「プロンプトを読み込む速度」に近く、並列化が効きやすいため数値が大きくなりがちです。&lt;/p&gt;
&lt;h3 id=&#34;tg128-とは&#34;&gt;&lt;code&gt;tg128&lt;/code&gt; とは
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;tg128&lt;/code&gt; は一般に &lt;code&gt;text generation 128 tokens&lt;/code&gt;、つまり 128 個の token を連続生成するときの速度として理解できます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;tg&lt;/code&gt; = text generation&lt;/li&gt;
&lt;li&gt;&lt;code&gt;128&lt;/code&gt; = 128 token を連続生成&lt;/li&gt;
&lt;li&gt;&lt;code&gt;t/s&lt;/code&gt; = tokens per second&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;こちらは普段感じる「モデルの返答が速いか」により近い指標です。生成段階は token を逐次的に進めるため、通常は &lt;code&gt;pp512&lt;/code&gt; よりかなり低くなります。&lt;/p&gt;
&lt;h3 id=&#34;fa-とは&#34;&gt;&lt;code&gt;FA&lt;/code&gt; とは
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;FA&lt;/code&gt; は &lt;code&gt;Flash Attention&lt;/code&gt; です。簡単に言えば、attention 計算を最適化するためのスイッチです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;with FA&lt;/code&gt; は Flash Attention を有効化した状態&lt;/li&gt;
&lt;li&gt;&lt;code&gt;no FA&lt;/code&gt; は Flash Attention を無効化した状態&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;多くの GPU では、&lt;code&gt;FA&lt;/code&gt; は &lt;code&gt;tg128&lt;/code&gt; より &lt;code&gt;pp512&lt;/code&gt; に対して目立った改善を出しやすいです。ただし、バックエンド、ドライバ、アーキテクチャによって効果はそろわず、デバイスによっては PP だけ伸びる、TG の変化が小さい、あるいは PP が下がることもあります。&lt;/p&gt;
&lt;h3 id=&#34;ts-の読み方&#34;&gt;&lt;code&gt;t/s&lt;/code&gt; の読み方
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;t/s&lt;/code&gt; は &lt;code&gt;tokens per second&lt;/code&gt; です。フレームレートでも FLOPS でもなく、モデルのスループットを直接表す結果です。&lt;/p&gt;
&lt;p&gt;ランキングを読むときに一番大事なのは、&lt;strong&gt;同じ種類のテストを比較しているかを先に確認すること&lt;/strong&gt;です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pp512&lt;/code&gt; と &lt;code&gt;tg128&lt;/code&gt; を混ぜて比較しない&lt;/li&gt;
&lt;li&gt;&lt;code&gt;no FA&lt;/code&gt; と &lt;code&gt;with FA&lt;/code&gt; を混ぜて比較しない&lt;/li&gt;
&lt;li&gt;CUDA、ROCm、Vulkan の結果を完全に同じ条件の曲線として扱わない&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;先に結論&#34;&gt;先に結論
&lt;/h2&gt;&lt;p&gt;現時点でこれらの discussion に見えているデータからは、おおよそ次のように読めます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CUDA&lt;/code&gt; は今でも &lt;code&gt;llama.cpp&lt;/code&gt; の GPU ベンチマークで最も強く、サンプルも最も多い系統です。特に高性能な Nvidia GPU は &lt;code&gt;pp512&lt;/code&gt; で大きな優位があります。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ROCm&lt;/code&gt; はハイエンド AMD GPU や Instinct 系でかなり実用的な成績を出しており、&lt;code&gt;MI300X&lt;/code&gt;、&lt;code&gt;7900 XTX&lt;/code&gt;、&lt;code&gt;W7900&lt;/code&gt; などの項目は十分強いです。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Vulkan&lt;/code&gt; の強みは「絶対に最速」ではなく、対応範囲の広さです。Nvidia、AMD、Intel、Apple Asahi / MoltenVK に加え、古い GPU や内蔵 GPU でも比較対象を見つけやすいです。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tg128&lt;/code&gt; は日常の体感に近く、&lt;code&gt;pp512&lt;/code&gt; はスループットを見るのに向いています。ランキング上位の GPU でも、両指標でのリード幅は必ずしも同じではありません。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;cuda-完全ランキング&#34;&gt;CUDA 完全ランキング
&lt;/h2&gt;&lt;h3 id=&#34;llama-2-7b-q4_0-no-fa&#34;&gt;Llama 2 7B, Q4_0, no FA
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Chip&lt;/th&gt;
          &lt;th&gt;Memory&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;pp512 t/s&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;tg128 t/s&lt;/th&gt;
          &lt;th&gt;Commit&lt;/th&gt;
          &lt;th&gt;Thanks to&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5090&lt;/td&gt;
          &lt;td&gt;32 GB / GDDR7 / 512 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;14073.41 ± 115.16&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;290.02 ± 1.10&lt;/td&gt;
          &lt;td&gt;8cf6b42&lt;/td&gt;
          &lt;td&gt;@totaldev&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX PRO 6000 Blackwell&lt;/td&gt;
          &lt;td&gt;96 GB / GDDR7 / 512 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;14854.63 ± 22.73&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;274.20 ± 0.14&lt;/td&gt;
          &lt;td&gt;79c1160&lt;/td&gt;
          &lt;td&gt;@Tom94&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;H100 80 GB&lt;/td&gt;
          &lt;td&gt;80 GB / HBM3 / 5120 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9918.34 ± 176.97&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;267.81 ± 1.54&lt;/td&gt;
          &lt;td&gt;5143fa8&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;A100 80 GB&lt;/td&gt;
          &lt;td&gt;80 GB / HBM2e / 5120 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4849.53 ± 8.94&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;190.88 ± 0.33&lt;/td&gt;
          &lt;td&gt;5143fa8&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4090 D&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10293.86 ± 134.72&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;189.33 ± 0.19&lt;/td&gt;
          &lt;td&gt;79c1160&lt;/td&gt;
          &lt;td&gt;@autonomous-AI-lab&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4090&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;11992.70 ± 107.99&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;186.21 ± 0.13&lt;/td&gt;
          &lt;td&gt;2241453&lt;/td&gt;
          &lt;td&gt;@lhl&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5080&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR7 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8297.36 ± 9.50&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;181.99 ± 0.42&lt;/td&gt;
          &lt;td&gt;8a4280c&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5070 Ti&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR7 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;6952.38 ± 13.73&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;176.85 ± 0.07&lt;/td&gt;
          &lt;td&gt;933414c&lt;/td&gt;
          &lt;td&gt;@TinyServal&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 6000 Ada&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9229.23 ± 101.78&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;176.07 ± 0.26&lt;/td&gt;
          &lt;td&gt;b8e09f0&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 3090 Ti&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;6567.49 ± 20.30&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;171.19 ± 3.98&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@slaren&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 3090&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5174.69 ± 21.83&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;158.16 ± 0.21&lt;/td&gt;
          &lt;td&gt;c76b420&lt;/td&gt;
          &lt;td&gt;@m18coppola&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;L40&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8870.49 ± 378.76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;152.01 ± 0.28&lt;/td&gt;
          &lt;td&gt;ee09828&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4080 SUPER&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6X / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8125.15 ± 41.05&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;148.33 ± 0.20&lt;/td&gt;
          &lt;td&gt;81086cd&lt;/td&gt;
          &lt;td&gt;@zacharyarnaise&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4080&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6X / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8031.64 ± 26.49&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;142.49 ± 0.16&lt;/td&gt;
          &lt;td&gt;20638e4&lt;/td&gt;
          &lt;td&gt;@Ristovski&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 3080&lt;/td&gt;
          &lt;td&gt;10 GB / GDDR6X / 320 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5013.86 ± 24.80&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;139.65 ± 0.99&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@slaren&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A6000&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4913.93 ± 6.79&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;138.73 ± 2.75&lt;/td&gt;
          &lt;td&gt;4795c91&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4070 Ti SUPER&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6X / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;6924.53 ± 13.87&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;132.26 ± 0.16&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@Ristovski&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX PRO 4000 Blackwell&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR7 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4992.83 ± 113.52&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;131.66 ± 0.20&lt;/td&gt;
          &lt;td&gt;7d77f07&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A5000&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4028.16 ± 19.14&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;130.07 ± 2.74&lt;/td&gt;
          &lt;td&gt;e5155e6&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla V100&lt;/td&gt;
          &lt;td&gt;32 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3042.64 ± 40.71&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;129.08 ± 0.05&lt;/td&gt;
          &lt;td&gt;51f5a45&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5070&lt;/td&gt;
          &lt;td&gt;12 GB / GDDR7 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5184.75 ± 18.70&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;127.54 ± 0.46&lt;/td&gt;
          &lt;td&gt;@Spyro000&lt;/td&gt;
          &lt;td&gt;-&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;A40&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4609.01 ± 10.67&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;124.11 ± 0.17&lt;/td&gt;
          &lt;td&gt;3470a5c&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;A30&lt;/td&gt;
          &lt;td&gt;24 GB / HBM2e / 3072 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2767.10 ± 1.88&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;124.81 ± 0.16&lt;/td&gt;
          &lt;td&gt;583cb83&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Titan V&lt;/td&gt;
          &lt;td&gt;12 GB / HBM2 / 3072 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2617.46 ± 2.10&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;108.79 ± 0.05&lt;/td&gt;
          &lt;td&gt;e56abd2&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 2080 Ti&lt;/td&gt;
          &lt;td&gt;11 GB / GDDR6 / 352 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2890.66 ± 2.42&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;107.51 ± 0.21&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@ariya&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro RTX 6000&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2751.18 ± 19.43&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;102.77 ± 0.04&lt;/td&gt;
          &lt;td&gt;b8e09f0&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro RTX 8000&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2709.95 ± 3.35&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;102.68 ± 0.03&lt;/td&gt;
          &lt;td&gt;b8e09f0&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A4500&lt;/td&gt;
          &lt;td&gt;20 GB / GDDR6 / 320 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2827.20 ± 66.43&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;97.32 ± 2.80&lt;/td&gt;
          &lt;td&gt;5cdb27e&lt;/td&gt;
          &lt;td&gt;@aleksyx&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5060 Ti 16 GB&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR7 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3737.25 ± 6.79&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;90.94 ± 0.02&lt;/td&gt;
          &lt;td&gt;89d1029&lt;/td&gt;
          &lt;td&gt;@mike-llamacpp&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 2070 SUPER&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2088.34 ± 1.94&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;88.06 ± 0.28&lt;/td&gt;
          &lt;td&gt;bc07349&lt;/td&gt;
          &lt;td&gt;@phstudy&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A4000&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2684.06 ± 15.28&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;83.77 ± 0.37&lt;/td&gt;
          &lt;td&gt;65349f2&lt;/td&gt;
          &lt;td&gt;@TinyServal&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Titan Xp&lt;/td&gt;
          &lt;td&gt;12 GB / GDDR5X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1154.96 ± 1.46&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;76.08 ± 0.08&lt;/td&gt;
          &lt;td&gt;c4510dc&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 3060&lt;/td&gt;
          &lt;td&gt;12 GB / GDDR6 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2137.50 ± 10.12&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;75.57 ± 0.07&lt;/td&gt;
          &lt;td&gt;baa9255&lt;/td&gt;
          &lt;td&gt;@QuantiusBenignus&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro RTX 4000&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1536.89 ± 0.90&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;65.62 ± 0.62&lt;/td&gt;
          &lt;td&gt;7d77f07&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4060 Ti 8 GB&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3394.63 ± 7.44&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;63.86 ± 0.01&lt;/td&gt;
          &lt;td&gt;89d1029&lt;/td&gt;
          &lt;td&gt;@mike-llamacpp&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;GTX 1080 Ti&lt;/td&gt;
          &lt;td&gt;11 GB / GDDR5X / 352 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1084.41 ± 3.01&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;62.49 ± 0.06&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@ariya&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A4000 Ada&lt;/td&gt;
          &lt;td&gt;20 GB / GDDR6 / 160 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2779.77 ± 9.91&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;61.83 ± 0.04&lt;/td&gt;
          &lt;td&gt;a74a0d6&lt;/td&gt;
          &lt;td&gt;@sdwolfz&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 2060 SUPER&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1420.24 ± 1.95&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;60.04 ± 0.01&lt;/td&gt;
          &lt;td&gt;5c0eb5e&lt;/td&gt;
          &lt;td&gt;@ggerganov&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla P100&lt;/td&gt;
          &lt;td&gt;16 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;760.80 ± 2.92&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;58.35 ± 0.00&lt;/td&gt;
          &lt;td&gt;b8372ee&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;DGX Spark&lt;/td&gt;
          &lt;td&gt;128 GB / LPDDR5x&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3062.31 ± 11.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;57.21 ± 0.06&lt;/td&gt;
          &lt;td&gt;5acd455&lt;/td&gt;
          &lt;td&gt;@ggerganov&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla P40&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR5 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1007.42 ± 1.23&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;54.74 ± 0.07&lt;/td&gt;
          &lt;td&gt;c76b420&lt;/td&gt;
          &lt;td&gt;@m18coppola&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 2000 Ada&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1956.22 ± 7.74&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;50.62 ± 0.04&lt;/td&gt;
          &lt;td&gt;756cfea&lt;/td&gt;
          &lt;td&gt;@DigitalRudeness&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla T4&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1219.06 ± 4.18&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;46.38 ± 0.73&lt;/td&gt;
          &lt;td&gt;d32e03f&lt;/td&gt;
          &lt;td&gt;@pt13762104&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4050 Laptop&lt;/td&gt;
          &lt;td&gt;6 GB / GDDR6 / 96 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1725.85 + 17.85&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;43.72 + 0.41&lt;/td&gt;
          &lt;td&gt;d79d8f3&lt;/td&gt;
          &lt;td&gt;@TimCabbage&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;GTX 1660&lt;/td&gt;
          &lt;td&gt;6 GB / GDDR5 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;148.91 ± 0.01&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;41.35 ± 0.02&lt;/td&gt;
          &lt;td&gt;9515c61&lt;/td&gt;
          &lt;td&gt;@ariya&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla M40&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR5 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;282.65 ± 0.15&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;38.04 ± 0.02&lt;/td&gt;
          &lt;td&gt;97d5117&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;GTX 1070 Ti&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR5 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;714.44 ± 2.04&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;37.82 ± 0.02&lt;/td&gt;
          &lt;td&gt;79c1160&lt;/td&gt;
          &lt;td&gt;@pebaryan&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Jetson AGX Orin&lt;/td&gt;
          &lt;td&gt;64 GB / LPDDR5 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;991.31 ± 1.15&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;33.58 ± 0.14&lt;/td&gt;
          &lt;td&gt;c1b1876&lt;/td&gt;
          &lt;td&gt;@TinyServal&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla P4&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR5 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;514.53 ± 3.06&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;33.29 ± 0.00&lt;/td&gt;
          &lt;td&gt;c76b420&lt;/td&gt;
          &lt;td&gt;@m18coppola&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;P106-100&lt;/td&gt;
          &lt;td&gt;6 GB / GDDR5 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;406.94 ± 0.25&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;30.40 ± 0.02&lt;/td&gt;
          &lt;td&gt;5fd160b&lt;/td&gt;
          &lt;td&gt;@pebaryan&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;GTX 1060&lt;/td&gt;
          &lt;td&gt;6 GB / GDDR5 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;416.85 ± 1.75&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;27.79 ± 0.02&lt;/td&gt;
          &lt;td&gt;5fd160b&lt;/td&gt;
          &lt;td&gt;@pebaryan&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro T1000&lt;/td&gt;
          &lt;td&gt;4 GB / GDDR5 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;79.44 ± 0.01&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;27.82 ± 0.18&lt;/td&gt;
          &lt;td&gt;f6da8cb&lt;/td&gt;
          &lt;td&gt;@hanabu&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro P2000&lt;/td&gt;
          &lt;td&gt;5 GB / GDDR5 / 160 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;309.30 ± 0.05&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;23.63 ± 0.00&lt;/td&gt;
          &lt;td&gt;baa9255&lt;/td&gt;
          &lt;td&gt;@TinyServal&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro P1000&lt;/td&gt;
          &lt;td&gt;4 GB / GDDR5 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;183.40 ± 0.11&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;13.99 ± 0.13&lt;/td&gt;
          &lt;td&gt;1e74897&lt;/td&gt;
          &lt;td&gt;@aleksyx&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla K80&lt;/td&gt;
          &lt;td&gt;12 GB / GDDR5 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;133.14 ± 0.55&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;13.80 ± 0.02&lt;/td&gt;
          &lt;td&gt;32732f2&lt;/td&gt;
          &lt;td&gt;@pebaryan&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;llama-2-7b-q4_0-with-fa&#34;&gt;Llama 2 7B, Q4_0, with FA
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Chip&lt;/th&gt;
          &lt;th&gt;Memory&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;pp512 t/s&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;tg128 t/s&lt;/th&gt;
          &lt;th&gt;Commit&lt;/th&gt;
          &lt;th&gt;Thanks to&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5090&lt;/td&gt;
          &lt;td&gt;32 GB / GDDR7 / 512 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;14970.15 ± 381.06&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;300.40 ± 0.28&lt;/td&gt;
          &lt;td&gt;8cf6b42&lt;/td&gt;
          &lt;td&gt;@totaldev&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX PRO 6000 Blackwell&lt;/td&gt;
          &lt;td&gt;96 GB / GDDR7 / 512 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;16618.98 ± 20.66&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;281.11 ± 0.41&lt;/td&gt;
          &lt;td&gt;5143fa8&lt;/td&gt;
          &lt;td&gt;@Tom94&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;H100 80 GB&lt;/td&gt;
          &lt;td&gt;80 GB / HBM3 / 5120 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;11263.29 ± 98.34&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;280.74 ± 1.17&lt;/td&gt;
          &lt;td&gt;5143fa8&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;A100 80 GB&lt;/td&gt;
          &lt;td&gt;80 GB / HBM2e / 5120 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5285.96 ± 6.58&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;200.90 ± 0.12&lt;/td&gt;
          &lt;td&gt;5143fa8&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4090 D&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;12506.97 ± 11.51&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;191.57 ± 0.03&lt;/td&gt;
          &lt;td&gt;79c1160&lt;/td&gt;
          &lt;td&gt;@autonomous-AI-lab&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4090&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;14770.63 ± 102.93&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;188.96 ± 0.05&lt;/td&gt;
          &lt;td&gt;2241453&lt;/td&gt;
          &lt;td&gt;@lhl&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5080&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR7 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9487.70 ± 21.89&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;184.68 ± 0.05&lt;/td&gt;
          &lt;td&gt;8a4280c&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5070 Ti&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR7 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8419.56 ± 35.50&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;182.43 ± 0.09&lt;/td&gt;
          &lt;td&gt;933414c&lt;/td&gt;
          &lt;td&gt;@TinyServal&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 6000 Ada&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10576.85 ± 530.21&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;179.47 ± 0.32&lt;/td&gt;
          &lt;td&gt;b8e09f0&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 3090 Ti&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;6924.01 ± 10.76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;172.26 ± 1.31&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@slaren&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX PRO 4500 Blackwell&lt;/td&gt;
          &lt;td&gt;32 GB / GDDR7 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;7251.66 ± 92.40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;168.90 ± 0.20&lt;/td&gt;
          &lt;td&gt;becc481&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 3090&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5560.06 ± 16.28&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;161.89 ± 0.18&lt;/td&gt;
          &lt;td&gt;c76b420&lt;/td&gt;
          &lt;td&gt;@m18coppola&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;L40&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10097.64 ± 671.22&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;153.76 ± 0.12&lt;/td&gt;
          &lt;td&gt;ee09828&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4080 SUPER&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6X / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9439.01 ± 56.75&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;147.48 ± 1.41&lt;/td&gt;
          &lt;td&gt;81086cd&lt;/td&gt;
          &lt;td&gt;@zacharyarnaise&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4080&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6X / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9205.93 ± 22.31&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;143.47 ± 0.02&lt;/td&gt;
          &lt;td&gt;20638e4&lt;/td&gt;
          &lt;td&gt;@Ristovski&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A6000&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5662.39 ± 13.87&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;144.87 ± 0.18&lt;/td&gt;
          &lt;td&gt;4795c91&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 3080&lt;/td&gt;
          &lt;td&gt;10 GB / GDDR6X / 320 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5569.56 ± 14.04&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;139.95 ± 0.95&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@slaren&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX PRO 4000 Blackwell&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR7 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5674.44 ± 139.53&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;136.38 ± 0.13&lt;/td&gt;
          &lt;td&gt;7d77f07&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A5000&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4552.15 ± 9.68&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;135.83 ± 0.11&lt;/td&gt;
          &lt;td&gt;e5155e6&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla V100&lt;/td&gt;
          &lt;td&gt;32 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2973.78 ± 3.62&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;134.76 ± 0.02&lt;/td&gt;
          &lt;td&gt;51f5a45&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4070 Ti SUPER&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6X / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;7612.32 ± 37.35&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;132.85 ± 0.31&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@Ristovski&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;A30&lt;/td&gt;
          &lt;td&gt;24 GB / HBM2e / 3072 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3068.72 ± 0.63&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;131.93 ± 0.18&lt;/td&gt;
          &lt;td&gt;583cb83&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5070&lt;/td&gt;
          &lt;td&gt;12 GB / GDDR7 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5783.44 ± 36.95&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;128.21 ± 2.52&lt;/td&gt;
          &lt;td&gt;@Spyro000&lt;/td&gt;
          &lt;td&gt;-&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;A40&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5256.38 ± 19.39&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;126.24 ± 0.06&lt;/td&gt;
          &lt;td&gt;3470a5c&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Titan V&lt;/td&gt;
          &lt;td&gt;12 GB / HBM2 / 3072 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2481.25 ± 1.31&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;112.17 ± 0.01&lt;/td&gt;
          &lt;td&gt;e56abd2&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 2080 Ti&lt;/td&gt;
          &lt;td&gt;11 GB / GDDR6 / 352 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3107.61 ± 4.34&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;109.17 ± 0.07&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@ariya&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro RTX 6000&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3053.96 ± 1.37&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;104.38 ± 0.04&lt;/td&gt;
          &lt;td&gt;b8e09f0&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro RTX 8000&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3052.35 ± 5.64&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;103.63 ± 0.02&lt;/td&gt;
          &lt;td&gt;b8e09f0&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A4500&lt;/td&gt;
          &lt;td&gt;20 GB / GDDR6 / 320 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3453.10 ± 49.19&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;103.00 ± 0.25&lt;/td&gt;
          &lt;td&gt;5cdb27e&lt;/td&gt;
          &lt;td&gt;@aleksyx&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 5060 Ti 16 GB&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR7 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4195.53 ± 1.98&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;93.46 ± 0.01&lt;/td&gt;
          &lt;td&gt;89d1029&lt;/td&gt;
          &lt;td&gt;@mike-llamacpp&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 2070 SUPER&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2293.29 ± 5.91&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;87.71 ± 0.29&lt;/td&gt;
          &lt;td&gt;bc07349&lt;/td&gt;
          &lt;td&gt;@phstudy&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A4000&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2807.83 ± 52.44&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;85.17 ± 0.66&lt;/td&gt;
          &lt;td&gt;65349f2&lt;/td&gt;
          &lt;td&gt;@TinyServal&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 3060&lt;/td&gt;
          &lt;td&gt;12 GB / GDDR6 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2407.67 ± 3.73&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;76.92 ± 0.03&lt;/td&gt;
          &lt;td&gt;baa9255&lt;/td&gt;
          &lt;td&gt;@QuantiusBenignus&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Titan Xp&lt;/td&gt;
          &lt;td&gt;12 GB / GDDR5X / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1218.12 ± 1.82&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;73.84 ± 0.04&lt;/td&gt;
          &lt;td&gt;c4510dc&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro RTX 4000&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1662.80 ± 2.04&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;67.62 ± 0.67&lt;/td&gt;
          &lt;td&gt;7d77f07&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 4060 Ti 8 GB&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3803.45 ± 70.80&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;64.03 ± 0.53&lt;/td&gt;
          &lt;td&gt;89d1029&lt;/td&gt;
          &lt;td&gt;@mike-llamacpp&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla P100&lt;/td&gt;
          &lt;td&gt;16 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;787.36 ± 3.27&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;61.99 ± 0.00&lt;/td&gt;
          &lt;td&gt;b8372ee&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;GTX 1080 Ti&lt;/td&gt;
          &lt;td&gt;11 GB / GDDR5X / 352 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1138.14 ± 2.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;61.38 ± 0.03&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@ariya&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX A4000 Ada&lt;/td&gt;
          &lt;td&gt;20 GB / GDDR6 / 160 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3171.86 ± 4.34&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;61.37 ± 0.01&lt;/td&gt;
          &lt;td&gt;a74a0d6&lt;/td&gt;
          &lt;td&gt;@sdwolfz&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 2060 SUPER&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1563.77 ± 0.51&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;61.13 ± 0.05&lt;/td&gt;
          &lt;td&gt;5c0eb5e&lt;/td&gt;
          &lt;td&gt;@ggerganov&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;DGX Spark&lt;/td&gt;
          &lt;td&gt;128 GB / LPDDR5x&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3661.37 ± 38.66&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;56.74 ± 0.03&lt;/td&gt;
          &lt;td&gt;5acd455&lt;/td&gt;
          &lt;td&gt;@ggerganov&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla P40&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR5 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1079.66 ± 0.18&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;53.73 ± 0.05&lt;/td&gt;
          &lt;td&gt;c76b420&lt;/td&gt;
          &lt;td&gt;@m18coppola&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RTX 2000 Ada&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2250.14 ± 5.91&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;50.71 ± 0.01&lt;/td&gt;
          &lt;td&gt;756cfea&lt;/td&gt;
          &lt;td&gt;@DigitalRudeness&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla T4&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1309.73 ± 1.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;44.03 ± 0.57&lt;/td&gt;
          &lt;td&gt;d32e03f&lt;/td&gt;
          &lt;td&gt;@pt13762104&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;GTX 1660&lt;/td&gt;
          &lt;td&gt;6 GB / GDDR5 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;154.45 ± 0.52&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;41.43 ± 0.01&lt;/td&gt;
          &lt;td&gt;9515c61&lt;/td&gt;
          &lt;td&gt;@ariya&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla M40&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR5 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;290.17 ± 0.11&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;39.98 ± 0.01&lt;/td&gt;
          &lt;td&gt;97d5117&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;GTX 1070 Ti&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR5 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;790.52 ± 2.39&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;37.87 ± 0.00&lt;/td&gt;
          &lt;td&gt;79c1160&lt;/td&gt;
          &lt;td&gt;@pebaryan&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Jetson AGX Orin&lt;/td&gt;
          &lt;td&gt;64 GB / LPDDR5 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1171.96 ± 4.70&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;35.88 ± 0.18&lt;/td&gt;
          &lt;td&gt;c1b1876&lt;/td&gt;
          &lt;td&gt;@TinyServal&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla P4&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR5 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;529.53 ± 2.12&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;33.12 ± 0.03&lt;/td&gt;
          &lt;td&gt;c76b420&lt;/td&gt;
          &lt;td&gt;@m18coppola&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;P106-100&lt;/td&gt;
          &lt;td&gt;6 GB / GDDR5 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;438.49 ± 0.38&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;30.64 ± 0.06&lt;/td&gt;
          &lt;td&gt;5fd160b&lt;/td&gt;
          &lt;td&gt;@pebaryan&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;GTX 1060&lt;/td&gt;
          &lt;td&gt;6 GB / GDDR5 / 192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;446.19 ± 0.81&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;28.18 ± 0.01&lt;/td&gt;
          &lt;td&gt;5fd160b&lt;/td&gt;
          &lt;td&gt;@pebaryan&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro T1000&lt;/td&gt;
          &lt;td&gt;4 GB / GDDR5 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;27.46 ± 0.23&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;27.46 ± 0.23&lt;/td&gt;
          &lt;td&gt;f6da8cb&lt;/td&gt;
          &lt;td&gt;@hanabu&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro P2000&lt;/td&gt;
          &lt;td&gt;5 GB / GDDR5 / 160 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;311.55 ± 0.19&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;23.76 ± 0.01&lt;/td&gt;
          &lt;td&gt;baa9255&lt;/td&gt;
          &lt;td&gt;@TinyServal&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tesla K80&lt;/td&gt;
          &lt;td&gt;12 GB / GDDR5 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;133.36 ± 0.60&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;14.27 ± 0.32&lt;/td&gt;
          &lt;td&gt;32732f2&lt;/td&gt;
          &lt;td&gt;@pebaryan&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Quadro P1000&lt;/td&gt;
          &lt;td&gt;4 GB / GDDR5 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;173.82 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;13.65 ± 0.14&lt;/td&gt;
          &lt;td&gt;1e74897&lt;/td&gt;
          &lt;td&gt;@aleksyx&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;apple-silicon-の参照基準&#34;&gt;Apple Silicon の参照基準
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;#4167&lt;/code&gt; の discussion が後の 3 つと大きく違うのは、より早い段階で統一された見方を作っており、&lt;code&gt;Q4_0&lt;/code&gt; だけでなく &lt;code&gt;F16&lt;/code&gt; や &lt;code&gt;Q8_0&lt;/code&gt; も併記している点です。&lt;code&gt;PP / TG / t/s&lt;/code&gt; を理解するうえで役立ちます。&lt;/p&gt;
&lt;p&gt;discussion 内での説明は次のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;PP&lt;/code&gt; は &lt;code&gt;prompt processing&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;TG&lt;/code&gt; は &lt;code&gt;text-generation&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;t/s&lt;/code&gt; は &lt;code&gt;tokens per second&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本文で確認できる時系列比較の例として、同じ &lt;code&gt;M2 Ultra&lt;/code&gt; がバージョンと &lt;code&gt;FA&lt;/code&gt; の進化に応じてどう変わったかが示されています。&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;日時&lt;/th&gt;
          &lt;th&gt;デバイス&lt;/th&gt;
          &lt;th&gt;バージョン/説明&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;帯域 GB/s&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;GPU コア&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;F16 PP&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;F16 TG&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Q8_0 PP&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Q8_0 TG&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Q4_0 PP&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Q4_0 TG&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;2023-11-21&lt;/td&gt;
          &lt;td&gt;M2 Ultra&lt;/td&gt;
          &lt;td&gt;8e672ef&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;800&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1401.85&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;41.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1248.59&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;66.64&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1238.48&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;94.27&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;2024-11-12&lt;/td&gt;
          &lt;td&gt;M2 Ultra&lt;/td&gt;
          &lt;td&gt;86ed72d + FA&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;800&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1525.95&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;43.15&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1368.18&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;73.11&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1391.78&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;108.80&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;2025-08-02&lt;/td&gt;
          &lt;td&gt;M2 Ultra&lt;/td&gt;
          &lt;td&gt;5c0eb5e + FA&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;800&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1561.35&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;43.24&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1386.97&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;73.35&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1412.42&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;109.41&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;デバイス&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Q4_0 PP&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Q4_0 TG&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Q8_0 PP&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Q8_0 TG&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;F16 PP&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;F16 TG&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;M1 Pro 16 GPU&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;266.25&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;36.41&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;270.37&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;22.34&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;302.14&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;12.75&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;M2 Ultra 76 GPU&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1238.48&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;94.27&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1248.59&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;66.64&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1401.85&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;41.02&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;M3 Max 40 GPU&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;690.99&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;65.85&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;749.37&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;43.00&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;794.26&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;25.27&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Apple の系統はここでは全文を展開せず、以降は指定された 3 種類のディスクリート GPU バックエンドのランキングを中心に見ます。&lt;/p&gt;
&lt;h2 id=&#34;rocm--hip-完全ランキング&#34;&gt;ROCm / HIP 完全ランキング
&lt;/h2&gt;&lt;h3 id=&#34;llama-2-7b-q4_0-no-fa-1&#34;&gt;Llama 2 7B, Q4_0, no FA
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Chip&lt;/th&gt;
          &lt;th&gt;Memory&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;pp512 t/s&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;tg128 t/s&lt;/th&gt;
          &lt;th&gt;Commit&lt;/th&gt;
          &lt;th&gt;Thanks to&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI300X&lt;/td&gt;
          &lt;td&gt;192 GB / HBM3 / 8192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;11476.40 ± 72.79&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;232.92 ± 0.53&lt;/td&gt;
          &lt;td&gt;ee3a9fc&lt;/td&gt;
          &lt;td&gt;@yeahdongcn&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7900 XTX&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3552.27 ± 101.96&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;167.11 ± 0.50&lt;/td&gt;
          &lt;td&gt;2f0c2db&lt;/td&gt;
          &lt;td&gt;@Diablo-D3&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI210&lt;/td&gt;
          &lt;td&gt;64 GB / HBM2e / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2486.22 ± 9.58&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;124.51 ± 0.04&lt;/td&gt;
          &lt;td&gt;8160b38&lt;/td&gt;
          &lt;td&gt;@65a&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Pro W7900&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3213.17 ± 80.47&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;121.18 ± 0.06&lt;/td&gt;
          &lt;td&gt;8160b38&lt;/td&gt;
          &lt;td&gt;@65a&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7900 XT&lt;/td&gt;
          &lt;td&gt;20 GB / GDDR6 / 320 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3098.38 ± 24.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;116.15 ± 0.06&lt;/td&gt;
          &lt;td&gt;1e15bfd&lt;/td&gt;
          &lt;td&gt;@AdamNiederer&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 9070&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2381.77 ± 3.68&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;114.48 ± 0.60&lt;/td&gt;
          &lt;td&gt;d0660f2&lt;/td&gt;
          &lt;td&gt;@andj1210&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI100&lt;/td&gt;
          &lt;td&gt;32 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2732.83 ± 1.98&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;110.48 ± 0.14&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@firefox42&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 9070 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5055.19 ± 109.58&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;101.27 ± 0.27&lt;/td&gt;
          &lt;td&gt;583cb83&lt;/td&gt;
          &lt;td&gt;@Hadrianneue&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7800 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2151.81 + 17.94&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;100.94 + 0.10&lt;/td&gt;
          &lt;td&gt;00131d6&lt;/td&gt;
          &lt;td&gt;@olegshulyakov&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI50&lt;/td&gt;
          &lt;td&gt;32 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1057.24 ± 0.53&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;98.95 ± 0.25&lt;/td&gt;
          &lt;td&gt;97d5117&lt;/td&gt;
          &lt;td&gt;@wtarreau&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7900 GRE&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1456.98 ± 12.39&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;96.07 ± 0.10&lt;/td&gt;
          &lt;td&gt;6fa3b55&lt;/td&gt;
          &lt;td&gt;@MihaiBojescu&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AI PRO R9700&lt;/td&gt;
          &lt;td&gt;32 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4443.54 ± 339.25&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;93.84 ± 0.26&lt;/td&gt;
          &lt;td&gt;bd4ef13&lt;/td&gt;
          &lt;td&gt;@gogich77&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI60&lt;/td&gt;
          &lt;td&gt;32 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1289.11 ± 0.62&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;91.46 ± 0.13&lt;/td&gt;
          &lt;td&gt;504af20&lt;/td&gt;
          &lt;td&gt;@Said-Akbar&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 6900 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1889.84 ± 31.21&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;88.49 ± 0.00&lt;/td&gt;
          &lt;td&gt;a972fae&lt;/td&gt;
          &lt;td&gt;@notgood&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Pro VII&lt;/td&gt;
          &lt;td&gt;16 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1064.99 ± 1.18&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;87.45 ± 0.04&lt;/td&gt;
          &lt;td&gt;2739a71&lt;/td&gt;
          &lt;td&gt;@8XXD8&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 6800 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1447.07 ± 1.36&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;83.92 ± 0.03&lt;/td&gt;
          &lt;td&gt;79c1160&lt;/td&gt;
          &lt;td&gt;@MrLavender&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Pro V620&lt;/td&gt;
          &lt;td&gt;32 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1803.65 ± 2.54&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;74.66 ± 0.01&lt;/td&gt;
          &lt;td&gt;5c0eb5e&lt;/td&gt;
          &lt;td&gt;@samteezy&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 9060 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1419.67 ± 3.64&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;67.58 ± 0.24&lt;/td&gt;
          &lt;td&gt;a0e13dc&lt;/td&gt;
          &lt;td&gt;@lcy0321&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 5700 XT&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;354.17 ± 0.18&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;67.55 ± 0.04&lt;/td&gt;
          &lt;td&gt;c05e8c9&lt;/td&gt;
          &lt;td&gt;@daniandtheweb&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI25&lt;/td&gt;
          &lt;td&gt;16 GB / HBM2 / 2048 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;409.83 ± 0.23&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;63.94 ± 0.06&lt;/td&gt;
          &lt;td&gt;2739a71&lt;/td&gt;
          &lt;td&gt;@8XXD8&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AI Max+ 395&lt;/td&gt;
          &lt;td&gt;128 GB / LPDDR5&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;911.36 ± 1.79&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;50.01 ± 0.07&lt;/td&gt;
          &lt;td&gt;e60f241&lt;/td&gt;
          &lt;td&gt;@firefox42&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7600 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1099.64 ± 2.05&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;48.58 ± 0.06&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@wbruna&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX Vega 64&lt;/td&gt;
          &lt;td&gt;8 GB / HBM2 / 2048 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;240.68 ± 0.09&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;48.46 ± 0.09&lt;/td&gt;
          &lt;td&gt;ec428b0&lt;/td&gt;
          &lt;td&gt;@davispuh&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Radeon 8060S&lt;/td&gt;
          &lt;td&gt;System Shared / DDR5&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;351.36 ± 0.67&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;47.97 ± 0.33&lt;/td&gt;
          &lt;td&gt;1d0125b&lt;/td&gt;
          &lt;td&gt;@hspak&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Radeon 880M&lt;/td&gt;
          &lt;td&gt;System Shared / DDR5&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;163.25 ± 13.86&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;12.97 ± 1.63&lt;/td&gt;
          &lt;td&gt;c55d53a&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;llama-2-7b-q4_0-with-fa-1&#34;&gt;Llama 2 7B, Q4_0, with FA
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Chip&lt;/th&gt;
          &lt;th&gt;Memory&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;pp512 t/s&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;tg128 t/s&lt;/th&gt;
          &lt;th&gt;Commit&lt;/th&gt;
          &lt;th&gt;Thanks to&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI300X&lt;/td&gt;
          &lt;td&gt;192 GB / HBM3 / 8192 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;11945.97 ± 54.29&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;218.53 ± 0.09&lt;/td&gt;
          &lt;td&gt;ee3a9fc&lt;/td&gt;
          &lt;td&gt;@yeahdongcn&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7900 XTX&lt;/td&gt;
          &lt;td&gt;24 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3874.25 ± 11.92&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;170.12 ± 0.56&lt;/td&gt;
          &lt;td&gt;2f0c2db&lt;/td&gt;
          &lt;td&gt;@Diablo-D3&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Pro W7900&lt;/td&gt;
          &lt;td&gt;48 GB / GDDR6 / 384 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3472.86 ± 52.86&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;127.43 ± 0.12&lt;/td&gt;
          &lt;td&gt;8160b38&lt;/td&gt;
          &lt;td&gt;@65a&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI210&lt;/td&gt;
          &lt;td&gt;64 GB / HBM2e / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2571.82 ± 2.89&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;130.18 ± 0.06&lt;/td&gt;
          &lt;td&gt;8160b38&lt;/td&gt;
          &lt;td&gt;@65a&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 9070&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2452.68 ± 1.33&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;115.32 ± 0.52&lt;/td&gt;
          &lt;td&gt;d0660f2&lt;/td&gt;
          &lt;td&gt;@andj1210&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7900 XT&lt;/td&gt;
          &lt;td&gt;20 GB / GDDR6 / 320 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3261.75 ± 9.09&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;112.30 ± 0.06&lt;/td&gt;
          &lt;td&gt;1e15bfd&lt;/td&gt;
          &lt;td&gt;@AdamNiederer&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI50&lt;/td&gt;
          &lt;td&gt;32 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1129.43 ± 0.15&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;105.82 ± 0.07&lt;/td&gt;
          &lt;td&gt;97d5117&lt;/td&gt;
          &lt;td&gt;@wtarreau&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Instinct MI100&lt;/td&gt;
          &lt;td&gt;32 GB / HBM2 / 4096 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2755.00 ± 3.68&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;104.71 ± 0.10&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@firefox42&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AI PRO R9700&lt;/td&gt;
          &lt;td&gt;32 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4773.07 ± 49.30&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;97.98 ± 0.13&lt;/td&gt;
          &lt;td&gt;bd4ef13&lt;/td&gt;
          &lt;td&gt;@gogich77&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7900 GRE&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1598.79 ± 11.48&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;97.53 ± 0.06&lt;/td&gt;
          &lt;td&gt;6fa3b55&lt;/td&gt;
          &lt;td&gt;@MihaiBojescu&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 9070 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4903.51 ± 96.36&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;97.28 ± 0.13&lt;/td&gt;
          &lt;td&gt;583cb83&lt;/td&gt;
          &lt;td&gt;@Hadrianneue&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7800 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2304.63 + 2.85&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;95.99 + 0.21&lt;/td&gt;
          &lt;td&gt;00131d6&lt;/td&gt;
          &lt;td&gt;@olegshulyakov&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 6900 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1948.31 ± 13.51&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;85.04 ± 0.02&lt;/td&gt;
          &lt;td&gt;a972fae&lt;/td&gt;
          &lt;td&gt;@notgood&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Pro V620&lt;/td&gt;
          &lt;td&gt;32 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1256.86 ± 0.55&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;70.83 ± 0.02&lt;/td&gt;
          &lt;td&gt;5c0eb5e&lt;/td&gt;
          &lt;td&gt;@samteezy&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 9060 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1479.27 ± 0.71&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;65.42 ± 0.19&lt;/td&gt;
          &lt;td&gt;a0e13dc&lt;/td&gt;
          &lt;td&gt;@lcy0321&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 5700 XT&lt;/td&gt;
          &lt;td&gt;8 GB / GDDR6 / 256 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;314.17 ± 0.29&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;62.02 ± 0.05&lt;/td&gt;
          &lt;td&gt;c05e8c9&lt;/td&gt;
          &lt;td&gt;@daniandtheweb&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AI Max+ 395&lt;/td&gt;
          &lt;td&gt;128 GB / LPDDR5&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1003.53 ± 2.91&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;49.87 ± 0.02&lt;/td&gt;
          &lt;td&gt;e60f241&lt;/td&gt;
          &lt;td&gt;@firefox42&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Radeon 8060S&lt;/td&gt;
          &lt;td&gt;System Shared / DDR5&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;366.08 ± 1.44&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;48.97 ± 0.15&lt;/td&gt;
          &lt;td&gt;1d0125b&lt;/td&gt;
          &lt;td&gt;@hspak&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX 7600 XT&lt;/td&gt;
          &lt;td&gt;16 GB / GDDR6 / 128 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1199.16 ± 1.07&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;47.65 ± 0.06&lt;/td&gt;
          &lt;td&gt;9c35706&lt;/td&gt;
          &lt;td&gt;@wbruna&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;RX Vega 64&lt;/td&gt;
          &lt;td&gt;8 GB / HBM2 / 2048 bit&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;153.17 ± 0.72&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;42.46 ± 0.40&lt;/td&gt;
          &lt;td&gt;ec428b0&lt;/td&gt;
          &lt;td&gt;@davispuh&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Radeon 880M&lt;/td&gt;
          &lt;td&gt;System Shared / DDR5&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;213.31 ± 14.05&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;16.16 ± 1.41&lt;/td&gt;
          &lt;td&gt;c55d53a&lt;/td&gt;
          &lt;td&gt;@Hedede&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;vulkan-完全ランキング&#34;&gt;Vulkan 完全ランキング
&lt;/h2&gt;&lt;h3 id=&#34;llama-2-7b-q4_0-no-fa-2&#34;&gt;Llama 2 7B, Q4_0, no FA
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Chip&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;pp512 t/s&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;tg128 t/s&lt;/th&gt;
          &lt;th&gt;Commit&lt;/th&gt;
          &lt;th&gt;Comments&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 5090&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10381.64 ± 508.84&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;263.63 ± 0.91&lt;/td&gt;
          &lt;td&gt;ca71fb9&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7900 XTX&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3531.93 ± 31.74&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;191.28 ± 0.20&lt;/td&gt;
          &lt;td&gt;2f0c2db&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4090&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9452.03 ± 187.70&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;187.97 ± 0.21&lt;/td&gt;
          &lt;td&gt;4ae88d0&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 5080&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;7444.99 ± 20.11&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;185.10 ± 0.54&lt;/td&gt;
          &lt;td&gt;f6b533d&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia A100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;6389.86 ± 4.83&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;160.78 ± 0.16&lt;/td&gt;
          &lt;td&gt;2257758&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3090&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4298.97 ± 10.59&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;160.13 ± 0.25&lt;/td&gt;
          &lt;td&gt;4ae88d0&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4080 Super&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;7101.18 ± 269.79&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;147.13 ± 5.64&lt;/td&gt;
          &lt;td&gt;81086cd&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3080&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4287.11 ± 55.50&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;139.15 ± 0.05&lt;/td&gt;
          &lt;td&gt;7c7d6ce&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX A5000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3641.55 ± 9.05&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;139.89 ± 0.69&lt;/td&gt;
          &lt;td&gt;4ae88d0&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 9070 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5036.04 ± 88.16&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;137.11 ± 0.02&lt;/td&gt;
          &lt;td&gt;e9fd8dc&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 5070 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;6213.63 ± 27.72&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;135.63 ± 0.18&lt;/td&gt;
          &lt;td&gt;d13d0f6&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon AI Pro R9700&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4036.04 ± 34.58&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;130.19 ± 0.39&lt;/td&gt;
          &lt;td&gt;3191462&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla V100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1391.39 ± 1.19&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;129.58 ± 0.58&lt;/td&gt;
          &lt;td&gt;7d77f07&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4070 Ti Super&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;6099.18 ± 154.30&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;129.45 ± 0.18&lt;/td&gt;
          &lt;td&gt;4ae88d0&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7900 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2941.58 ± 17.17&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;123.18 ± 0.40&lt;/td&gt;
          &lt;td&gt;71e74a3&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 9070&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3164.10 ± 66.84&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;119.71 ± 3.40&lt;/td&gt;
          &lt;td&gt;21c17b5&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7800 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2017.33 ± 19.30&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;118.27 ± 0.27&lt;/td&gt;
          &lt;td&gt;4fdbc1e&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7900 GRE&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2336.31 ± 7.52&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;116.11 ± 0.26&lt;/td&gt;
          &lt;td&gt;4b2a477&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M3 Ultra&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1116.83 ± 0.55&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;115.54 ± 0.78&lt;/td&gt;
          &lt;td&gt;2d451c8&lt;/td&gt;
          &lt;td&gt;MoltenVK&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc Pro B70&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3379.00 ± 47.92&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;112.02 ± 1.08&lt;/td&gt;
          &lt;td&gt;b863507&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Titan V&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;984.36 ± 4.13&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;108.86 ± 0.28&lt;/td&gt;
          &lt;td&gt;e56abd2&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro VII&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1078.54 ± 0.86&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;107.82 ± 0.14&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6900 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1837.21 ± 25.44&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;104.60 ± 0.30&lt;/td&gt;
          &lt;td&gt;a972fae&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc Pro A60&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2261.11 ± 9.53&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;104.25 ± 0.07&lt;/td&gt;
          &lt;td&gt;97d5117&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6800 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1752.92 ± 1.71&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;100.32 ± 0.97&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon VII&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1059.14 ± 0.56&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;101.19 ± 0.53&lt;/td&gt;
          &lt;td&gt;77d6ae4&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 2080 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1888.24 ± 9.20&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;97.58 ± 6.60&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6800&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1698.69 ± 0.80&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;95.61 ± 0.19&lt;/td&gt;
          &lt;td&gt;4b385bf&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro W6800X Duo&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;687.71 ± 4.33&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;94.82 ± 0.12&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 5060 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3460.92 ± 7.16&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;93.51 ± 0.15&lt;/td&gt;
          &lt;td&gt;89f10ba&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4070&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3179.37 ± 46.16&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;92.29 ± 0.28&lt;/td&gt;
          &lt;td&gt;9a48399&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro W6800X&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;510.80 ± 0.13&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;86.47 ± 0.46&lt;/td&gt;
          &lt;td&gt;13b4548&lt;/td&gt;
          &lt;td&gt;MoltenVK&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6700 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1051.20 ± 0.98&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;83.88 ± 0.08&lt;/td&gt;
          &lt;td&gt;6d75883&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6750 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1040.58 ± 0.35&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;81.98 ± 0.03&lt;/td&gt;
          &lt;td&gt;228f34c&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro V620&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1595.32 ± 1.59&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;81.78 ± 0.06&lt;/td&gt;
          &lt;td&gt;03d4698&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3070&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2113.02 ± 7.38&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;78.71 ± 0.13&lt;/td&gt;
          &lt;td&gt;1b8fb81&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Instinct MI60&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;369.26 ± 2.48&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;78.16 ± 1.40&lt;/td&gt;
          &lt;td&gt;504af20&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3060&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1815.70 ± 5.85&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;75.94 ± 0.80&lt;/td&gt;
          &lt;td&gt;92c0b38&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M4 Max&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;724.77 ± 20.93&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;75.02 ± 0.14&lt;/td&gt;
          &lt;td&gt;1ece0cb6&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla T10&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1692.70 ± 2.05&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;75.01 ± 0.21&lt;/td&gt;
          &lt;td&gt;7f76692&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX A4000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2248.14 ± 7.59&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;73.74 ± 0.08&lt;/td&gt;
          &lt;td&gt;f5245b5&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 5700 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;529.69 ± 0.26&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;70.73 ± 0.04&lt;/td&gt;
          &lt;td&gt;4fdbc1e&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 9060 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2141.67 ± 6.87&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;70.54 ± 0.74&lt;/td&gt;
          &lt;td&gt;ed52f36&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc B580&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;620.94 ± 15.33&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;70.14 ± 0.28&lt;/td&gt;
          &lt;td&gt;7f76692&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro V540&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;583.88 ± 6.56&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;69.64 ± 0.24&lt;/td&gt;
          &lt;td&gt;9da3dcd&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro W5700&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;449.85 ± 0.46&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;68.55 ± 0.15&lt;/td&gt;
          &lt;td&gt;23bc779&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc Pro B60&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;522.36 ± 3.60&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;68.55 ± 0.01&lt;/td&gt;
          &lt;td&gt;516a4ca&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1080 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;540.69 ± 0.71&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;64.99 ± 0.08&lt;/td&gt;
          &lt;td&gt;360d653&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 2070 Super&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1199.13 ± 7.70&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;64.64 ± 0.20&lt;/td&gt;
          &lt;td&gt;b7552cf&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3070 Mobile&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1689.40 ± 19.57&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;63.64 ± 0.39&lt;/td&gt;
          &lt;td&gt;ceff6bb&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla P100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;678.14 ± 1.40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;63.16 ± 0.06&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD BC-250&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;370.66 ± 0.04&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;62.32 ± 0.32&lt;/td&gt;
          &lt;td&gt;5886f4f&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6650 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1029.52 ± 1.21&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;62.14 ± 0.02&lt;/td&gt;
          &lt;td&gt;dbb852b&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4060 Mobile&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2135.66 ± 23.18&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;59.53 ± 0.03&lt;/td&gt;
          &lt;td&gt;a5c07dc&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla P40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;488.06 ± 0.27&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;59.36 ± 0.16&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1660 Ti Mobile&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;511.67 ± 2.85&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;56.60 ± 0.07&lt;/td&gt;
          &lt;td&gt;b43556e&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Instinct MI25&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;439.42 ± 0.34&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;54.69 ± 0.03&lt;/td&gt;
          &lt;td&gt;2739a71&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6600 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;574.65 ± 0.86&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;53.92 ± 0.11&lt;/td&gt;
          &lt;td&gt;091592d&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen AI Max+ 395&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1288.96 ± 6.49&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;53.59 ± 0.38&lt;/td&gt;
          &lt;td&gt;7f76692&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7600 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;840.85 ± 3.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;53.02 ± 0.01&lt;/td&gt;
          &lt;td&gt;01d8eaa&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc A770&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1073.85 + 29.68&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;52.56 + 0.11&lt;/td&gt;
          &lt;td&gt;a69d54f&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GB10&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2737.79 ± 19.56&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;52.28 ± 0.03&lt;/td&gt;
          &lt;td&gt;b9da444&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD FirePro S9300 x2&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;247.26 ± 0.43&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;51.86 ± 0.11&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;Split across two GPUs&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6600&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;761.89 ± 1.76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;50.63 ± 0.02&lt;/td&gt;
          &lt;td&gt;b1c70e2&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX Vega 56&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;439.87 ± 0.61&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;50.23 ± 0.14&lt;/td&gt;
          &lt;td&gt;92c0b38&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc B570&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;913.95 ± 0.90&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;49.64 ± 0.03&lt;/td&gt;
          &lt;td&gt;7f76692&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3060 Mobile&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1059.76 ± 3.54&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;49.03 ± 0.13&lt;/td&gt;
          &lt;td&gt;dbb3a47&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6800M&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;861.99 ± 7.67&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;48.71 ± 0.71&lt;/td&gt;
          &lt;td&gt;8e6f8bc&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6600M&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;605.59 ± 0.65&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;48.21 ± 0.07&lt;/td&gt;
          &lt;td&gt;fe5b78c&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc A770M&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;875.92 ± 2.16&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;47.69 ± 0.16&lt;/td&gt;
          &lt;td&gt;eeee367&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia P104-100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;311.90 ± 0.22&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;46.18 ± 0.05&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX Vega 64&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;356.08 ± 0.09&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;45.73 ± 0.18&lt;/td&gt;
          &lt;td&gt;ec428b0&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX A2000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1245.19 ± 8.76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;45.52 ± 0.54&lt;/td&gt;
          &lt;td&gt;b1afcab&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7600M XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;459.39 ± 2.34&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;45.28 ± 0.10&lt;/td&gt;
          &lt;td&gt;b9ab0a4&lt;/td&gt;
          &lt;td&gt;eGPU&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro V340&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;375.41 ± 0.24&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;45.16 ± 0.06&lt;/td&gt;
          &lt;td&gt;9da3dcd&lt;/td&gt;
          &lt;td&gt;Split across two GPUs&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1070 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;297.50 ± 0.54&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;42.86 ± 1.20&lt;/td&gt;
          &lt;td&gt;860a9e4&lt;/td&gt;
          &lt;td&gt;eGPU&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc A750&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1075.94 ± 13.89&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;42.66 ± 0.18&lt;/td&gt;
          &lt;td&gt;c1b1876&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4050 Mobile&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1154.28 + 15.76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;41.89 + 0.10&lt;/td&gt;
          &lt;td&gt;d79d8f3&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1070&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;321.57 ± 0.93&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;41.48 ± 0.09&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc Pro B50&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;193.50 ± 0.24&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;39.99 ± 0.10&lt;/td&gt;
          &lt;td&gt;7b43f55&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla M40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;92.48 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;39.35 ± 1.22&lt;/td&gt;
          &lt;td&gt;b8372ee&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 580&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;258.03 ± 0.71&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;39.32 ± 0.03&lt;/td&gt;
          &lt;td&gt;de4c07f&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 470&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;218.07 ± 0.56&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;38.63 ± 0.21&lt;/td&gt;
          &lt;td&gt;e288693&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro W5500&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;315.39 ± 3.76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;36.82 ± 0.38&lt;/td&gt;
          &lt;td&gt;860a9e4&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 480&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;248.66 ± 0.28&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;34.71 ± 0.14&lt;/td&gt;
          &lt;td&gt;3b15924&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M2 Ultra&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;205.98 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;34.34 ± 0.12&lt;/td&gt;
          &lt;td&gt;dbb852b&lt;/td&gt;
          &lt;td&gt;Asahi Linux&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 980&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;186.24 ± 0.09&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;33.90 ± 0.51&lt;/td&gt;
          &lt;td&gt;860a9e4&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia P106-100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;183.78 ± 0.26&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;29.77 ± 0.04&lt;/td&gt;
          &lt;td&gt;23bc779&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD FirePro W8100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;155.22 ± 0.17&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;29.52 ± 0.05&lt;/td&gt;
          &lt;td&gt;4536363&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla P4&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;265.54 ± 0.21&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;28.03 ± 0.14&lt;/td&gt;
          &lt;td&gt;24d2ee0&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6500 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;255.25 ± 0.35&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;27.81 ± 0.10&lt;/td&gt;
          &lt;td&gt;g9fdfcd&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M3&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;263.70 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;26.39 ± 0.14&lt;/td&gt;
          &lt;td&gt;b9ab0a4&lt;/td&gt;
          &lt;td&gt;MoltenVK&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD FirePro S10000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;94.78 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;25.32 ± 0.02&lt;/td&gt;
          &lt;td&gt;914a82d&lt;/td&gt;
          &lt;td&gt;Split across two GPUs&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Quadro P2000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;169.55 ± 0.17&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;23.05 ± 0.03&lt;/td&gt;
          &lt;td&gt;63f8fe0&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core Ultra 200 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;544.95 ± 4.15&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;22.49 ± 0.09&lt;/td&gt;
          &lt;td&gt;cea560f&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen AI 9 300 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;479.07 ± 0.41&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;22.41 ± 0.18&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 6000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;240.89 ± 0.52&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;21.26 ± 0.08&lt;/td&gt;
          &lt;td&gt;ee09828&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M2 Pro&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;62.70 ± 0.03&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;20.95 ± 0.11&lt;/td&gt;
          &lt;td&gt;1fe0029&lt;/td&gt;
          &lt;td&gt;Asahi Linux&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1050 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;136.42 ± 0.67&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;20.96 ± 0.21&lt;/td&gt;
          &lt;td&gt;2f0c2db&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 8000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;266.19 ± 1.36&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;20.53 ± 0.08&lt;/td&gt;
          &lt;td&gt;a5c07dc&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 7000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;281.62 ± 1.56&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;19.91 ± 0.07&lt;/td&gt;
          &lt;td&gt;ebce03e&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen Z1 Extreme&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;199.36 ± 7.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;18.77 ± 0.02&lt;/td&gt;
          &lt;td&gt;53ff6b9&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD FirePro D700&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;69.95 ± 0.04&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;16.62 ± 0.01&lt;/td&gt;
          &lt;td&gt;d3bd719&lt;/td&gt;
          &lt;td&gt;MoltenVK, running in FP16 mode on FP32 only chip&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro WX 4100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;78.79 ± 0.10&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;16.05 ± 0.07&lt;/td&gt;
          &lt;td&gt;860a9e4&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M2&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;50.79 ± 0.16&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;13.50 ± 0.02&lt;/td&gt;
          &lt;td&gt;8c0d6bb&lt;/td&gt;
          &lt;td&gt;Asahi Linux&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M1&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;38.29 ± 0.00&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;12.47 ± 0.03&lt;/td&gt;
          &lt;td&gt;2370665&lt;/td&gt;
          &lt;td&gt;Asahi Linux&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 5000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;90.55 ± 0.08&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10.98 ± 0.07&lt;/td&gt;
          &lt;td&gt;d84635b&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core 1100 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;187.20 ± 1.78&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10.39 ± 0.04&lt;/td&gt;
          &lt;td&gt;abb9f3c&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 550&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;52.66 ± 0.49&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10.20 ± 0.01&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 4000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;103.87 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9.63 ± 0.01&lt;/td&gt;
          &lt;td&gt;4b385bf&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla K80&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;89.46 ± 0.10&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9.39 ± 0.06&lt;/td&gt;
          &lt;td&gt;5d46bab&lt;/td&gt;
          &lt;td&gt;Running on single GPU&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla K40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;64.37 ± 0.09&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9.30 ± 0.19&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;MediaTek Dimensity 9400&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;38.36 ± 15.15&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8.92 ± 0.06&lt;/td&gt;
          &lt;td&gt;b9ab0a4&lt;/td&gt;
          &lt;td&gt;GPU supports coopmat but pp512 is faster with it turned off&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core Ultra 100 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;185.51 ± 0.22&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8.21 ± 0.07&lt;/td&gt;
          &lt;td&gt;1d72c84&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 3000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;48.63 ± 0.10&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8.49 ± 0.01&lt;/td&gt;
          &lt;td&gt;1fe0029&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;CIX CD8180&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2.80 ± 0.01&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;5.51 ± 0.00&lt;/td&gt;
          &lt;td&gt;4dca015&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core 1000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;25.58 ± 0.00&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4.25 ± 0.18&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core 8000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;25.43 ± 0.17&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3.35 ± 0.03&lt;/td&gt;
          &lt;td&gt;c4df49a&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel N150&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;28.84 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2.93 ± 0.00&lt;/td&gt;
          &lt;td&gt;4f63cd7&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;llama-2-7b-q4_0-fa-enabled&#34;&gt;Llama 2 7B, Q4_0, FA enabled
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Chip&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;pp512 t/s&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;tg128 t/s&lt;/th&gt;
          &lt;th&gt;Commit&lt;/th&gt;
          &lt;th&gt;Comments&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 5090&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;11796.38 ± 601.36&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;273.68 ± 0.52&lt;/td&gt;
          &lt;td&gt;ca71fb9&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7900 XTX&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3332.90 ± 11.47&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;195.30 ± 0.23&lt;/td&gt;
          &lt;td&gt;2f0c2db&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 5080&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8054.59 ± 35.68&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;192.17 ± 0.21&lt;/td&gt;
          &lt;td&gt;f6b533d&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4090&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10830.41 ± 36.25&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;190.10 ± 0.31&lt;/td&gt;
          &lt;td&gt;4ae88d0&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia A100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;7064.40 ± 1.63&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;170.56 ± 0.02&lt;/td&gt;
          &lt;td&gt;2257758&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3090&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4732.33 ± 4.80&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;162.28 ± 0.21&lt;/td&gt;
          &lt;td&gt;4ae88d0&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4080 Super&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8007.37 ± 46.03&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;150.20 ± 0.26&lt;/td&gt;
          &lt;td&gt;81086cd&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3080&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4913.83 ± 21.52&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;145.74 ± 0.16&lt;/td&gt;
          &lt;td&gt;7c7d6ce&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla V100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1411.25 ± 2.12&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;142.13 ± 0.03&lt;/td&gt;
          &lt;td&gt;7d77f07&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX A5000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4071.22 ± 13.13&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;140.43 ± 0.22&lt;/td&gt;
          &lt;td&gt;4ae88d0&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 9070 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4911.74 ± 28.52&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;138.20 ± 0.18&lt;/td&gt;
          &lt;td&gt;e9fd8dc&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 5070 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;6764.53 ± 11.95&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;135.65 ± 0.02&lt;/td&gt;
          &lt;td&gt;d13d0f6&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon AI Pro R9700&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4333.83 ± 29.36&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;130.90 ± 0.12&lt;/td&gt;
          &lt;td&gt;3191462&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7900 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3043.93 ± 10.42&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;124.20 ± 0.09&lt;/td&gt;
          &lt;td&gt;71e74a3&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7800 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2094.64 ± 14.38&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;119.63 ± 0.13&lt;/td&gt;
          &lt;td&gt;4fdbc1e&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 9070&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3277.24 ± 18.17&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;119.55 ± 0.06&lt;/td&gt;
          &lt;td&gt;21c17b5&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7900 GRE&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2402.07 ± 22.50&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;116.77 ± 0.08&lt;/td&gt;
          &lt;td&gt;4b2a477&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M3 Ultra&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1115.55 ± 0.75&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;115.99 ± 0.12&lt;/td&gt;
          &lt;td&gt;2d451c8&lt;/td&gt;
          &lt;td&gt;MoltenVK&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc Pro B70&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3314.53 ± 17.95&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;111.63 ± 0.05&lt;/td&gt;
          &lt;td&gt;b863507&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Titan V&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;792.74 ± 4.30&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;109.21 ± 0.72&lt;/td&gt;
          &lt;td&gt;e56abd2&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro VII&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;783.94 ± 0.77&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;108.45 ± 0.48&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6900 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1761.93 ± 4.75&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;106.15 ± 0.04&lt;/td&gt;
          &lt;td&gt;a972fae&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 2080 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1936.25 ± 32.08&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;100.99 ± 0.24&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6800 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1704.79 ± 0.71&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;100.50 ± 0.06&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro W6800X Duo&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;795.28 ± 0.72&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;100.08 ± 0.02&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 5060 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3912.65 ± 5.86&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;97.01 ± 0.14&lt;/td&gt;
          &lt;td&gt;89f10ba&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6800&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1749.46 ± 3.36&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;96.65 ± 0.48&lt;/td&gt;
          &lt;td&gt;4b385bf&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4070&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;4293.57 ± 27.70&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;91.49 ± 0.89&lt;/td&gt;
          &lt;td&gt;9a48399&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6750 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;997.05 ± 0.45&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;82.29 ± 0.06&lt;/td&gt;
          &lt;td&gt;228f34c&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6700 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1010.90 ± 12.89&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;81.86 ± 0.19&lt;/td&gt;
          &lt;td&gt;6d75883&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3060&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2012.88 ± 10.12&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;80.59 ± 0.02&lt;/td&gt;
          &lt;td&gt;92c0b38&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro V620&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1556.31 ± 2.82&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;79.24 ± 0.09&lt;/td&gt;
          &lt;td&gt;03d4698&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX A4000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2482.74 ± 26.05&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;76.07 ± 0.08&lt;/td&gt;
          &lt;td&gt;f5245b5&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla T10&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1840.14 ± 1.22&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;76.05 ± 0.13&lt;/td&gt;
          &lt;td&gt;7f76692&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 5700 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;538.31 ± 0.35&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;74.43 ± 0.03&lt;/td&gt;
          &lt;td&gt;4fdbc1e&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc B580&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;419.49 ± 3.37&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;72.00 ± 0.24&lt;/td&gt;
          &lt;td&gt;7f76692&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M4 Max&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;557.46 ± 26.87&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;71.79 ± 4.16&lt;/td&gt;
          &lt;td&gt;1ece0cb6&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro W5700&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;446.98 ± 0.39&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;71.30 ± 0.24&lt;/td&gt;
          &lt;td&gt;23bc779&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc Pro B60&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;274.76 ± 0.27&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;70.54 ± 0.03&lt;/td&gt;
          &lt;td&gt;516a4ca&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 9060 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1915.41 ± 7.90&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;70.52 ± 0.16&lt;/td&gt;
          &lt;td&gt;ed52f36&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla P100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;685.51 ± 0.88&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;66.48 ± 0.02&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6650 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1088.90 ± 0.40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;64.53 ± 0.75&lt;/td&gt;
          &lt;td&gt;dbb852b&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1080 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;529.96 ± 0.38&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;64.63 ± 0.10&lt;/td&gt;
          &lt;td&gt;360d653&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD BC-250&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;356.87 ± 1.24&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;63.14 ± 0.09&lt;/td&gt;
          &lt;td&gt;5886f4f&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 3070 Mobile&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1832.07 ± 57.14&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;62.92 ± 0.37&lt;/td&gt;
          &lt;td&gt;ceff6bb&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX 4060 Mobile&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2358.03 ± 12.17&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;60.01 ± 0.08&lt;/td&gt;
          &lt;td&gt;a5c07dc&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla P40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;484.37 ± 0.27&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;59.22 ± 0.15&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1660 Ti Mobile&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;514.34 ± 0.88&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;57.30 ± 0.42&lt;/td&gt;
          &lt;td&gt;b43556e&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 7600 XT&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1024.38 ± 7.56&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;56.11 ± 0.02&lt;/td&gt;
          &lt;td&gt;01d8eaa&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD FirePro S9300 x2&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;243.33 ± 0.22&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;55.64 ± 0.06&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;Split across two GPUs&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GB10&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3279.89 ± 26.78&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;53.64 ± 0.05&lt;/td&gt;
          &lt;td&gt;b9da444&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6600&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;808.76 ± 0.15&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;53.24 ± 0.03&lt;/td&gt;
          &lt;td&gt;b1c70e2&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc A770&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1119.68 + 30.25&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;53.07 + 0.09&lt;/td&gt;
          &lt;td&gt;a69d54f&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen AI Max+ 395&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1357.07 ± 10.94&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;53.00 ± 0.13&lt;/td&gt;
          &lt;td&gt;7f76692&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX Vega 56&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;428.54 ± 0.50&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;52.66 ± 0.03&lt;/td&gt;
          &lt;td&gt;92c0b38&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc B570&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;288.51 ± 0.09&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;50.49 ± 0.05&lt;/td&gt;
          &lt;td&gt;7f76692&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia P104-100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;325.30 ± 0.25&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;48.64 ± 0.04&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro V340&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;360.23 ± 0.74&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;47.54 ± 0.06&lt;/td&gt;
          &lt;td&gt;9da3dcd&lt;/td&gt;
          &lt;td&gt;Split across two GPUs&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 6800M&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;784.16 ± 2.76&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;49.06 ± 0.34&lt;/td&gt;
          &lt;td&gt;8e6f8bc&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX Vega 64&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;320.12 ± 0.22&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;47.06 ± 0.01&lt;/td&gt;
          &lt;td&gt;ec428b0&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia RTX A2000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;1361.85 ± 3.26&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;45.69 ± 0.20&lt;/td&gt;
          &lt;td&gt;b1afcab&lt;/td&gt;
          &lt;td&gt;coopmat2&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc A770M&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;384.74 ± 0.78&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;45.68 ± 0.06&lt;/td&gt;
          &lt;td&gt;eeee367&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc A750&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;303.37 ± 1.44&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;43.96 ± 0.03&lt;/td&gt;
          &lt;td&gt;c1b1876&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1070 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;292.85 ± 0.23&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;43.42 ± 0.34&lt;/td&gt;
          &lt;td&gt;860a9e4&lt;/td&gt;
          &lt;td&gt;eGPU&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1070&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;330.84 ± 1.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;43.33 ± 0.06&lt;/td&gt;
          &lt;td&gt;360d653&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla M40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;93.35 ± 0.01&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;41.68 ± 0.01&lt;/td&gt;
          &lt;td&gt;b8372ee&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Arc Pro B50&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;132.48 ± 0.04&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;41.02 ± 0.04&lt;/td&gt;
          &lt;td&gt;7b43f55&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 470&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;197.26 ± 0.27&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;37.28 ± 0.11&lt;/td&gt;
          &lt;td&gt;3769fe6&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon RX 480&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;194.52 ± 0.61&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;37.23 ± 0.09&lt;/td&gt;
          &lt;td&gt;0bcb40b&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M2 Ultra&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;198.83 ± 0.85&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;198.83 ± 0.85&lt;/td&gt;
          &lt;td&gt;dbb852b&lt;/td&gt;
          &lt;td&gt;Asahi Linux&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 980&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;180.97 ± 0.74&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;34.16 ± 0.10&lt;/td&gt;
          &lt;td&gt;860a9e4&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia P106-100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;183.40 ± 0.34&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;30.79 ± 0.32&lt;/td&gt;
          &lt;td&gt;23bc779&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD FirePro W8100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;140.52 ± 0.34&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;29.28 ± 0.14&lt;/td&gt;
          &lt;td&gt;4536363&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla P4&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;287.14 ± 0.29&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;28.37 ± 0.24&lt;/td&gt;
          &lt;td&gt;24d2ee0&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Quadro P2000&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;181.71 ± 0.12&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;23.77 ± 0.02&lt;/td&gt;
          &lt;td&gt;63f8fe0&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core Ultra 200 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;536.48 ± 1.27&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;23.05 ± 0.04&lt;/td&gt;
          &lt;td&gt;cea560f&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen AI 9 300 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;532.59 ± 3.55&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;22.31 ± 0.06&lt;/td&gt;
          &lt;td&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 6000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;277.91 ± 0.37&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;21.15 ± 0.09&lt;/td&gt;
          &lt;td&gt;ee09828&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M2 Pro&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;58.86 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;20.97 ± 0.03&lt;/td&gt;
          &lt;td&gt;1fe0029&lt;/td&gt;
          &lt;td&gt;Asahi Linux&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 8000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;297.39 ± 1.22&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;20.59 ± 0.38&lt;/td&gt;
          &lt;td&gt;a5c07dc&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 7000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;312.85 ± 2.51&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;20.09 ± 0.35&lt;/td&gt;
          &lt;td&gt;835b2b9&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia GTX 1050 Ti&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;127.54 ± 1.03&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;20.08 ± 0.17&lt;/td&gt;
          &lt;td&gt;2f0c2db&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Radeon Pro WX 4100&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;75.59 ± 0.19&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;16.56 ± 0.04&lt;/td&gt;
          &lt;td&gt;860a9e4&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M1&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;35.93 ± 0.00&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;12.85 ± 0.02&lt;/td&gt;
          &lt;td&gt;2370665&lt;/td&gt;
          &lt;td&gt;Asahi Linux&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Apple M2&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;46.81 ± 0.08&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;12.25 ± 2.30&lt;/td&gt;
          &lt;td&gt;8c0d6bb&lt;/td&gt;
          &lt;td&gt;Asahi Linux&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 5000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;79.06 ± 0.01&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10.75 ± 0.00&lt;/td&gt;
          &lt;td&gt;5d195f1&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core 1100 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;174.77 ± 4.47&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;10.58 ± 0.03&lt;/td&gt;
          &lt;td&gt;abb9f3c&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla K40&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;64.37 ± 0.02&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9.92 ± 0.06&lt;/td&gt;
          &lt;td&gt;eec1e33&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 4000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;113.32 ± 0.01&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9.87 ± 0.01&lt;/td&gt;
          &lt;td&gt;4b385bf&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Nvidia Tesla K80&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;88.26 ± 0.19&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;9.49 ± 0.01&lt;/td&gt;
          &lt;td&gt;5d46bab&lt;/td&gt;
          &lt;td&gt;Running on single GPU&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;AMD Ryzen 5 3000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;47.41 ± 0.14&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;8.47 ± 0.01&lt;/td&gt;
          &lt;td&gt;1fe0029&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core Ultra 100 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;77.66 ± 2.75&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;7.75 ± 0.05&lt;/td&gt;
          &lt;td&gt;2e89f76&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel Core 8000 Series&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;25.55 ± 0.04&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;3.35 ± 0.02&lt;/td&gt;
          &lt;td&gt;c4df49a&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Intel N150&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;25.59 ± 0.00&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;2.91 ± 0.00&lt;/td&gt;
          &lt;td&gt;4f63cd7&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;これらの表の使い方&#34;&gt;これらの表の使い方
&lt;/h2&gt;&lt;p&gt;GPU を買いたい、または手元のマシンがおおよそどの位置にあるかを知りたいだけなら、実用的な読み方は次の 3 ステップです。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;まず &lt;code&gt;tg128&lt;/code&gt; と &lt;code&gt;pp512&lt;/code&gt; のどちらを重視するかを見る。&lt;br&gt;
日常会話、コーディング、チャットの体感なら &lt;code&gt;tg128&lt;/code&gt; を優先します。長いコンテキストの処理、バッチ処理、サーバー側で大量の prompt をさばく用途なら &lt;code&gt;pp512&lt;/code&gt; を見るべきです。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;次に実際に使うバックエンドを見る。&lt;br&gt;
Nvidia なら通常 &lt;code&gt;CUDA&lt;/code&gt; が実際の上限に近く、AMD なら &lt;code&gt;ROCm&lt;/code&gt; と &lt;code&gt;Vulkan&lt;/code&gt; を先に照合します。クロスプラットフォーム互換を重視する場合は &lt;code&gt;Vulkan&lt;/code&gt; が参考になります。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;最後に &lt;code&gt;FA&lt;/code&gt; を見る。&lt;br&gt;
多くの GPU では &lt;code&gt;FA&lt;/code&gt; 有効時に &lt;code&gt;pp512&lt;/code&gt; がより大きく伸びますが、&lt;code&gt;tg128&lt;/code&gt; が同じだけ伸びるとは限りません。単一の最高スコアだけで判断しないほうが安全です。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;ひと言でまとめると&#34;&gt;ひと言でまとめると
&lt;/h2&gt;&lt;p&gt;同じ &lt;code&gt;llama.cpp&lt;/code&gt; ベンチマークでも、&lt;code&gt;pp512&lt;/code&gt;、&lt;code&gt;tg128&lt;/code&gt;、&lt;code&gt;Q4_0&lt;/code&gt;、&lt;code&gt;FA&lt;/code&gt;、&lt;code&gt;CUDA / ROCm / Vulkan&lt;/code&gt; はそれぞれまったく違う軸を表します。先に条件を切り分けてから数字を見ることで、ランキングに意味が出ます。&lt;/p&gt;
&lt;p&gt;最短で覚えるなら、次のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CUDA&lt;/code&gt; は現時点で全体的に最も強い&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ROCm&lt;/code&gt; はハイエンド AMD GPU でかなり戦える&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Vulkan&lt;/code&gt; は対応範囲が最も広く、古い GPU、内蔵 GPU、Intel Arc、Apple Asahi まで比較対象がある&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tg128&lt;/code&gt; は &lt;code&gt;pp512&lt;/code&gt; より日常の実際の体感に近い&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;元データ&#34;&gt;元データ
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;CUDA discussion #15013: &lt;a class=&#34;link&#34; href=&#34;https://github.com/ggml-org/llama.cpp/discussions/15013&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/ggml-org/llama.cpp/discussions/15013&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Apple Silicon discussion #4167: &lt;a class=&#34;link&#34; href=&#34;https://github.com/ggml-org/llama.cpp/discussions/4167&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/ggml-org/llama.cpp/discussions/4167&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;ROCm discussion #15021: &lt;a class=&#34;link&#34; href=&#34;https://github.com/ggml-org/llama.cpp/discussions/15021&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/ggml-org/llama.cpp/discussions/15021&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Vulkan discussion #10879: &lt;a class=&#34;link&#34; href=&#34;https://github.com/ggml-org/llama.cpp/discussions/10879&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/ggml-org/llama.cpp/discussions/10879&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        <item>
        <title>GPU 推論速度テストでよく見る指標の意味: FA、pp512、tg128、Q4_0 とは何か</title>
        <link>https://knightli.com/ja/2026/04/23/how-to-read-llm-cuda-scoreboard-fa-pp512-tg128-q4-0/</link>
        <pubDate>Thu, 23 Apr 2026 00:15:00 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/23/how-to-read-llm-cuda-scoreboard-fa-pp512-tg128-q4-0/</guid>
        <description>&lt;p&gt;ローカル LLM や GPU 推論速度テストを見始めると、すぐに &lt;code&gt;FA&lt;/code&gt;、&lt;code&gt;pp512&lt;/code&gt;、&lt;code&gt;tg128&lt;/code&gt;、&lt;code&gt;Q4_0&lt;/code&gt; といった略称に出会います。どれも性能指標のように見えますが、文脈がないとかなりわかりにくいです。&lt;/p&gt;
&lt;p&gt;たとえば、次のような行を見かけることがあります。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;CUDA Scoreboard for Llama 2 7B, Q4_0 (no FA)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;さらにその下には、&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pp512 t/s
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tg128 t/s
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;のような表示が並びます。&lt;/p&gt;
&lt;p&gt;これらを分解して理解しないままだと、この種の速度テストが何を測っているのか、また異なる GPU の結果をどう比較すべきかが見えてきません。&lt;/p&gt;
&lt;p&gt;この記事では、どの GPU を買うべきかではなく、GPU 推論速度テストでよく出てくる指標そのものを整理します。&lt;/p&gt;
&lt;h2 id=&#34;まずタイトル行全体が何を言っているのか&#34;&gt;まずタイトル行全体が何を言っているのか
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;CUDA Scoreboard for Llama 2 7B, Q4_0 (no FA)&lt;/code&gt; のような一行には、すでにかなり多くの前提が含まれています。&lt;/p&gt;
&lt;p&gt;少なくとも次の四つの情報があります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CUDA&lt;/code&gt;: NVIDIA GPU の CUDA 経路で測っている&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Llama 2 7B&lt;/code&gt;: テスト対象は &lt;code&gt;Llama 2&lt;/code&gt; の &lt;code&gt;7B&lt;/code&gt; モデル&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Q4_0&lt;/code&gt;: モデルは 4-bit 量子化形式&lt;/li&gt;
&lt;li&gt;&lt;code&gt;no FA&lt;/code&gt;: &lt;code&gt;Flash Attention&lt;/code&gt; を有効にしていない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;つまりこれは要するに、&lt;/p&gt;
&lt;p&gt;「NVIDIA GPU 上で、ある量子化済み LLM を、特定の推論経路で動かしたときの速度テスト」&lt;/p&gt;
&lt;p&gt;という意味になります。&lt;/p&gt;
&lt;h2 id=&#34;fa-とは何か-flash-attention&#34;&gt;FA とは何か: Flash Attention
&lt;/h2&gt;&lt;p&gt;ここでいう &lt;code&gt;FA&lt;/code&gt; は &lt;code&gt;Flash Attention&lt;/code&gt; の略です。&lt;/p&gt;
&lt;p&gt;これは大規模モデルの学習や推論で非常に重要な最適化のひとつで、主に Attention 計算の実装を高速化するための技術です。Transformer 系モデルでは、Attention 部分が最も重い処理のひとつだからです。&lt;/p&gt;
&lt;p&gt;従来の Attention 実装には次のような問題があります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;グローバルメモリの読み書きが多い&lt;/li&gt;
&lt;li&gt;中間結果が増えやすい&lt;/li&gt;
&lt;li&gt;メモリと演算コアの間でデータ移動が多い&lt;/li&gt;
&lt;li&gt;コンテキストが長いほど負担が重くなる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;Flash Attention&lt;/code&gt; は計算順序を工夫し、より多くの処理を高速なメモリ階層の中で完結させることで、この負担を減らします。&lt;/p&gt;
&lt;p&gt;その典型的な効果は次の三つです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;速くなる&lt;/li&gt;
&lt;li&gt;メモリ使用量が減る&lt;/li&gt;
&lt;li&gt;数学的には通常の Attention と等価で、精度を落とす近道ではない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;そのため、現在の推論・学習系フレームワークでは重要な最適化として扱われています。&lt;/p&gt;
&lt;h2 id=&#34;no-fa-とは何か&#34;&gt;no FA とは何か
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;FA&lt;/code&gt; が &lt;code&gt;Flash Attention&lt;/code&gt; なら、&lt;code&gt;no FA&lt;/code&gt; は単純に &lt;code&gt;Flash Attention&lt;/code&gt; を使っていないという意味です。&lt;/p&gt;
&lt;p&gt;つまり、そのベンチマークはより伝統的な Attention 実装で測られています。&lt;/p&gt;
&lt;p&gt;なぜわざわざ &lt;code&gt;no FA&lt;/code&gt; と書くのかというと、主に次の理由があります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;比較用の基準として残したい&lt;/li&gt;
&lt;li&gt;ハードウェアやソフトウェアの都合で &lt;code&gt;FA&lt;/code&gt; を使えないケースがある&lt;/li&gt;
&lt;li&gt;条件の違うスコアを混ぜて読まれないようにしたい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;したがって &lt;code&gt;no FA&lt;/code&gt; は「GPU が弱い」という意味ではありません。より正確には、&lt;/p&gt;
&lt;p&gt;「このスコアは Flash Attention を使わない条件で測られた」&lt;/p&gt;
&lt;p&gt;という意味です。&lt;/p&gt;
&lt;h2 id=&#34;q4_0-とは何か-量子化形式&#34;&gt;Q4_0 とは何か: 量子化形式
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;Q4_0&lt;/code&gt; は 4-bit 量子化形式のひとつです。&lt;/p&gt;
&lt;p&gt;LLM の元の重みは通常、こんな低精度では保存されていません。そのままではサイズが大きすぎるため、量子化によって重みをより少ない bit 数で表現し、一般的な GPU でも動かしやすくします。&lt;/p&gt;
&lt;p&gt;ざっくり言えば、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Q&lt;/code&gt;: Quantization&lt;/li&gt;
&lt;li&gt;&lt;code&gt;4&lt;/code&gt;: 4-bit&lt;/li&gt;
&lt;li&gt;&lt;code&gt;_0&lt;/code&gt;: 具体的な量子化方式の識別&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;という理解で十分です。&lt;/p&gt;
&lt;p&gt;重要なのは、量子化によって&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;モデルサイズが縮む&lt;/li&gt;
&lt;li&gt;VRAM 要求が下がる&lt;/li&gt;
&lt;li&gt;そのままでは載らないモデルも動かしやすくなる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;という点です。&lt;/p&gt;
&lt;p&gt;つまり &lt;code&gt;Llama 2 7B, Q4_0&lt;/code&gt; は、「7B モデル」ではあるものの、「4-bit 量子化された 7B モデル」を意味しています。&lt;/p&gt;
&lt;h2 id=&#34;pp512-ts-とは何か&#34;&gt;pp512 t/s とは何か
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;pp512&lt;/code&gt; は通常、&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Prompt Processing 512 tokens&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;を意味します。&lt;/p&gt;
&lt;p&gt;これは入力プロンプトを処理する速度の指標で、単位は &lt;code&gt;t/s&lt;/code&gt;、つまり &lt;code&gt;tokens per second&lt;/code&gt; です。&lt;/p&gt;
&lt;p&gt;ここでの &lt;code&gt;512&lt;/code&gt; は、テスト時の入力長が &lt;code&gt;512 token&lt;/code&gt; だったことを表しています。&lt;/p&gt;
&lt;p&gt;この指標が測っているのは「しゃべる速さ」ではなく、モデルが回答を始める前に、入力内容を読み込んで計算する速さです。言い換えると、「まずこちらの入力を読む段階」のスループットです。&lt;/p&gt;
&lt;p&gt;この段階の大きな特徴は、並列性が高いことです。&lt;/p&gt;
&lt;p&gt;入力系列はまとめて処理しやすいので、GPU はこの場面では高い並列度を活かせます。そのため &lt;code&gt;pp512&lt;/code&gt; の値は非常に大きくなることが多く、初めて見ると少し不自然に感じるほどです。&lt;/p&gt;
&lt;p&gt;たとえば&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pp512 ≈ 14000 t/s
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;のような値が出ても不思議ではありません。これは「入力処理の吞吐量」を測っているのであって、逐次生成の速さを測っているわけではないからです。&lt;/p&gt;
&lt;h2 id=&#34;tg128-ts-とは何か&#34;&gt;tg128 t/s とは何か
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;tg128&lt;/code&gt; は通常、&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Text Generation 128 tokens&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;を意味します。&lt;/p&gt;
&lt;p&gt;これは 128 token を連続生成したときの平均生成速度で、同じく単位は &lt;code&gt;t/s&lt;/code&gt; です。&lt;/p&gt;
&lt;p&gt;この指標は、私たちが普段感じる「モデルの返答速度」により近いです。実際に出力フェーズを測っているからです。&lt;/p&gt;
&lt;p&gt;ただし &lt;code&gt;pp512&lt;/code&gt; との最大の違いは、テキスト生成が一般に自己回帰的であることです。&lt;/p&gt;
&lt;p&gt;つまり、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;まず 1 個目の token を出す&lt;/li&gt;
&lt;li&gt;それが決まってから 2 個目を出す&lt;/li&gt;
&lt;li&gt;さらにその後に 3 個目を出す&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;という順番になります。&lt;/p&gt;
&lt;p&gt;そのため、入力処理のような大規模並列はかけにくく、速度はずっと低くなります。&lt;/p&gt;
&lt;p&gt;だからこそ、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pp512&lt;/code&gt; は数万 &lt;code&gt;t/s&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tg128&lt;/code&gt; は数百 &lt;code&gt;t/s&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;といった差が普通に起こります。&lt;/p&gt;
&lt;p&gt;これは測定ミスではなく、そもそも別の性質の処理を測っているためです。&lt;/p&gt;
&lt;h2 id=&#34;なぜ-pp512-と-tg128-の差がこんなに大きいのか&#34;&gt;なぜ pp512 と tg128 の差がこんなに大きいのか
&lt;/h2&gt;&lt;p&gt;ここは多くの人が最初に引っかかるポイントです。&lt;/p&gt;
&lt;p&gt;一言で言えば、&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pp512&lt;/code&gt; は並列吞吐、&lt;code&gt;tg128&lt;/code&gt; は逐次生成性能を見ているからです。&lt;/p&gt;
&lt;p&gt;もう少し丁寧に言うと、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;入力処理は並列化しやすい&lt;/li&gt;
&lt;li&gt;出力生成はトークンごとの逐次性が強い&lt;/li&gt;
&lt;li&gt;生成側はメモリ帯域やキャッシュ効率の影響を受けやすい&lt;/li&gt;
&lt;li&gt;そのため生成速度は入力処理よりかなり低くなりやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;これにより、GPU 間比較でも面白い現象が起きます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pp512&lt;/code&gt; では一方が勝つ&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tg128&lt;/code&gt; では別の GPU が少し速い&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ということがあり得るのです。&lt;/p&gt;
&lt;p&gt;これは矛盾ではなく、一方がピーク算力寄り、他方が実際の生成経路での帯域・遅延特性に左右されているからです。&lt;/p&gt;
&lt;h2 id=&#34;ts-はどう読むべきか&#34;&gt;t/s はどう読むべきか
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;t/s&lt;/code&gt; は &lt;code&gt;tokens per second&lt;/code&gt; の略です。&lt;/p&gt;
&lt;p&gt;つまり、モデルが 1 秒あたりに何 token を処理または生成できるかを表しています。&lt;/p&gt;
&lt;p&gt;ただし注意したいのは、&lt;code&gt;token&lt;/code&gt; は「文字」でも「単語」でもなく、モデルのトークナイザが切る単位だということです。モデルや言語によって、1 token が表すテキスト量はかなり変わります。&lt;/p&gt;
&lt;p&gt;そのため &lt;code&gt;t/s&lt;/code&gt; は主に次の用途に向いています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;同一モデル内で GPU を比べる&lt;/li&gt;
&lt;li&gt;同じ環境で設定違いを比べる&lt;/li&gt;
&lt;li&gt;同一フレームワークで最適化の有無を比べる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;逆に、モデルもフレームワークもトークナイザも違う条件をまたいで、絶対値だけで単純比較するのにはあまり向いていません。&lt;/p&gt;
&lt;h2 id=&#34;scoreboard-を読むときにまず押さえるべき点&#34;&gt;Scoreboard を読むときにまず押さえるべき点
&lt;/h2&gt;&lt;p&gt;毎回略称に埋もれたくないなら、まず次のポイントから見れば十分です。&lt;/p&gt;
&lt;h3 id=&#34;1-テスト対象モデルは何か&#34;&gt;1. テスト対象モデルは何か
&lt;/h3&gt;&lt;p&gt;たとえば &lt;code&gt;Llama 2 7B&lt;/code&gt; なのか、量子化形式は &lt;code&gt;Q4_0&lt;/code&gt; なのか。同じモデル・同じ量子化でなければ、結果の横比較はあまり意味を持ちません。&lt;/p&gt;
&lt;h3 id=&#34;2-重要な最適化が有効かどうか&#34;&gt;2. 重要な最適化が有効かどうか
&lt;/h3&gt;&lt;p&gt;もっとも典型的なのが &lt;code&gt;FA&lt;/code&gt; です。一方は &lt;code&gt;Flash Attention&lt;/code&gt; を有効にしていて、もう一方は無効なら、そのスコアは単純には比較できません。&lt;/p&gt;
&lt;h3 id=&#34;3-入力速度を見ているのか出力速度を見ているのか&#34;&gt;3. 入力速度を見ているのか、出力速度を見ているのか
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;pp512&lt;/code&gt; と &lt;code&gt;tg128&lt;/code&gt; は別物です。前者は「読み込みの速さ」、後者は「しゃべる速さ」に近いです。&lt;/p&gt;
&lt;h3 id=&#34;4-吞吐を見たいのか体感を見たいのか&#34;&gt;4. 吞吐を見たいのか、体感を見たいのか
&lt;/h3&gt;&lt;p&gt;長いプロンプトの立ち上がりを重視するなら &lt;code&gt;pp512&lt;/code&gt; が参考になります。実際の返答の滑らかさを気にするなら、&lt;code&gt;tg128&lt;/code&gt; の方が体感に近いことが多いです。&lt;/p&gt;
&lt;h2 id=&#34;もっとも実用的な覚え方&#34;&gt;もっとも実用的な覚え方
&lt;/h2&gt;&lt;p&gt;これらを一番短く覚えるなら、次のように整理すると実用的です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Q4_0&lt;/code&gt;: モデルは 4-bit 量子化されている&lt;/li&gt;
&lt;li&gt;&lt;code&gt;FA&lt;/code&gt;: Flash Attention を使っているかどうか&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pp512&lt;/code&gt;: 512 token の入力処理速度&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tg128&lt;/code&gt;: 128 token の出力生成速度&lt;/li&gt;
&lt;li&gt;&lt;code&gt;t/s&lt;/code&gt;: 1 秒あたり何 token か&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この五つだけ分かっていれば、似たような CUDA Scoreboard を見たときに、単に「どちらの数字が大きいか」ではなく、「その数字は何を測っているのか」を理解しやすくなります。&lt;/p&gt;
&lt;h2 id=&#34;結び&#34;&gt;結び
&lt;/h2&gt;&lt;p&gt;GPU ベンチマーク表が難しく見えるのは、指標そのものが神秘的だからではありません。モデル名、量子化、最適化の有無、入力処理と出力生成という別々の吞吐が、短い略称に圧縮されているからです。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;FA&lt;/code&gt;、&lt;code&gt;Q4_0&lt;/code&gt;、&lt;code&gt;pp512&lt;/code&gt;、&lt;code&gt;tg128&lt;/code&gt; を順に解きほぐしていけば、こうした Scoreboard は実はそれほど難しくありません。&lt;/p&gt;
&lt;p&gt;本当に大事なのは、GPU 名だけを見て終わらないことです。つまり、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;どのモデル条件で測ったのか&lt;/li&gt;
&lt;li&gt;最適化は有効か無効か&lt;/li&gt;
&lt;li&gt;入力を測っているのか、出力を測っているのか&lt;/li&gt;
&lt;li&gt;算力寄りなのか、実際の生成体感に近いのか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;を一緒に見ることです。&lt;/p&gt;
&lt;p&gt;そうすれば、似たようなベンチマーク表を見ても、その結果がどんな条件と意味を持っているのかを判断しやすくなります。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>大規模モデルでよく使われるテンソル型入門: FP32、FP16、BF16、TF32、FP8</title>
        <link>https://knightli.com/ja/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/</link>
        <pubDate>Wed, 22 Apr 2026 22:40:00 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/</guid>
        <description>&lt;p&gt;大規模モデルの学習、推論、デプロイに触れ始めると、すぐに &lt;code&gt;FP32&lt;/code&gt;、&lt;code&gt;FP16&lt;/code&gt;、&lt;code&gt;BF16&lt;/code&gt;、&lt;code&gt;TF32&lt;/code&gt;、&lt;code&gt;FP8&lt;/code&gt; という略称を見かけるようになります。これらはモデルの説明欄に添えられた小さなラベルのように見えますが、実際の意味はそれ以上に大きいです。&lt;/p&gt;
&lt;p&gt;これらの型は、数値をメモリ上にどう保持し、計算中にどう表現するかを決めます。そしてそれは、学習の安定性、推論速度、さらには 1 枚の GPU でどれだけ大きなモデルを扱えるかにまで影響します。&lt;/p&gt;
&lt;p&gt;そのため、大規模モデルの精度トレードオフを本当に理解したいなら、特定モデルのベンチマークを見る前に、まずこれらのテンソル型が何であり、なぜそのように設計されているのかを押さえるのが近道です。&lt;/p&gt;
&lt;h2 id=&#34;テンソル型は何を決めているのか&#34;&gt;テンソル型は何を決めているのか
&lt;/h2&gt;&lt;p&gt;大規模モデルの本質は、膨大なパラメータを使った行列演算です。そしてテンソル型とは、その数値をメモリ上でどう保持し、計算中にどう表現するかという形式です。&lt;/p&gt;
&lt;p&gt;このトレードオフは、たいてい次の三つの軸に集約されます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;精度&lt;/li&gt;
&lt;li&gt;VRAM 使用量&lt;/li&gt;
&lt;li&gt;計算速度&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;これは画像フォーマットに少し似ています。可逆形式は細部を多く保てますが、容量が大きく、読み込みも遅くなります。圧縮形式は人間に見えにくい情報を一部捨てる代わりに、サイズを小さくし処理を速くします。大規模モデルが同じような折衷を受け入れられるのは、非常に多くのパラメータの中では、ごく小さな数値の違いが最終出力に大きく影響しないことが多いからです。&lt;/p&gt;
&lt;p&gt;そのため、モデルの世界にはさまざまな精度フォーマットが存在します。&lt;/p&gt;
&lt;h2 id=&#34;数値はどう表現されるのか&#34;&gt;数値はどう表現されるのか
&lt;/h2&gt;&lt;p&gt;各フォーマットを見る前に、まず浮動小数点数の基本構造を押さえておくと理解しやすくなります。浮動小数点数は通常、次の三つの部分からできています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;符号ビット: 正負を決める&lt;/li&gt;
&lt;li&gt;指数ビット: 数値の表現範囲を決める&lt;/li&gt;
&lt;li&gt;仮数ビット: 数値の細かさを決める&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;大規模モデルでは仮数精度も重要ですが、多くの場合それ以上に問題になりやすいのが、指数ビット不足による表現範囲の狭さです。これがオーバーフローや学習不安定性につながります。多くのテンソル型設計は、限られた bit 数を「範囲」と「細かさ」の間でどう配分するか、という問題だと考えるとわかりやすいです。&lt;/p&gt;
&lt;p&gt;まずは次の図で全体像をつかむと理解しやすいです。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/tensor-format-overview.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;FP32、FP16、BF16、TF32、FP8 のビット構成の全体像&#34;
	
	
&gt;&lt;/p&gt;
&lt;h2 id=&#34;fp32-最も安定するが高価&#34;&gt;FP32: 最も安定するが高価
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;FP32&lt;/code&gt; は最も伝統的な単精度浮動小数点形式で、合計 32 bit、つまり 4 バイトです。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/fp32-layout.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;FP32 ビット構成図&#34;
	
	
&gt;&lt;/p&gt;
&lt;p&gt;長所はわかりやすいです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;数値範囲が広い&lt;/li&gt;
&lt;li&gt;精度が高い&lt;/li&gt;
&lt;li&gt;学習が最も安定しやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;その一方で、欠点も明確です。VRAM を大きく消費します。&lt;/p&gt;
&lt;p&gt;非常に大ざっぱに見積もるなら、&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;VRAM 使用量 ≈ パラメータ数 × 1 パラメータあたりのバイト数
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;となります。&lt;/p&gt;
&lt;p&gt;もし 27B モデルの重みをすべて &lt;code&gt;FP32&lt;/code&gt; で持つなら、重みだけでおよそ&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;27B × 4 bytes ≈ 108GB
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;が必要です。&lt;/p&gt;
&lt;p&gt;しかも、ここには活性値、KV Cache、オプティマイザ状態、そのほかの実行時オーバーヘッドは含まれていません。つまり、現代の大規模モデル推論や学習において、&lt;code&gt;FP32&lt;/code&gt; はもはや標準というより、「最も安定な基準形式」に近い存在です。&lt;/p&gt;
&lt;h2 id=&#34;fp16-サイズは半分ただし安定性はやや弱い&#34;&gt;FP16: サイズは半分、ただし安定性はやや弱い
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;FP16&lt;/code&gt; は各パラメータを 2 バイトに圧縮し、&lt;code&gt;FP32&lt;/code&gt; と比べてメモリ使用量をほぼ半分にします。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/fp16-layout.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;FP16 ビット構成図&#34;
	
	
&gt;&lt;/p&gt;
&lt;p&gt;同じ 27B モデルで重みサイズだけを見ると、&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;27B × 2 bytes ≈ 54GB
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;になります。&lt;/p&gt;
&lt;p&gt;これだけでも、なぜ多くのデプロイ手順で 27B モデルの VRAM 要件が 50GB 前後になるのかを説明できます。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;FP16&lt;/code&gt; の利点は明快です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;VRAM 圧力が大きく下がる&lt;/li&gt;
&lt;li&gt;スループットが高い&lt;/li&gt;
&lt;li&gt;初期の mixed precision 学習で広く使われた&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ただし弱点は、指数ビットが少なく、動的範囲が狭いことです。大規模モデル学習ではこれがオーバーフローを起こしやすくし、loss scaling のような補助技法を必要とするため、運用がやや面倒になります。&lt;/p&gt;
&lt;p&gt;そのため &lt;code&gt;FP16&lt;/code&gt; は今も一般的ですが、多くの場面では最も扱いやすい選択肢ではなくなっています。&lt;/p&gt;
&lt;h2 id=&#34;bf16-大規模モデル時代により実用的な半精度&#34;&gt;BF16: 大規模モデル時代により実用的な半精度
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;BF16&lt;/code&gt; も 2 バイトですが、&lt;code&gt;FP16&lt;/code&gt; とは設計思想が異なります。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/bf16-layout.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;BF16 ビット構成図&#34;
	
	
&gt;&lt;/p&gt;
&lt;p&gt;指数範囲を大きく確保することで、動的範囲を &lt;code&gt;FP32&lt;/code&gt; に近づけ、その代わり仮数精度を一部削っています。この折衷は大規模モデルに特に向いています。というのも、多くのモデルは仮数の数 bit より、まず範囲不足に敏感だからです。&lt;/p&gt;
&lt;p&gt;そのため、現在では多くの学習フレームワーク、大規模モデルの論文、実際のデプロイ環境が &lt;code&gt;BF16&lt;/code&gt; を好む傾向にあります。&lt;/p&gt;
&lt;p&gt;感覚的には次のように捉えるとわかりやすいです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;VRAM コストは &lt;code&gt;FP16&lt;/code&gt; に近い&lt;/li&gt;
&lt;li&gt;安定性は &lt;code&gt;FP32&lt;/code&gt; に近い&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ある 27B のデプロイ手順が 50GB 前後の VRAM を要求し、別の最適化された手順が 30GB 近くまで下がるなら、前者はまだ &lt;code&gt;FP16/BF16&lt;/code&gt; の層に留まり、後者はより低精度や量子化に踏み込んでいることが多いです。&lt;/p&gt;
&lt;h2 id=&#34;tf32-vram-削減ではなく-fp32-ワークフローの高速化&#34;&gt;TF32: VRAM 削減ではなく FP32 ワークフローの高速化
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;TF32&lt;/code&gt; は「また別の省メモリ形式」と誤解されやすいですが、役割はかなり違います。&lt;/p&gt;
&lt;p&gt;一般的には、指数範囲を大きく保ちつつ、仮数精度を短くした計算形式として捉えるとわかりやすいです。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/tf32-layout.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;TF32 計算形式図&#34;
	
	
&gt;&lt;/p&gt;
&lt;p&gt;ただし重要なのは、&lt;code&gt;TF32&lt;/code&gt; は &lt;code&gt;FP16/BF16&lt;/code&gt; のように重み保存のための形式というより、Tensor Core 上で使われる内部計算形式に近いという点です。&lt;/p&gt;
&lt;p&gt;これは主に NVIDIA が新しい GPU 世代で提供している計算モードであり、目的は VRAM 使用量を下げることではなく、もともと &lt;code&gt;FP32&lt;/code&gt; ベースだった学習ワークフローを、大きくコード変更せずに高速化することです。&lt;/p&gt;
&lt;p&gt;要点を一言で言えば、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;表向きは &lt;code&gt;FP32&lt;/code&gt; ワークフローのまま&lt;/li&gt;
&lt;li&gt;行列演算の内部でより高速な近似計算を行う&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ということです。&lt;/p&gt;
&lt;p&gt;したがって &lt;code&gt;TF32&lt;/code&gt; が解決するのは「&lt;code&gt;FP32&lt;/code&gt; が遅い」という問題であり、「&lt;code&gt;FP32&lt;/code&gt; が VRAM を食いすぎる」という問題ではありません。同じモデルで VRAM 要件が大きく変わる理由を考えるとき、&lt;code&gt;TF32&lt;/code&gt; は主因ではありません。&lt;/p&gt;
&lt;h2 id=&#34;fp8-さらに圧縮するがより高度な工学が必要&#34;&gt;FP8: さらに圧縮するが、より高度な工学が必要
&lt;/h2&gt;&lt;p&gt;さらに先へ進むと &lt;code&gt;FP8&lt;/code&gt; があります。1 つの数値をさらに少ない bit 数で表現し、メモリ帯域と保存コストをさらに下げます。&lt;/p&gt;
&lt;p&gt;これは単一の形式というより、代表的には &lt;code&gt;E4M3&lt;/code&gt; と &lt;code&gt;E5M2&lt;/code&gt; という二つの変種として現れます。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/fp8-layout.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;FP8 の代表的な変種の図&#34;
	
	
&gt;&lt;/p&gt;
&lt;p&gt;ただし &lt;code&gt;FP8&lt;/code&gt; の代償も明確です。bit 数がここまで少なくなると、範囲と精度を同時に保つのが難しくなります。そのため実際の工学では、順伝播、逆伝播、勾配など段階ごとに異なる変種を使ってバランスを取ることがよくあります。&lt;/p&gt;
&lt;p&gt;この系統は、より攻めた方針を表しています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;さらなる精度低下を受け入れる&lt;/li&gt;
&lt;li&gt;その代わり保存コストとスループットを改善する&lt;/li&gt;
&lt;li&gt;より成熟したハードウェアとフレームワークが必要になる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;将来性は高いですが、一般ユーザーが日常的に意識する分岐点としては、依然として &lt;code&gt;FP32&lt;/code&gt;、&lt;code&gt;FP16&lt;/code&gt;、&lt;code&gt;BF16&lt;/code&gt; が中心です。&lt;/p&gt;
&lt;h2 id=&#34;なぜこれらの型を理解することが重要なのか&#34;&gt;なぜこれらの型を理解することが重要なのか
&lt;/h2&gt;&lt;p&gt;最初はこれらの略称を、ダウンロードページに書かれた実装上の細部だと捉えがちです。ですが実際には、学習やデプロイをどう理解するかそのものに関わってきます。&lt;/p&gt;
&lt;p&gt;たとえば、同じ GPU を見ていても、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;なぜ学習では数値安定性がそれほど重視されるのか&lt;/li&gt;
&lt;li&gt;なぜ推論では量子化や低精度がすぐ話題になるのか&lt;/li&gt;
&lt;li&gt;なぜパラメータ数が近いモデルでもデプロイ難易度が大きく違うのか&lt;/li&gt;
&lt;li&gt;なぜある形式は重み保存向きで、別の形式は計算経路向きなのか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;といった疑問が出てきます。&lt;/p&gt;
&lt;p&gt;こうした問いを突き詰めていくと、結局は「精度、範囲、メモリ、速度をどう交換するか」という一点に戻ってきます。&lt;/p&gt;
&lt;p&gt;だから &lt;code&gt;FP32&lt;/code&gt;、&lt;code&gt;FP16&lt;/code&gt;、&lt;code&gt;BF16&lt;/code&gt;、&lt;code&gt;TF32&lt;/code&gt;、&lt;code&gt;FP8&lt;/code&gt; を理解することは、単に用語集を読めるようになるためではありません。学習設定、推論エンジン、デプロイ要件を見たときに、その数字の裏で何が交換されているのかを理解するためです。&lt;/p&gt;
&lt;h2 id=&#34;実用的な覚え方&#34;&gt;実用的な覚え方
&lt;/h2&gt;&lt;p&gt;最初から細かな仕様を全部覚えたくないなら、まずは次の順で捉えると実用的です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;FP32&lt;/code&gt;: 最も安定、最も高価&lt;/li&gt;
&lt;li&gt;&lt;code&gt;FP16&lt;/code&gt;: VRAM は減るが、範囲は狭い&lt;/li&gt;
&lt;li&gt;&lt;code&gt;BF16&lt;/code&gt;: &lt;code&gt;FP16&lt;/code&gt; に近い VRAM で、より大規模モデル向きの安定性&lt;/li&gt;
&lt;li&gt;&lt;code&gt;TF32&lt;/code&gt;: 主に &lt;code&gt;FP32&lt;/code&gt; の遅さを改善し、VRAM 削減は主目的ではない&lt;/li&gt;
&lt;li&gt;&lt;code&gt;FP8&lt;/code&gt;: さらに攻めた圧縮と高速化の路線&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/22/common-tensor-formats-fp32-fp16-bf16-tf32-fp8/tensor-format-summary.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;代表的なテンソル型のまとめ図&#34;
	
	
&gt;&lt;/p&gt;
&lt;p&gt;こうしておけば、モデル配布ページに &lt;code&gt;fp16&lt;/code&gt;、&lt;code&gt;bf16&lt;/code&gt;、&lt;code&gt;fp8&lt;/code&gt; と書かれていても、あるいはデプロイ手順ごとに VRAM 要件が大きく違っていても、それが単なる表記の違いではなく、精度予算と工学的な選択の違いだとわかるようになります。&lt;/p&gt;
&lt;h2 id=&#34;結び&#34;&gt;結び
&lt;/h2&gt;&lt;p&gt;大規模モデルにおけるテンソル型の話は、表面上は bit 数の話に見えても、本質的には工学的なトレードオフの話です。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;FP32&lt;/code&gt;、&lt;code&gt;FP16&lt;/code&gt;、&lt;code&gt;BF16&lt;/code&gt;、&lt;code&gt;TF32&lt;/code&gt;、&lt;code&gt;FP8&lt;/code&gt; に絶対的な優劣はありません。それぞれが、安定性、範囲、精度、メモリ、速度のどこに重みを置くかが違うだけです。&lt;/p&gt;
&lt;p&gt;この層が見えるようになると、学習論文を読むときも、推論設定を調整するときも、異なるデプロイ戦略を比べるときも、ずっと要点をつかみやすくなります。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>16GB GPUでも35Bモデルは動かせる: LM StudioでMoEモデルのVRAMを圧縮する考え方</title>
        <link>https://knightli.com/ja/2026/04/22/16gb-gpu-run-35b-moe-models-in-lm-studio/</link>
        <pubDate>Wed, 22 Apr 2026 21:47:34 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/22/16gb-gpu-run-35b-moe-models-in-lm-studio/</guid>
        <description>&lt;p&gt;16GB VRAM というと、ローカルで大規模モデルを動かす場合はせいぜい 12B〜14B あたりが限界で、それ以上は量子化してもかなり厳しい、というイメージを持つ人が多いと思います。その見方は完全に間違いではありませんが、16GB GPU の本当の上限でもありません。&lt;/p&gt;
&lt;p&gt;モデル選定とパラメータ設定がうまく噛み合えば、16GB GPU は必ずしも「小さめのモデル」に留まる必要はありません。その代表的な考え方のひとつが、&lt;code&gt;LM Studio&lt;/code&gt; で &lt;code&gt;MoE&lt;/code&gt; モデルを使い、適切なアンロード戦略によって 35B 級モデルを実用的な速度で回すというものです。&lt;/p&gt;
&lt;h2 id=&#34;01-なぜ16gb-gpuが12b14bに固定されるわけではないのか&#34;&gt;01 なぜ16GB GPUが12B〜14Bに固定されるわけではないのか
&lt;/h2&gt;&lt;p&gt;ここでの核心はシンプルです。VRAM 容量は重要ですが、モデルのアーキテクチャも同じくらい重要です。&lt;/p&gt;
&lt;p&gt;標準的な dense モデルを 16GB GPU に無理やり押し込もうとすると、すぐに限界に当たります。こうしたモデルは推論時に基本的にすべてのパラメータ計算へ関与するため、VRAM と帯域の負荷が一気に上がるからです。&lt;/p&gt;
&lt;p&gt;しかし &lt;code&gt;MoE&lt;/code&gt; モデルは違います。総パラメータ数は大きくても、1 回の推論で実際に有効化される専門家パラメータはその一部だけです。35B 級モデルを例にすると、総量は大きくても、1 回の推論で実際に計算に参加するパラメータはずっと少ないため、実際の VRAM 要求は想像ほど極端ではありません。&lt;/p&gt;
&lt;p&gt;だからこそ、16GB GPU にもまだ工夫の余地があります。&lt;/p&gt;
&lt;h2 id=&#34;02-実測上のポイント-35bのmoeモデルはかなり速く動く&#34;&gt;02 実測上のポイント: 35BのMoEモデルはかなり速く動く
&lt;/h2&gt;&lt;p&gt;代表的な例として挙げられるのが、&lt;code&gt;Qwen 3.5 35B A3B&lt;/code&gt; のような &lt;code&gt;MoE&lt;/code&gt; モデルの量子化版です。16GB GPU と &lt;code&gt;LM Studio&lt;/code&gt; の組み合わせで設定を調整すると、&lt;code&gt;Q6&lt;/code&gt; 量子化で 30 &lt;code&gt;tokens/s&lt;/code&gt; を超える水準に届き、&lt;code&gt;Q4&lt;/code&gt; ではさらに高い速度が出ることもあります。&lt;/p&gt;
&lt;p&gt;この結果に価値があるのは、単に「動く」からではありません。速度がすでに「明らかに実用的」と言える水準に入っているからです。&lt;/p&gt;
&lt;p&gt;比較として、同じくらい大きな規模でも &lt;code&gt;MoE&lt;/code&gt; ではないモデルを 16GB GPU で無理に回そうとすると、VRAM あふれや大幅な速度低下が起こりがちです。つまり結果を決めるのは、総パラメータ数だけではなく、推論時にそのパラメータをどう使うかです。&lt;/p&gt;
&lt;h2 id=&#34;03-lm-studioでは見るべきパラメータが1つではない&#34;&gt;03 LM Studioでは、見るべきパラメータが1つではない
&lt;/h2&gt;&lt;p&gt;16GB GPU でこうしたモデルを安定して動かすには、運任せではなく、2 つのパラメータを正しく調整する必要があります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;GPU Offload&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;一部の expert layer を CPU メモリへ強制的に載せるための設定&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;前者は比較的わかりやすく、&lt;code&gt;GPU Offload&lt;/code&gt; は基本的に可能な限り高く設定し、GPU 側での計算を優先させます。&lt;/p&gt;
&lt;p&gt;後者こそが重要です。これは「VRAM があふれてからシステムメモリを借りる」という昔ながらのやり方ではなく、あらかじめ一部の expert layer を CPU メモリへ逃がして VRAM 使用量を下げる方法です。&lt;code&gt;MoE&lt;/code&gt; モデルはそもそも毎回すべての expert を有効化するわけではないため、専門家層の一部をメモリ側へ回しても、推論速度への影響は多くの人が思うほど大きくありません。&lt;/p&gt;
&lt;p&gt;実際には、まず一定の範囲から試し、手元のマシンに合わせて少しずつ調整するのが安全です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;関連値を &lt;code&gt;20&lt;/code&gt;〜&lt;code&gt;35&lt;/code&gt; あたりから始める&lt;/li&gt;
&lt;li&gt;VRAM 使用量とメモリ圧力を見ながら微調整する&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本質的には、システムメモリを使って VRAM の余裕を買う方法です。&lt;/p&gt;
&lt;h2 id=&#34;04-128kコンテキストでも動きさらに縮めればvramをもっと減らせる&#34;&gt;04 128Kコンテキストでも動き、さらに縮めればVRAMをもっと減らせる
&lt;/h2&gt;&lt;p&gt;もうひとつ面白いのは、コンテキスト長を &lt;code&gt;128K&lt;/code&gt; に引き上げた状態でも、35B 級 &lt;code&gt;MoE&lt;/code&gt; モデルが比較的高い速度を保てることです。&lt;/p&gt;
&lt;p&gt;ここからわかるのは、16GB GPU の限界は思っているほど固定的ではない、ということです。特に &lt;code&gt;LM Studio&lt;/code&gt; のようなローカル推論ツールでは、「動くか動かないか」の二択ではなく、実際には次のようなトレードオフになります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;より多くのシステムメモリを使ってでも VRAM を節約するか&lt;/li&gt;
&lt;li&gt;コンテキスト長を短くするか&lt;/li&gt;
&lt;li&gt;量子化ごとの能力差を受け入れるか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;もしコンテキストを &lt;code&gt;128K&lt;/code&gt; から &lt;code&gt;64K&lt;/code&gt; や &lt;code&gt;32K&lt;/code&gt; に縮めれば、VRAM 圧力はさらに下げられます。つまり、35B 級の &lt;code&gt;MoE&lt;/code&gt; モデルの中には、より少ない VRAM の GPU でも何とか動くものが出てくる可能性があります。ただし、その分だけ速度とメモリ負荷のバランスは再調整が必要になります。&lt;/p&gt;
&lt;h2 id=&#34;05-この方法の代償-ramと仮想メモリへの要求が高くなる&#34;&gt;05 この方法の代償: RAMと仮想メモリへの要求が高くなる
&lt;/h2&gt;&lt;p&gt;もちろん、この方法はタダで性能が増えるわけではありません。&lt;/p&gt;
&lt;p&gt;注意すべきなのは、VRAM 圧力をさらに圧縮すると、システム RAM の使用量が目立って増え、仮想メモリの負荷も上がることです。つまり、コストが消えるのではなく、GPU から RAM とディスクスワップへ圧力が移るだけです。&lt;/p&gt;
&lt;p&gt;そのため、実際に試すなら、先にいくつか確認しておくべきです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;システム RAM が十分あるか&lt;/li&gt;
&lt;li&gt;仮想メモリを十分に確保しているか&lt;/li&gt;
&lt;li&gt;バックグラウンドで重いソフトがたくさん動いていないか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;こうした条件が揃っていないと、「35B が速く動く」どころか、マシン全体が遅くなる可能性があります。&lt;/p&gt;
&lt;h2 id=&#34;06-量子化は攻めればいいというものでもない&#34;&gt;06 量子化は攻めればいいというものでもない
&lt;/h2&gt;&lt;p&gt;ここにはもうひとつ実務的な判断があります。より低ビットの量子化はたしかに VRAM をさらに節約しやすいですが、それが最善とは限りません。&lt;/p&gt;
&lt;p&gt;実際には、&lt;code&gt;Q4&lt;/code&gt; のほうが速度は高くても、元の能力が落ちやすいモデルもあります。その点、&lt;code&gt;Q6&lt;/code&gt; は速度と能力保持のバランスが取りやすいことが多いです。結局は、自分がどちらを優先するかです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;とにかく速く、VRAM に収めたいのか&lt;/li&gt;
&lt;li&gt;それともモデル本来の能力をより多く残したいのか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この優先順位によって、選ぶ量子化は変わってきます。&lt;/p&gt;
&lt;h2 id=&#34;07-試す価値があるモデルの考え方&#34;&gt;07 試す価値があるモデルの考え方
&lt;/h2&gt;&lt;p&gt;この観点で見ると、やるべきことは「とにかく大きいモデルを追うこと」ではなく、この戦略に合うモデルを先に探すことです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;MoE&lt;/code&gt; アーキテクチャのモデル&lt;/li&gt;
&lt;li&gt;&lt;code&gt;LM Studio&lt;/code&gt; での対応が良く、量子化版が揃っているモデル&lt;/li&gt;
&lt;li&gt;長いコンテキストや instruction following に明確な強みがあるモデル&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;そして、この考え方は 1 つの 35B &lt;code&gt;MoE&lt;/code&gt; モデルだけに限りません。長文脈記憶に強い実験的モデル、命令追従が優秀なモデル、あるいは軽量量子化で速度が出るモデルなどにも自然に広げられます。&lt;/p&gt;
&lt;p&gt;つまり重要なのは、まず「メモリで VRAM を補う」戦略に合うアーキテクチャを見つけ、そのうえで調整に入ることです。最初に総パラメータ数だけ見て判断するべきではありません。&lt;/p&gt;
&lt;h2 id=&#34;08-まとめ&#34;&gt;08 まとめ
&lt;/h2&gt;&lt;p&gt;もし手元に 16GB GPU があり、ローカル LLM はせいぜい 12B〜14B までだと思っていたなら、その前提は少し更新してよさそうです。&lt;/p&gt;
&lt;p&gt;より正確に言えば、次のようになります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;16GB GPU でも大きめのモデルが完全に無理なわけではない&lt;/li&gt;
&lt;li&gt;dense モデルと &lt;code&gt;MoE&lt;/code&gt; モデルは分けて考える必要がある&lt;/li&gt;
&lt;li&gt;&lt;code&gt;LM Studio&lt;/code&gt; の &lt;code&gt;GPU Offload&lt;/code&gt; と expert layer の CPU メモリ移動は、VRAM 使用量を大きく変えられる&lt;/li&gt;
&lt;li&gt;実際には、より大きいモデル規模とより高い実用速度を得るために、より高いメモリ圧力を受け入れている&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この方法がすべてのマシンに向くわけではありませんが、少なくともひとつ確かなことがあります。ローカル LLM 運用では、VRAM 上限だけが唯一の制約ではなく、モデルアーキテクチャと推論設定も同じくらい重要です。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>12V-2x6 と 12VHPWR：GPU 用 16Pin 電源コネクタの違い</title>
        <link>https://knightli.com/ja/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/</link>
        <pubDate>Sun, 19 Apr 2026 23:21:17 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/</guid>
        <description>&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/4.png&#34;
	width=&#34;1516&#34;
	height=&#34;774&#34;
	srcset=&#34;https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/4_hu_defcdc0fe696070d.png 480w, https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/4_hu_d75571d9af707f1a.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;比較&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;195&#34;
		data-flex-basis=&#34;470px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;ここ数年のハイエンド GPU でよく話題になる電源コネクタといえば、&lt;code&gt;12VHPWR&lt;/code&gt; と新しい &lt;code&gt;12V-2x6&lt;/code&gt; だ。どちらも外観は 16Pin、つまり &lt;code&gt;12 + 4&lt;/code&gt; の構造に見えるが、完全に同じインターフェースではない。&lt;/p&gt;
&lt;p&gt;簡単に言えば、&lt;code&gt;12V-2x6&lt;/code&gt; は &lt;code&gt;ATX 3.1&lt;/code&gt; と &lt;code&gt;PCIe CEM 5.1&lt;/code&gt; の文脈で、初期の &lt;code&gt;12VHPWR&lt;/code&gt; 設計を修正したものと考えられる。高出力能力は維持しつつ、挿入検出と端子構造をより保守的に設計している。目的は、コネクタが完全に挿さっていない状態で負荷がかかり続けるリスクを減らすことだ。&lt;/p&gt;
&lt;h2 id=&#34;01-ケーブル自体の差は大きくない&#34;&gt;01 ケーブル自体の差は大きくない
&lt;/h2&gt;&lt;p&gt;多くの人がまず気にするのは、&lt;code&gt;12V-2x6&lt;/code&gt; と &lt;code&gt;12VHPWR&lt;/code&gt; のモジュラーケーブルを共用できるのか、という点だ。&lt;/p&gt;
&lt;p&gt;ケーブルそのものだけを見ると、差は通常それほど大きくない。主な変化はボード側コネクタ、つまり GPU のソケットや電源ユニット側のモジュラーバックプレートソケットにある。新しい &lt;code&gt;12V-2x6&lt;/code&gt; モジュラーケーブルも、旧来の &lt;code&gt;12VHPWR&lt;/code&gt; モジュラーケーブルも、16Pin GPU 電源という用途自体は同じだ。&lt;/p&gt;
&lt;p&gt;そのため互換性を判断するときは、ケーブル長、線径、見た目だけを見るべきではない。GPU 側と PSU 側のソケット仕様、端子品質、そして電源メーカーが明示する対応情報を確認する必要がある。&lt;/p&gt;
&lt;h2 id=&#34;02-機械構造の主な変更点&#34;&gt;02 機械構造の主な変更点
&lt;/h2&gt;&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/1.png&#34;
	width=&#34;1469&#34;
	height=&#34;505&#34;
	srcset=&#34;https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/1_hu_f49f1d41f41658ca.png 480w, https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/1_hu_9451e0053960c4aa.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;コネクタ比較&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;290&#34;
		data-flex-basis=&#34;698px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/2.png&#34;
	width=&#34;1390&#34;
	height=&#34;743&#34;
	srcset=&#34;https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/2_hu_b338f61621a3f769.png 480w, https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/2_hu_dee9d88d14eab23d.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;コネクタ比較&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;187&#34;
		data-flex-basis=&#34;448px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;12V-2x6&lt;/code&gt; のポイントは、コネクタ外形を完全に変えることではなく、ピン構造を調整したことにある。&lt;/p&gt;
&lt;p&gt;12 本の主電源ピンは長くなり、先に接触する。一方、4 本の SENSE 信号ピンは短くなり、後から接触する。この設計の意図は分かりやすい。コネクタが十分奥まで挿さったときだけ SENSE ピンが正しく導通し、GPU が想定どおりの供電能力を認識できるようにするためだ。&lt;/p&gt;
&lt;p&gt;これは、初期の &lt;code&gt;12VHPWR&lt;/code&gt; で表面化した典型的な問題に対する対策でもある。見た目では挿さっているように見えても、実際には最後まで挿さっていない場合がある。高負荷時には接触が不十分な部分が発熱し、深刻な場合はプラグやソケットの焼損につながる。&lt;/p&gt;
&lt;h2 id=&#34;03-より保守的な-sense-ロジック&#34;&gt;03 より保守的な SENSE ロジック
&lt;/h2&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;SENSE0&lt;/th&gt;
          &lt;th&gt;SENSE1&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Initial Power (Power Up)&lt;/th&gt;
          &lt;th style=&#34;text-align: right&#34;&gt;Max Sustained Power&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Ground&lt;/td&gt;
          &lt;td&gt;Ground&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;375 W&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;600 W&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Open&lt;/td&gt;
          &lt;td&gt;Ground&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;225 W&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;450 W&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Ground&lt;/td&gt;
          &lt;td&gt;Open&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;150 W&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;300 W&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Short&lt;/td&gt;
          &lt;td&gt;Short&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;100 W&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;150 W&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Open&lt;/td&gt;
          &lt;td&gt;Open&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;0 W&lt;/td&gt;
          &lt;td style=&#34;text-align: right&#34;&gt;0 W&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;code&gt;12V-2x6&lt;/code&gt; の安全性向上の中心は、SENSE ロジックにある。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/3.png&#34;
	width=&#34;1413&#34;
	height=&#34;594&#34;
	srcset=&#34;https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/3_hu_da90f28c8ff5ee55.png 480w, https://knightli.com/2026/04/19/12v-2x6-vs-12vhpwr-gpu-power-connector-notes/3_hu_d32cc33cf944e495.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;奥まで挿さってから通電&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;237&#34;
		data-flex-basis=&#34;570px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;新しい定義では、&lt;code&gt;SENSE0&lt;/code&gt; と &lt;code&gt;SENSE1&lt;/code&gt; が &lt;code&gt;Open&lt;/code&gt;、つまり浮いた状態の場合、GPU は正常に電源投入されないか、対応する高出力入力状態に入らない。つまりコネクタが正しく挿さっていないときは、GPU に電力を食わせ続けるのではなく、「動作させない」方向に寄せている。&lt;/p&gt;
&lt;p&gt;これは初期の &lt;code&gt;12VHPWR&lt;/code&gt; より保守的だ。初期設計では、SENSE 状態が理想的でなくても、条件によっては一定の入力電力を許容する場合があった。高出力 GPU では、この許容がかえってリスクになることがある。&lt;/p&gt;
&lt;p&gt;SENSE ピンを短くすることは、本質的には「完全に挿さっていること」をより厳しい前提条件にする設計だ。&lt;/p&gt;
&lt;h2 id=&#34;04-h-表記の意味&#34;&gt;04 H++ 表記の意味
&lt;/h2&gt;&lt;p&gt;新しい &lt;code&gt;12V-2x6&lt;/code&gt; コネクタでは、&lt;code&gt;H++&lt;/code&gt; という表記を見かけることがある。これは端子が &lt;code&gt;9.2A&lt;/code&gt; 以上の電流能力に対応していることを示し、以前の &lt;code&gt;H+&lt;/code&gt; 表記の &lt;code&gt;12VHPWR&lt;/code&gt; と区別するためのものだ。&lt;/p&gt;
&lt;p&gt;注意したいのは、&lt;code&gt;H++&lt;/code&gt; が 600W を超える電力上限を意味するわけではないことだ。新旧どちらでも、GPU 向け 16Pin 方式の一般的な上限は &lt;code&gt;600W&lt;/code&gt; のままだ。&lt;code&gt;H++&lt;/code&gt; は単純な「より高いワット数」ではなく、端子仕様とコネクタ世代を識別する情報と見るべきだ。&lt;/p&gt;
&lt;h2 id=&#34;05-自作-pc-への影響&#34;&gt;05 自作 PC への影響
&lt;/h2&gt;&lt;p&gt;通常の PC 組み立てにおいて、&lt;code&gt;12V-2x6&lt;/code&gt; の最大の意味は挿入不良のリスクを下げることだ。ただし、それだけで安全が保証されるわけではない。&lt;/p&gt;
&lt;p&gt;この種のコネクタを使うときは、次の点に注意したい。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;プラグは必ず奥まで完全に挿す。「見た目では挿さっている」だけで判断しない。&lt;/li&gt;
&lt;li&gt;GPU 側コネクタの直近でケーブルを急角度に曲げない。&lt;/li&gt;
&lt;li&gt;ケースのサイドパネルでケーブルを無理に圧迫しない。&lt;/li&gt;
&lt;li&gt;PSU または GPU メーカーが明示的に対応を示している純正ケーブル、カスタムケーブル、変換ケーブルを優先する。&lt;/li&gt;
&lt;li&gt;高出力 GPU では、出どころ不明の安価な変換アダプタを避ける。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ケース内部の空間が狭い場合、90 度の L 字ケーブルやメーカー認証済みのカスタムケーブルは曲げ圧力を緩和できる。ただし、端子品質、線径仕様、メーカー認証を確認すべきで、見た目だけで選ぶべきではない。&lt;/p&gt;
&lt;h2 id=&#34;06-まとめ&#34;&gt;06 まとめ
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;12V-2x6&lt;/code&gt; は、「見た目が 12VHPWR と同じだから違いはない」と言えるコネクタではない。本当の変化は、内部構造と検出ロジックにある。&lt;/p&gt;
&lt;p&gt;次のように理解すると分かりやすい。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ケーブル形状は近いが、ボード側コネクタと端子設計のほうが重要。&lt;/li&gt;
&lt;li&gt;主電源ピンは長く、SENSE ピンは短い。&lt;/li&gt;
&lt;li&gt;コネクタが完全に挿さっていない場合、新版は GPU が動作状態に入るのを防ぎやすい。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;H++&lt;/code&gt; 表記は、より高い電流能力を持つ端子仕様を示す。&lt;/li&gt;
&lt;li&gt;一般的な GPU 電源上限は引き続き &lt;code&gt;600W&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;高出力 GPU を組むなら、&lt;code&gt;12V-2x6&lt;/code&gt; は初期の &lt;code&gt;12VHPWR&lt;/code&gt; より安心感がある。ただし最終的な安全性は、プラグが奥まで挿さっているか、ケーブル品質、PSU 設計、ケース内の配線スペースに左右される。コネクタ規格が改善されたからといって、雑な取り付けが許されるわけではない。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Ollama マルチ GPU メモ：VRAM の合算、GPU 選択、よくある誤解</title>
        <link>https://knightli.com/ja/2026/04/19/ollama-multiple-gpu-notes/</link>
        <pubDate>Sun, 19 Apr 2026 00:18:00 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/19/ollama-multiple-gpu-notes/</guid>
        <description>&lt;p&gt;Ollama でローカル推論を試していると、よく次のような疑問が出てきます。今 1 枚 GPU があり、マザーボードに空き PCIe スロットがある場合、GPU を追加すると Ollama に効果があるのか。複数 GPU は同じ型番でなければならないのか。VRAM は合算できるのか。学習フレームワークのようにマルチ GPU で推論速度が大きく上がるのか。&lt;/p&gt;
&lt;p&gt;この記事では、Ollama のマルチ GPU 動作を整理します。先に結論を書くと次の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ollama は複数 GPU をサポートします。&lt;/li&gt;
&lt;li&gt;複数 GPU の主な価値は、より大きなモデルを合計 VRAM に載せやすくすることであり、token/s が線形に伸びることではありません。&lt;/li&gt;
&lt;li&gt;デフォルトでは、モデルが 1 枚の GPU に完全に収まる場合、Ollama は単一 GPU に載せる傾向があります。&lt;/li&gt;
&lt;li&gt;モデルが 1 枚の GPU に収まらない場合、Ollama は利用可能な GPU にモデルを分散できます。&lt;/li&gt;
&lt;li&gt;異なる型番の GPU も Ollama から見える場合がありますが、性能や配置が理想的とは限りません。&lt;/li&gt;
&lt;li&gt;SLI / NVLink は必須ではありません。&lt;/li&gt;
&lt;li&gt;Ollama が使う GPU を制限したい場合は、&lt;code&gt;CUDA_VISIBLE_DEVICES&lt;/code&gt;、&lt;code&gt;ROCR_VISIBLE_DEVICES&lt;/code&gt;、&lt;code&gt;GGML_VK_VISIBLE_DEVICES&lt;/code&gt; を使います。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;公式の挙動まず単一-gpu入らなければ複数-gpu&#34;&gt;公式の挙動：まず単一 GPU、入らなければ複数 GPU
&lt;/h2&gt;&lt;p&gt;Ollama FAQ では、マルチ GPU のロードロジックが比較的明確に説明されています。新しいモデルをロードするとき、Ollama は必要な VRAM を見積もり、現在利用可能な VRAM と比較します。モデルがどれか 1 枚の GPU に完全に収まる場合、その GPU にロードします。1 枚に収まらない場合、利用可能なすべての GPU に分散されます。&lt;/p&gt;
&lt;p&gt;この戦略の理由は性能です。単一 GPU に載せることで、推論時の PCIe バス越しのデータ転送を減らせるため、通常はそのほうが速くなります。&lt;/p&gt;
&lt;p&gt;そのため、Ollama のマルチ GPU を「GPU が増えれば自動で数倍速くなる」と考えないほうがよいです。より正確には次のように理解できます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;小さいモデルが単一 GPU に入る：通常は単一 GPU で動く。&lt;/li&gt;
&lt;li&gt;大きいモデルが単一 GPU に入らない：複数 GPU に分層ロードされる。&lt;/li&gt;
&lt;li&gt;それでも VRAM が足りない：一部がシステムメモリに落ち、速度が大きく低下する。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;モデルがどこにロードされたかは、次のコマンドで確認できます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ollama ps
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;出力の &lt;code&gt;PROCESSOR&lt;/code&gt; には、たとえば次のように表示されます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;100% GPU
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;48%/52% CPU/GPU
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;100% CPU
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;48%/52% CPU/GPU&lt;/code&gt; と表示される場合、一部がすでにシステムメモリにあります。この場合、CPU/RAM に頼り続けるより、GPU を増やすか、より大容量 VRAM の GPU に替えるほうが有効なことが多いです。&lt;/p&gt;
&lt;h2 id=&#34;マルチ-gpu-は単純な計算力の合算ではない&#34;&gt;マルチ GPU は単純な計算力の合算ではない
&lt;/h2&gt;&lt;p&gt;ローカル LLM 推論は、ゲームにおける SLI とは別物です。Ollama のマルチ GPU では、モデルの異なる層やテンソルを別々のデバイスに置く形が一般的です。これにより複数 GPU の VRAM を使って大きなモデルを載せられますが、推論中にはデバイス間でデータを渡す必要が出る場合があります。&lt;/p&gt;
&lt;p&gt;したがって、マルチ GPU の利点は通常 2 種類です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;VRAM 面の利点：大きなモデルを載せやすくなり、CPU/RAM への退避を避けやすくなる。&lt;/li&gt;
&lt;li&gt;性能面の利点：単一 GPU に入らない、または CPU との混在が深刻な場合に目立ちやすい。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;8B や 14B のモデルが 1 枚の RTX 3090 に完全に入る場合、それを 2 枚の GPU に無理に分割しても速くなるとは限りません。むしろ GPU 間転送で遅くなる可能性があります。Ollama のデフォルトの「入るなら単一 GPU」戦略は、この不要な PCIe コストを避けるためのものです。&lt;/p&gt;
&lt;h2 id=&#34;sli-や-nvlink-は不要&#34;&gt;SLI や NVLink は不要
&lt;/h2&gt;&lt;p&gt;Ollama のマルチ GPU は SLI に依存しません。通常の PCIe GPU が複数あり、ドライバと Ollama が認識できれば、スケジューリング対象になります。&lt;/p&gt;
&lt;p&gt;NVLink やより高い PCIe 帯域は、一部の GPU 間分散シナリオで役立つ可能性がありますが、前提条件ではありません。中古 GPU サーバーやワークステーションでも、普通の PCIe マルチ GPU で動かせます。&lt;/p&gt;
&lt;p&gt;本当に注意すべきなのは PCIe 帯域です。&lt;code&gt;x1&lt;/code&gt;、&lt;code&gt;x4&lt;/code&gt;、&lt;code&gt;x8&lt;/code&gt;、&lt;code&gt;x16&lt;/code&gt; の差は、モデルを VRAM にロードする速度に影響します。大きなモデルを頻繁に切り替える場合、PCIe リンクはボトルネックになりやすくなります。モデルのロード後、生成時の影響は通常小さくなりますが、GPU 間分散には追加コストが残る可能性があります。&lt;/p&gt;
&lt;p&gt;無難な考え方は次の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;可能なら x16 / x8 を使い、マイニング用 x1 riser は避ける。&lt;/li&gt;
&lt;li&gt;大きなモデルを頻繁に切り替えるなら、PCIe 帯域はより重要。&lt;/li&gt;
&lt;li&gt;モデルを長時間 VRAM に常駐させる場合、PCIe 帯域の影響は相対的に小さくなる。&lt;/li&gt;
&lt;li&gt;マルチ GPU 機では、マザーボードの PCIe トポロジーと CPU 直結レーンを確認する。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;ollama-が使う-nvidia-gpu-を制限する&#34;&gt;Ollama が使う NVIDIA GPU を制限する
&lt;/h2&gt;&lt;p&gt;NVIDIA のマルチ GPU 環境では、&lt;code&gt;CUDA_VISIBLE_DEVICES&lt;/code&gt; で Ollama から見える GPU を制御します。&lt;/p&gt;
&lt;p&gt;一時的に実行する場合：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;CUDA_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;0,1 ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;2 枚目の GPU だけを使う場合：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;CUDA_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;NVIDIA GPU を使わせない場合は、無効な ID を指定できます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;CUDA_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1 ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;公式ドキュメントでは、数値 ID の順序は変わる可能性があるため、GPU UUID のほうが信頼できるとされています。まず UUID を確認します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvidia-smi -L
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;出力例：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;GPU 0: NVIDIA GeForce RTX 3090 (UUID: GPU-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;GPU 1: NVIDIA GeForce RTX 3070 (UUID: GPU-yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;その後、UUID を指定します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;CUDA_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;GPU-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Linux の systemd サービスとして Ollama をインストールしている場合は、サービス環境変数に書きます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl edit ollama.service
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;追加内容：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-ini&#34; data-lang=&#34;ini&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;[Service]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;Environment&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;CUDA_VISIBLE_DEVICES=0,1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;再読み込みして再起動します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl daemon-reload
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl restart ollama
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;amd-と-vulkan-の選択変数&#34;&gt;AMD と Vulkan の選択変数
&lt;/h2&gt;&lt;p&gt;AMD ROCm 環境では、&lt;code&gt;ROCR_VISIBLE_DEVICES&lt;/code&gt; で見える GPU を制御します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;ROCR_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;0,1 ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;ROCm GPU を使わせない場合も、無効な ID を指定できます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;ROCR_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1 ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Ollama の GPU ドキュメントでは、実験的な Vulkan サポートも触れられています。Vulkan GPU を選ぶには &lt;code&gt;GGML_VK_VISIBLE_DEVICES&lt;/code&gt; を使います。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;OLLAMA_VULKAN&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;GGML_VK_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Vulkan デバイスで問題が出る場合は無効化できます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;GGML_VK_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1 ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;AMD のマルチ GPU は、NVIDIA よりもドライバ、ROCm バージョン、GFX バージョンの互換性問題に遭遇しやすいです。公式ドキュメントでも Linux の ROCm ドライバ要件や &lt;code&gt;HSA_OVERRIDE_GFX_VERSION&lt;/code&gt; などの互換性設定が説明されています。異なる世代の AMD GPU を混在させる場合は、まず各カードが単独で動くことを確認してからマルチ GPU を試すのが安全です。&lt;/p&gt;
&lt;h2 id=&#34;docker-で複数-gpu-を見せる&#34;&gt;Docker で複数 GPU を見せる
&lt;/h2&gt;&lt;p&gt;Docker で Ollama を動かす場合、NVIDIA 環境では通常 &lt;code&gt;nvidia-container-toolkit&lt;/code&gt; を入れ、&lt;code&gt;--gpus&lt;/code&gt; でデバイスを公開します。&lt;/p&gt;
&lt;p&gt;すべての GPU を公開：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -d &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --gpus&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;all &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -v ollama:/root/.ollama &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -p 11434:11434 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --name ollama &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ollama/ollama
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;指定した GPU だけを公開：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -d &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --gpus &lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;#34;device=0,1&amp;#34;&amp;#39;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -v ollama:/root/.ollama &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -p 11434:11434 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --name ollama &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ollama/ollama
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;環境変数と組み合わせることもできます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -d &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --gpus&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;all &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -e &lt;span class=&#34;nv&#34;&gt;CUDA_VISIBLE_DEVICES&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;0,1 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -v ollama:/root/.ollama &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -p 11434:11434 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --name ollama &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ollama/ollama
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;コンテナ内で &lt;code&gt;nvidia-smi&lt;/code&gt; が GPU を見られない場合、Ollama も GPU を使えません。まず Docker の GPU passthrough を確認し、その後 Ollama を確認します。&lt;/p&gt;
&lt;h2 id=&#34;ollama_sched_spread-とは&#34;&gt;&lt;code&gt;OLLAMA_SCHED_SPREAD&lt;/code&gt; とは
&lt;/h2&gt;&lt;p&gt;マルチ GPU 設定では、&lt;code&gt;OLLAMA_SCHED_SPREAD=1&lt;/code&gt; や &lt;code&gt;OLLAMA_SCHED_SPREAD=true&lt;/code&gt; を見かけることがあります。これは Ollama のスケジューラに関係する設定で、モデルやリクエストを複数 GPU により分散させたい場面で使われることがあります。&lt;/p&gt;
&lt;p&gt;設定例：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;OLLAMA_SCHED_SPREAD&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; ollama serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;systemd の場合：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-ini&#34; data-lang=&#34;ini&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;[Service]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;Environment&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;OLLAMA_SCHED_SPREAD=true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;ただし万能ではありません。有効にしても token/s が線形に増えるわけではなく、複数モデルの同時ロード、VRAM 見積もり、コンテキスト長、KV cache の増加によって OOM になることもあります。公式 FAQ の基本方針は変わりません。1 枚の GPU にモデルが完全に入るなら単一 GPU のほうが効率的なことが多く、1 枚に入らないときに複数 GPU 分散が有効になります。&lt;/p&gt;
&lt;p&gt;そのため、&lt;code&gt;OLLAMA_SCHED_SPREAD&lt;/code&gt; はマルチ GPU 必須設定ではなく、高度なスケジューリング実験項目として扱うのがよいです。まずデフォルト挙動を理解し、&lt;code&gt;ollama ps&lt;/code&gt;、ログ、&lt;code&gt;nvidia-smi&lt;/code&gt; の結果を見ながら調整します。&lt;/p&gt;
&lt;h2 id=&#34;複数-gpu-が本当に使われているか確認する&#34;&gt;複数 GPU が本当に使われているか確認する
&lt;/h2&gt;&lt;p&gt;よく使う確認コマンド：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ollama ps
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;watch -n 0.5 nvidia-smi
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Ollama サービスログ：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;journalctl -u ollama -f
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Docker の場合：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker logs -f ollama
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;確認したい点：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ollama が対応 GPU を検出しているか。&lt;/li&gt;
&lt;li&gt;モデルが &lt;code&gt;100% GPU&lt;/code&gt; または CPU/GPU 混在で表示されているか。&lt;/li&gt;
&lt;li&gt;各 GPU に VRAM 使用量があるか。&lt;/li&gt;
&lt;li&gt;モデルロード時に複数 GPU の VRAM が増えるか。&lt;/li&gt;
&lt;li&gt;生成時の token/s が CPU/RAM 退避より明らかに改善しているか。&lt;/li&gt;
&lt;li&gt;OOM やモデルのアンロードが頻発していないか。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;GPU 使用率だけを見ると誤解しやすいです。LLM 推論では、特にマルチ GPU、低 batch、小さいコンテキスト、遅い CPU、遅い PCIe 環境では、GPU 使用率が常に高いとは限りません。&lt;/p&gt;
&lt;h2 id=&#34;よくある誤解&#34;&gt;よくある誤解
&lt;/h2&gt;&lt;h3 id=&#34;誤解-112gb-gpu-2-枚は-24gb-gpu-1-枚と同じ&#34;&gt;誤解 1：12GB GPU 2 枚は 24GB GPU 1 枚と同じ
&lt;/h3&gt;&lt;p&gt;完全には同じではありません。複数 GPU にモデルを配置できますが、デバイス間アクセスには追加コストがあります。「入らない」問題は解決できますが、単一大容量 VRAM GPU と同じ速度や安定性になるとは限りません。&lt;/p&gt;
&lt;h3 id=&#34;誤解-2異なる型番の-gpu-は混在できない&#34;&gt;誤解 2：異なる型番の GPU は混在できない
&lt;/h3&gt;&lt;p&gt;必ずしもそうではありません。ドライバ、計算能力、ランタイムライブラリが対応していれば、Ollama は複数 GPU を認識できます。ただし混在構成では、遅いカード、小さい VRAM、PCIe トポロジーに制約されやすくなります。最も予測しやすいのは、同じ型番、同じ VRAM、同世代でサポートの良いドライバ構成です。&lt;/p&gt;
&lt;h3 id=&#34;誤解-3マルチ-gpu-は必ず単一-gpu-より速い&#34;&gt;誤解 3：マルチ GPU は必ず単一 GPU より速い
&lt;/h3&gt;&lt;p&gt;必ずしも速くありません。モデルが 1 枚の高速 GPU に完全に入る場合、単一 GPU のほうが速いことがあります。マルチ GPU は主に、大きなモデル、長いコンテキスト、単一 GPU の VRAM 不足に向いています。&lt;/p&gt;
&lt;h3 id=&#34;誤解-4nvlink--sli-が必須&#34;&gt;誤解 4：NVLink / SLI が必須
&lt;/h3&gt;&lt;p&gt;不要です。普通の PCIe マルチ GPU システムでも Ollama は利用できます。NVLink は前提条件ではありません。&lt;/p&gt;
&lt;h3 id=&#34;誤解-5gpu-を追加したらサービス再起動は不要&#34;&gt;誤解 5：GPU を追加したらサービス再起動は不要
&lt;/h3&gt;&lt;p&gt;必ずしもそうではありません。Linux systemd サービス、Windows のバックグラウンドアプリ、Docker コンテナは、デバイスや環境変数を再検出するために再起動が必要な場合があります。&lt;/p&gt;
&lt;h2 id=&#34;gpu-選びの目安&#34;&gt;GPU 選びの目安
&lt;/h2&gt;&lt;p&gt;Ollama のローカル推論では、おおよその優先順位は次の通りです。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;単一 GPU の VRAM が大きいほど扱いやすい。&lt;/li&gt;
&lt;li&gt;同一 GPU 複数枚は、混在 GPU よりトラブルシュートしやすい。&lt;/li&gt;
&lt;li&gt;PCIe レーンが十分あるほど、大きなモデルのロードが快適。&lt;/li&gt;
&lt;li&gt;古い GPU は CUDA compute capability または ROCm 対応を先に確認する。&lt;/li&gt;
&lt;li&gt;マルチ GPU では電源、冷却、筐体エアフローを事前に計算する。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;中古予算重視の場合：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;RTX 3090 2 枚は、今でもよく使われる大容量 VRAM 構成です。&lt;/li&gt;
&lt;li&gt;P40 / M40 のような古い Tesla は VRAM が大きい一方、消費電力、冷却、ドライバ、性能のトレードオフがあります。&lt;/li&gt;
&lt;li&gt;RTX 4070 / 4070 Ti などは効率が良いですが、単一 GPU の VRAM 容量が制約になりやすいです。&lt;/li&gt;
&lt;li&gt;古い 8GB GPU を複数枚使う構成は実験としては面白いですが、大きなモデルを長期運用する用途にはあまり向きません。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;まとめ&#34;&gt;まとめ
&lt;/h2&gt;&lt;p&gt;Ollama のマルチ GPU は、「性能加速より先に VRAM 拡張」と理解すると分かりやすいです。モデルが 1 枚の GPU に完全に入るなら、デフォルトの単一 GPU 経路のほうが速いことが多いです。1 枚に入らない場合、複数 GPU に分散することで CPU/RAM への大きな退避を避け、大きなモデルを実用的にできます。&lt;/p&gt;
&lt;p&gt;実際の設定では、まず &lt;code&gt;ollama ps&lt;/code&gt; でモデルのロード先を確認し、&lt;code&gt;nvidia-smi&lt;/code&gt; や ROCm ツールで VRAM 使用量を観察します。GPU を制限する場合、NVIDIA は &lt;code&gt;CUDA_VISIBLE_DEVICES&lt;/code&gt;、AMD ROCm は &lt;code&gt;ROCR_VISIBLE_DEVICES&lt;/code&gt;、Vulkan は &lt;code&gt;GGML_VK_VISIBLE_DEVICES&lt;/code&gt; を使います。Docker で動かす場合は、まずコンテナから GPU が見えているか確認します。&lt;/p&gt;
&lt;p&gt;マルチ GPU は魔法ではありません。より大きなモデルを載せる助けにはなりますが、線形加速は保証されません。安定して使うなら、大容量 VRAM の単一 GPU、または同一型番のマルチ GPU を優先し、ドライバ、PCIe、電源、冷却、モデル量子化をまとめて考えるのが現実的です。&lt;/p&gt;
&lt;h2 id=&#34;参考連結&#34;&gt;参考連結
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Ollama FAQ：How does Ollama load models on multiple GPUs?：&lt;a class=&#34;link&#34; href=&#34;https://github.com/ollama/ollama/blob/main/docs/faq.mdx&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/ollama/ollama/blob/main/docs/faq.mdx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Ollama GPU ドキュメント：Hardware support / GPU Selection：&lt;a class=&#34;link&#34; href=&#34;https://github.com/ollama/ollama/blob/main/docs/gpu.mdx&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/ollama/ollama/blob/main/docs/gpu.mdx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Ollama Docker Hub：&lt;a class=&#34;link&#34; href=&#34;https://hub.docker.com/r/ollama/ollama&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://hub.docker.com/r/ollama/ollama&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;NVIDIA Container Toolkit：&lt;a class=&#34;link&#34; href=&#34;https://github.com/NVIDIA/nvidia-container-toolkit&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/NVIDIA/nvidia-container-toolkit&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        <item>
        <title>Ollama モデルが GPU にロードされているかどうかを確認する方法</title>
        <link>https://knightli.com/ja/2026/04/06/check-ollama-model-loaded-on-gpu/</link>
        <pubDate>Mon, 06 Apr 2026 10:15:18 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/04/06/check-ollama-model-loaded-on-gpu/</guid>
        <description>&lt;p&gt;Ollama モデルが実際に GPU 上で実行されているかどうかを確認する最も直接的な方法は、現在ロードされているモデルのプロセッサ使用状況情報を確認することです。&lt;/p&gt;
&lt;h2 id=&#34;コマンドを使用する&#34;&gt;コマンドを使用する
&lt;/h2&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ollama ps
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;出力例&#34;&gt;出力例
&lt;/h2&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;NAME        ID            SIZE    PROCESSOR   UNTIL
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;llama3:70b  bcfb190ca3a7  42 GB   100% GPU    4 minutes from now
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;processor-列の解釈方法&#34;&gt;&lt;code&gt;PROCESSOR&lt;/code&gt; 列の解釈方法
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;100% GPU&lt;/code&gt;: モデルは GPU メモリに完全にロードされています。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;100% CPU&lt;/code&gt;: モデルはシステム メモリに完全にロードされています (GPU 推論は使用されません)。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;48%/52% CPU/GPU&lt;/code&gt;: モデルは一部がメモリ内にあり、一部がビデオ メモリ内にあり、混合負荷です。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;実践的なアドバイス&#34;&gt;実践的なアドバイス
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;GPU を使用する予定なのに &lt;code&gt;100% CPU&lt;/code&gt; が表示される場合は、まずグラフィックス ドライバー、CUDA/ROCm 環境、および Ollama ランタイム パラメーターを確認してください。&lt;/li&gt;
&lt;li&gt;モデルパラメータの数が多く、ビデオメモリが不足している場合、通常、CPU/GPU 混合負荷が発生します。&lt;/li&gt;
&lt;li&gt;パフォーマンスの問題のトラブルシューティングを行う場合は、最初に &lt;code&gt;ollama ps&lt;/code&gt; を実行し、次に速度データを確認してボトルネックをより迅速に特定します。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;要約する&#34;&gt;要約する
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;ollama ps&lt;/code&gt; は、モデルが実際に GPU を使用しているかどうかを判断する最初のステップです。 &lt;code&gt;PROCESSOR&lt;/code&gt; 列に注目して、現在の読み込み位置をすばやく確認し、それに応じてその後の最適化の方向を決定します。&lt;/p&gt;
&lt;!-- ollama-related-links:start --&gt;
</description>
        </item>
        
    </channel>
</rss>
