[自作日記17] SW編: NVIDIA Display Driver を GPUマシンの Ubuntu にインストールする

[自作日記17] SW編: NVIDIA Display Driver を GPUマシンの Ubuntu にインストールする

こんにちは!

今回は Ubuntu で GPU を使用できるようにするため、 NVIDIA Display Drive をインストールしていきます

3.2 Nvidia Display Driverのインストール

今回購入した GPU NVIDIA RTX 3090 Ti 24G に対応したディスプレイドライバーをインストールしていきます!

3.2.1 ドライバーのダウンロード

以下のサイトにアクセスして RTX 3090 Ti 用のドライバをさがします

https://www.nvidia.co.jp/Download/index.aspx?lang=jp

自分の環境(RTX 3090 Ti,Linux)を選択して、 探す をクリックするとドライバをさがしてくれるので便利です

ライセンスを確認し同意したらダウンロードの同意 をクリックします

これで、downloads ディレクトリに NVIDIA-Linux-x86_64-525.60.11.run というファイルがダウンロードされます。

3.2.2 ビルドツール gcc のインストール

さきほどインストールしたドライバーのインストールスクリプトを実行するまえに、ドライバーのビルド用のコンパイラ gcc をインストールしておく必要があります。

端末を開いて、以下のコマンドを実行します。

sudo apt install build-essential

ちなみに、gccインストールを忘れると以下のようなエラーがでるので注意しましょう

ERROR: Unable to find the development tool`cc` in your path; please make sure that you have the package 'gcc' installed. If gcc is installed on your system, then please check that `cc` is in your PATH.

上記終了したら、いったんリブートします

sudo reboot

3.2.3 Nvidia ディスプレイドライバのインストール

STEP 1. 以下のコマンドを実行して、インストールスクリプトを実行します

cd downloads/

スクリプトに実行権限を付与し、

chmod +x NVIDIA-Linux-x86_64-525.60.11.run

スクリプトを実行します

sudo ./NVIDIA-Linux-x86_64-525.60.11.run --no-x-check

(オプションに --no-x-check をつけないと、You appear to be running an X server; please exit X before installing.というエラーがでますので、オプションをつけるのを忘れないようにしましょう。)


STEP 2. ドライバのインストールが開始します


STEP 3. 以下の画面がでたら Continue installation を選択します

An alternate method of installing the NVIDIA driver was detected(This is usually a package provided by your distributor.) というメッセージは、Ubuntuでは別のほうほうでインストールできるよ と親切に教えてくれていますが、 apt install をする方法は、環境によってはうまくいかないので、このままNvidiaのインストーラーを使う! のがオススメです。

STEP4.以下の画面は OK を選択します

ERROR: The Nouveau kernel driver is currently in use by your system.This driver is incompatible with the NVIDIA driver, and must be disabled before proceeding.  と出ます。つまり Nouveau kernel driverがあると、Nvidia driverがインストールできないよという警告ですが、次のステップでなんとかなるので、OK をおします。

STEP.以下の画面は YES を選択します

For some distributions, Nouveau can be disabled by adding a file in...
** Nouveau は、無効にできるかもしれないけど試しますか?** ときいているので YES を選択します。
実際これで無効にできます。

STEP 6. 以下の画面は OK を選択します

Nouveau を無効にするための *.conf ファイルを作成した というメッセージとなります

STEP 7.以下の画面は OK を選択します

Installation has failed.Please see the file ... インストールは失敗しました みたいなメッセージがでますが、ここで落ち込まないでください。

Nouveau ドライバーをいま無効にしたので、次のインストールでは成功できますので、心配無用なのです。

STEP 8. Reboot

以下のコマンドで Reboot します

sudo reboot

STEP 9. リブートしたら、端末を開いて再びインストールスクリプトを実行します

sudo ./NVIDIA-Linux-x86_64-525.60.11.run --no-x-check

STEP 10.以下の画面は No を選択します


32ビット互換ライブラリは不要のため

STEP 11.以下の画面は

OK を選択します

WARNING: Unable to determine the path to install the libglvnd EGL vendor library config files. Check that you have pkg-config and the libglvnd development libraries installed, or specify a path with --glvnd-egl-config-path. と表示されています。
このWARNINGがきになる場合は以下を実行して libglvnd をインストールしても問題はないです

sudo apt install pkg-config libglvnd-dev
libglvnd は、複数のベンダー間で OpenGL API 呼び出しを調停するための、ベンダーに依存しないディスパッチ レイヤーです。異なるベンダーの複数のドライバーが同じファイルシステムに共存できるようにし、実行時に各 API 呼び出しをディスパッチするベンダーを決定します。

(https://github.com/NVIDIA/libglvnd)

というもので、OpenGL系のライブラリなので、なんにせよ Deep Learning 用途で使う場合には必要はないですね。

SSTEP 12. 以下の画面は No を選択します

Would you like to run the nvidia-xconfig utility to ...

「Xの設定を更新するか?」聞いています。
今はNoですすめておきます。これはnvidia-xconfigコマンドを使えばいつでも実行可能です。

STEP 12.以下の画面は OK を選択します

これで Nvidia Driver のインストール終了となります。


STEP 14.設定を反映するため リブート

これまでの設定反映のためリブートします

sudo reboot

STEP 15. リブートしたらNvidia Driver のインストールが成功したか確認する

端末を開いて以下のコマンドを実行します

nvidia-settings

OSがGPUをちゃんと認識しており無事ドライバをインストールできました!


次回は、 Anaconda をインストールして Python 環境を作れるようにしましょう!


navigation

Read more

KVキャッシュのオフロード戦略とGQAの実践的理解

KVキャッシュのオフロード戦略とGQAの実践的理解

こんにちは! LLM推論基盤プロビジョニング講座、今回は番外編をお届けします! 第3回「使用モデルの推論時消費メモリ見積もり」では、GPUメモリ消費の二大要素としてモデルのフットプリントとKVキャッシュを紹介し、1トークンあたりのKVキャッシュサイズの計算方法を解説しました。 また第4回「推論エンジンの選定」ではvLLMやDeepSpeedなど各推論エンジンの特性を比較し、第5回では量子化や並列化による最適化戦略を解説してきました。 しかし、実はKVキャッシュにはまだまだ掘り下げるべきトピックがあります。 * KVキャッシュをGPUのVRAMからCPU RAMやディスクにオフロードしたらどうなるのか? どのくらい遅くなるのか? * HuggingFace TransformersとvLLMでは、KVキャッシュの管理方針がなぜ根本的に異なるのか? * そもそもKVキャッシュが大きくなる原因であるアテンション構造を変えてしまう GQA(Grouped-Query Attention)とは何か? 第5回で紹介した量子化とは別の軸で、KVキャッシュを劇的に小さくする技術です。

By Qualiteg プロダクト開発部, Qualiteg コンサルティング
Python と JavaScript で絵文字の文字数が違う!サロゲートペアが引き起こす位置ずれバグの話

Python と JavaScript で絵文字の文字数が違う!サロゲートペアが引き起こす位置ずれバグの話

こんにちは! Qualitegプロダクト開発部です! PII(個人情報)検出のデモアプリを開発していて、検出したエンティティの位置をハイライト表示する機能を実装していました。 バックエンドは Python(FastAPI)、フロントエンドは JavaScript という構成です。 ある日、テストデータにこんなメール文面を使ったところ、ハイライトの位置が途中から微妙にずれるバグに遭遇しました。 鈴木一郎 様 いつもお世話になっております。 サンプル商事の佐藤でございます。 先日の件、確認が取れましたのでご連絡いたします。 お忙しいところ恐縮ですが、ご確認のほど宜しくお願い致します。 💻 #オンラインでのお打ち合わせ、お気軽に声がけください! ―――――――――――――――――――――――――――――― サンプル商事株式会社 営業部 第一課 山田 太郎 (Yamada Taro) 〒100-0001 東京都千代田区千代田1-1-1 サンプルビル 3F tel: 03-1234-5678 https://example.com/contact 検出結果をハイライト表示

By Qualiteg プロダクト開発部
大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第5回 ブラウザ設定と認証

大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第5回 ブラウザ設定と認証

こんにちは、今回はシリーズ第5回「ブラウザ設定と認証」について解説いたします! さて、前回(第4回)では、プロキシサーバーをドメインに参加させることで、ChatGPTやClaudeへのアクセスを「誰が」行ったかを確実に特定する仕組みを解説しました。「信頼の連鎖」の概念や、Windows版Squidなら1時間で構築できる環境、Negotiate/NTLM/Basicという3段階の認証フォールバック機構について理解いただけたかと思います。 しかし、せっかくサーバー側で完璧な統合Windows認証環境を構築しても、ブラウザ側の設定が適切でなければ、ユーザーには毎回パスワード入力ダイアログが表示されてしまいます。 「Edgeだと自動でログインできるのに、Chromeだとパスワードを聞かれる」 「同じサーバーなのにURLの書き方で動作が違う」 これらはヘルプデスクに寄せられる典型的な問い合わせです。(ただ、業務に好きなブラウザ使っていいよ、という企業はそんなに多くはないとおもいます) 今回は、統合Windows認証がブラウザでどのように動作するのか、その仕組みから各ブラウザ(Edge/

By Qualiteg AIセキュリティチーム, Qualiteg コンサルティング
スライドパズルを解くAIから学ぶ、「考える」の正体

スライドパズルを解くAIから学ぶ、「考える」の正体

こんにちは! 「このパズル、AIの教科書に載ってるらしいよ」 子供の頃に遊んだスライドパズル。いや、大人が遊んでも楽しいです。 数字のタイルをカチャカチャ動かして揃えるあれです。実はこのシンプルなパズルが、AI研究の出発点のひとつだったって知ってました? 今回は、このパズルを題材に「AIがどうやって考えているのか」を解き明かしていきます。しかも、ここで使われている手法は、Google Mapsの経路探索からChatGPTまで、現代の様々な技術のベースになっているんです。 まず遊んでみよう 理屈の前に、まずは感覚を思い出してみてください。 最初に shuffle をクリックすると、配置がシャッフルされゲームを開始できます。 ちなみに必ず解くことができるようになっていますが、慣れていないとそれなりに難しいかもしれません。 どうでしょう? 何手でクリアできましたか? クリアできなくても大丈夫です。記事後半で、実際にAIが解いてくれる機能つきゲームも掲載しています^^ 以下は動画です。本ブログで紹介するアルゴリズムで実際にパズルを解く様子をご覧いただけます

By Qualiteg 研究部