| 私は「コンシューマ向けマルチGPUでのPCIeボトルネック」に取り組んできました。Nvidiaは4090/5090からNVLinkを削除しており、70Bモデルを2枚のコンシューマカードに分割すると、PCIeのピアツーピア経由でおよそ~30 GB/sまで落ちます。 ここ数か月、GPUが本来アイドルになっているNVENC/NVDECシリコンを使って、アクティベーションとKVキャッシュをその場で圧縮し、その小さなビットストリームを同じ配線で送るためのPythonライブラリを作ってきました。 Repo: https://github.com/shootthesound/torch-nvenc-compress (Apache 2.0) 先行研究(このアイデア自体は新しくありません)
「テンソル上のビデオコーデック」という発想は、私が始めたときにはすでに文献にありました。この取り組みで追加されたのは:
測定結果(RTX 5090、実ワークロード)
エンドツーエンドで測定していないもの(上記からの推計)マルチGPU PCIeピアツーピアでのアクティベーション転送により、有効帯域が~180 GB/sまで回復 — コーデックのプリミティブは準備されベンチマーク済みですが、GPU間のPCIeピアツーピア配線はまだ未着手です。(この部分はコミュニティの助けが必要です。私の検証環境にはデスクトップGPUが1枚しかなく、同じマザーボード上で2枚必要なためです。) 実際の2台マシンでのイーサネット分割モデル推論 — 配線シミュレーションPoCでは、実際のコーデック時間+模擬ワイヤを測れますが、まだ真の2台マシン展開ではありません。(来週、ネットワーク経路のこの部分を物理的に検証するための4090ラップトップが届く予定です。) 長コンテキストKVスピルのエンドツーエンド tok/s(実モデルのデコードループ) — 圧縮率は測定済みですが、例えば32B+64Kコンテキストのような条件での実際のN tok/s → 3N tok/sベンチマークはまだリポジトリにありません。数式がそれを示していますが、ベンチマークはまだ書かれていません。 私が助けを欲しいところ
リポジトリに入っているもの番号付きの実行可能PoCが19個。測定した数値はすべて再現可能です。READMEの先頭に、正直なステータス表があります。PCA基底ビルダー+チャネルごとの量子化+YUVのパック/アンパック+コーデックラッパはすべて部品として分離されているので、必要に応じて差し替えできます。 私はフルタイムの介護の傍らで一人で組み立てました。技術的なフィードバック、批評、または私が見落としていた関連研究への指摘は、本当にありがたく受け取っています。 [link] [comments] |
torch-nvenc-compress:GPUのNVENCシリコンをPCIe帯域“増幅器”として使う—PCA+pure-ctypes Video Codec SDKラッパー
Reddit r/MachineLearning / 2026/5/4
💬 オピニオンDeveloper Stack & InfrastructureSignals & Early TrendsTools & Practical UsageModels & Research
要点
- 著者は、torch-nvenc-compress を紹介し、GPUのNVENC/NVDECハードウェアを活用して、LLMのアクティベーションとKVキャッシュを圧縮することで、コンシューマー環境のマルチGPU間で起きるPCIeのピアツーピア・ボトルネックを緩和しようとしています。
- 手法では、前処理としてPCA+ランク打ち切りを用い、標準基底ではアクティベーション/KVがノイズのように見える一方、PCA基底では重い尾を持つチャネル共分散構造が現れ、ビデオコーデック型の圧縮が活かせると主張しています。
- さらに、CUDAストリームのパイプライン化によりNVENCのコーデック処理を計算や他のテンソル転送と重ね合わせられる「並列パス/デュアルレーン」として設計を捉え直し、圧縮を“単なる小さいペイロード”ではなく有効帯域の増幅として機能させています。
- 実際のGEMM+エンコードのワークロードで、並列パスのオーバーラップが理論最大の約67%に達したと報告しており、コーデックや転送コストを大きく隠せる可能性を示しています。
- プロジェクトは「pure-ctypes」でVideo Codec SDKをラップ(DirectBackend)し、FFmpegのサブプロセス起動などのオーバーヘッドを抑え、CUDAテンソルからのゼロコピー処理を重視しています。




