序文
ラオスアンと彼の核爆弾
一目でわかる開発環境
グラフィックドライバのインストール
ドライバーをダウンロード
nouveauを無効にする
ドライバをインストールする
CUDA8.0をインストールします
参照
やっと
Linuxにドライバをインストールするのは本当に簡単なことではありません。数え切れないほどの苦痛を経て、ようやく[GPU](https://cloud.tencent.com/product/gpu?from=10680)プログラミング環境をセットアップしました。とても気に入っていますが、それでも言いたいです。だから、Nvidia:FUCK YOU!」(Linuxの父)(手動で面白い)。
Linuxの父
[ YouTube RTX2080会議](https://www.youtube.com/watch?v=-ZefAW-Anno)
Lao Huangの起業家精神にあふれた道は順調に進んでおらず、今では台無しにされたGTX 1080TiやRTX2080でさえ1日で生まれることはありません。
1993 2015年4月、集積回路メーカーのLSILogicのLaoHuang(Huang Renxun)と、Sunの2人の若いエンジニアであるChrisMalachowskyとCurtisPriemがNvidiaを共同設立しました。当初の意図は、特別なチップを開発することでした。 、ビデオゲームでの3D画像のレンダリング速度を高速化し、よりリアルな表示効果をもたらすために使用されます。
2年後、最初の核爆弾が発売されました。この製品は、ゲームコンソール用の最初のマルチメディアアクセラレータであるNV1です。このアクセラレータは、グラフィック処理、サウンドカード、ゲームのジョイスティック機能を統合しています。リリースされると、魅力的でした。当時最大のゲームメーカーであったセガの目セガは、第6世代の家庭用ゲームコンソール「サターン」とパソコンにNV1を使用することを決定しました。もちろん、セガは現在はサードパーティにすぎません。基本的にはダファ(ソニー)、旧レン(ニンテンドー)とマイクロソフトは3つの部分に分かれています。叔父がまだいるダファは本当に繁栄しています。今は辞任しています。ダファがゲームコンソール市場をリードし続けるかどうかはわかりません。ただし、注意してください。これは、すでに辞退していた古いレンです。それはNvidiaに関連しています、後で言います。
しかし、同じ年に、まだ巨大なMicrosoftがWindows 95を発売し、主流のグラフィックチップ市場がゲームコンソールからPCに移行し、同時にDirect3D標準をリリースしました。NVIDIAは、業界共通の標準と互換性のない3次元グラフィック実装方法として2次方程式テクスチャマッピングを使用しています。 、したがって、市場の売上高は急速に減少しています。
2年後、NVIDIAはRIVA128、RIVA128ZX、RIVATNT、その他のグラフィックプロセッサを次々と発売しました。これらの新製品は、Microsoft Direct3DおよびOpenGL標準をサポートするだけでなく、エネルギー効率と低価格の点で競合他社の3DfxのVoodooおよびATIのRageProを上回っています。徐々に機械工場全体の支持を獲得し、1999年1月にナスダックに上場しました。同年8月、NvidiaはGeForce-** GeForce 256 **にちなんで名付けられた最初のグラフィックコアを発売し、GPUを初めて提案しました。コンセプト翌年の終わりに、Nvidiaは7000万ドルの現金と100万株の会社株式を使用して3Dfxを買収し、正式に業界のリーダーになりました。
この時点で、ラオファンは彼が川や湖を支配することを理解しています。
ご存知のとおり、JHはゲームコンソール業界に参入するために多額の費用を費やしてきました。2000年、JHはNVIDIAにXboxグラフィックチップ、SoundStormサウンドチップ、マザーボードソリューションの開発を依頼しました。しかし、JHの期限はXboxがリリースされる2か月前の1年だけでした。生産を開始しました。結局、マイクロソフトは最初の発売を延期せざるを得ず、チャンスを逃してソニーPS2に敗れましたが、PS2は最初の発売だけでなく、ゲームの数と品質もはるかに進んでいます。これは、PS3が後に敗れたポイントでもあります。 、そしてPS4王の復帰のポイント。巨人は機会を逃し、Nvidiaを抑制することしかできず、後に品質管理の問題が発生しました。巨人はNVIDIAの競合他社であるATI(後にAMDに買収されました)に注文を渡しました。協力の失敗により、Nvidiaは高額の支払いを余儀なくされました。2003年に収益が減少しただけでなく、互換性の問題により、その年に発売されたGeForceFXがATIのRadeon9700に直接敗れたMicrosoftのDirectX9仕様の確立に関する重要なニュースも見逃しました。 NV1のクラッシュは非常に似ています。さらに残念なことに、GeForce FXには、動作温度が高すぎるという問題があり、複数の自発的な燃焼事故が発生します。HuangRenxunは、かつてゲーマーから「2つの爆弾のチャンピオン」として嘲笑されていました。以前のSamsungNote7の爆発も台無しになりました。中国市場全体。しかし、理由はもっと複雑です。誰もが理解しています。巨大なハードに加えて、歯磨き粉工場(Intel)もATIをサポートし始めています。ブレークスルーを達成するために、NVIDIAは、一方では解決が困難なジャイアントを積極的に探し、他方では再び協力するよう努めています。 Xboxの注文を失い、Sony PS3の注文を勝ち取るために懸命に努力しました。さらに、ATIを圧倒するために高性能チップを導入し続け、Intelとの特許クロスライセンス契約にも達しました。少し気が遠くなると言えます。
川や湖を支配したい古い黄が巨大な硬い歯磨き粉工場によって抑制されているのを見て、シリコンバレーでさえ、事業を始めるのは非常に困難です。
2007 今年、NVIDIAのチーフサイエンティストであるDavid Kirkは、GPUを一般化できるCUDA(Compute Unified Device Architecture)テクノロジーを開発するために多くのリソースを投資するように、Lao Huangを説得しました。これは、今日のGPUプログラミングの中核であり、すべてのNVIDIAGPUを作成します。 CUDAをサポートします。このクレイジーな動きのコストは莫大です。関連するCUDAロジック回路をハードウェア製品の設計に追加する必要があるため、チップ面積が増加し、熱放散が増加し、コストが増加し、故障率が増加します。同時に、各製品のソフトウェアドライバーを確保する必要があります。それらはすべてCUDAをサポートしていますが、これはNvidiaのプログラマーに生き残る方法を提供しません。プログラマーの意味は何ですか?科学者になるのはどれほど楽しいですか(手動で面白い)。2008年、AMDはNVIDIAの古いライバルATIを買収し、GPUとのCPU統合のための新しいソリューションを形成しました。 。しかし残念ながら、AMDそろばんは飛ぶことができますが、現在は歯磨き粉ファクトリーCPU + Nvidia GPUです。赤緑の戦いが始まったか、対戦相手が名前を変更しました。
Intelはまた、Nvidiaとの協力を終了し、3Dグラフィックアクセラレータを独自のチップセット(現在は統合ディスプレイまたは核ディスプレイと呼ばれています)に統合し、フルーツマシンがNvidiaを使用しない言い訳を見つけました。これは、代わりに中古のShenzhouを購入するのも無力です。 rmbpがGPUを開発する理由、「だから、Intel&Apple:FUCKYOU!」。
2012 2015年、ディープニューラルネットワークテクノロジーは、コンピュータービジョン、[音声認識](https://cloud.tencent.com/product/asr?from=10680)、自然言語処理、さまざまな分野の人工知能テクノロジーなど、汎用GPUのサポートにより大きな進歩を遂げました。これらはすべて、急速な発展の条件となっています。NVIDIAデータ中央ビジネスも活況を呈しており、大小の企業に強力なコンピューティングサポートを提供しています。
そして2016年10月20日、ニンテンドーはNvidiaがカスタマイズしたTegra X1システムチップを使用してスイッチをリリースしました。正直なところ、スイッチがなければ、それは第三の世界ではなく、老人はハンドヘルドエリアでしか楽しむことができません。多くの人がハンドヘルドとしてプレイしますが、スイッチはハンドヘルドではなくホストです。
ですから、深層学習がラオファンにチャンスをもたらしたのか、ラオファンが深層学習の機会をもたらしたのかはわかりません。つまり、AIの第3の波とAI時代の到来は、ラオファンが不可欠です。しかし、AIについて話さなくても、Nvidiaはありません。スーパー3Aの傑作は言うまでもなく、現在の3Aの傑作はありません。
Lao Huangが最終的にAMDを打ち負かし、残りのPC市場シェアを獲得できるかどうか、あるいはまだAMDの手にあるホスト市場の大部分でさえ、実際には重要ではありません。今はモバイル時代なので、AI時代は完全に来たと思います。以前は、Qualcommのシェアを獲得することが重要でした。HuaweiとAppleが行ったことを見ると、Googleが注目していることは言うまでもなく、Lao Huangがさらに前進するためにやるべきことがまだたくさんあります(手動で恐れています)。
UBUNTU追加ドライバーで提供されているグラフィックカードドライバーは使用しないでください!!!
UBUNTU追加ドライバーで提供されているグラフィックカードドライバーは絶対に使用しないでください!!!
UBUNTU追加ドライバーで提供されているグラフィックカードドライバーは絶対に使用しないでください!!!
一般的に言って、あなたはいくつかの奇妙な問題に遭遇するでしょう、もちろん、鯉は問題を抱えていません(手動で面白い)。
これは最初のピットであり、それを示すにはおおよそ3つの方法があります。
nvidia-smi
さて、私の練習について話しましょう:
まず、[公式Webサイト](https://www.nvidia.com/Download/index.aspx?lang=cn)にアクセスして、グラフィックカードドライバーをダウンロードします。たとえば、私はGT 750Mで、オペレーティングシステムは64ビットLinuxです。対応するバージョンをダウンロードします。
ドライバーをダウンロード
前のドライバーを削除します。何もインストールしていない場合でも、この手順は無害であることに注意してください。
sudo apt-get remove --purge nvidia*
いくつかの必要なライブラリを更新してインストールし、最初に非常に多くをインストールしてから、CUDAをインストールします。
sudo apt-get update
sudo apt-get install dkms build-essential linux-headers-generic
図に示すように、blacklist.confを開き、最後にnouveauを無効にする設定を追加します。
sudo vim /etc/modprobe.d/blacklist.conf
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
nouveauを無効にする
nouveauカーネルモジュールを無効にする
echo options nouveau modeset=0
sudo update-initramfs -u
再起動します。次のコマンドを実行すると、何も印刷できません、おめでとうございます。nouveauは正常に無効になりました。
lsmod | grep nouveau
tty1に移動します(ショートカットキーctrl + alt + f1、応答がない場合は、f1-f7を1つずつ試してください。異なるLinux、キーはわずかに異なります)。グラフィカルインターフェイスを閉じます。
sudo service lightdm stop
ドライバをインストールし、ピットがあることに注意してください。必ず**-no-opengl-files **を追加してください。これがなくてもインストールが成功した場合でも、無制限のログインの問題が発生します。
sudo chmod u+x NVIDIA-Linux-x86_64-390.87.run
sudo ./NVIDIA-Linux-x86_64-390.87.run –no-opengl-files
インストールしたが**-no-opengl-files **を追加しなかった場合は、以下の手順に従って保存してください。
sudo ./NVIDIA-Linux-x86_64-390.87.run –uninstall
sudo ./NVIDIA-Linux-x86_64-390.87.run –no-opengl-files
再起動します。nvidia-smiコマンドで試してください。下の図のようなものが表示された場合は、おめでとうございます。ドライバは正常にインストールされています。または、追加のドライバ表示が表示されます手動でインストールされたドライバを引き続き使用してください。
nvidia-smi
追加ドライバー
まずライブラリを作りましょう。
sudo apt-get install freeglut3-dev libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
[公式ウェブサイト](https://developer.nvidia.com/cuda-toolkit-archive)にアクセスして、目的のCUDAバージョンをダウンロードします。これが[8.0秒バージョン](https://developer.nvidia.com/cuda-80-ga2-download-archive)です。次に示すように、runfile(ローカル)バージョンをダウンロードします。
CUDA8.0をインストールします
md5を確認し、資格がない場合は再度ダウンロードします。次の図は私のテスト結果です。
md5sum cuda_8.0.61_375.26_linux.run
md5検出
グラフィカルインターフェイスをもう一度閉じます
sudo service lightdm stop
インストール時に**-no-opengl-files **パラメータを追加し、最初にスペースを保持する必要があります。その後、デフォルトが最後まで続きます。
sudo sh cuda_8.0.61_375.26_linux.run –no-opengl-files
次に、3つがインストールされているのがわかります。
グラフィカルインターフェイスを開く
sudo service lightdm start
ここに別のピットがあります。14.04.5の場合、このステップでは開くことができず、後で14.04に変更されます。つまり、カーネルを慎重に選択する必要があります。
次のコマンドを実行します。図3に示す3つのフォルダーが表示されている場合は、おめでとうございます。
ls /dev/nvidia*
見つからないか見つからない場合でも、実行する操作がいくつかあります。vimを使用してxxx.sh(任意の名前)を作成し、次のように入力します。
#! /bin/bash
/sbin/modprobe nvidia
if["$?"-eq 0]; then
# Count the number of NVIDIA controllers found.
NVDEVS=`lspci | grep -i NVIDIA`
N3D=`echo "$NVDEVS" | grep "3D controller" | wc -l`
NVGA=`echo "$NVDEVS" | grep "VGA compatible controller" | wc -l`
N=`expr $N3D + $NVGA - 1`for i in`seq 0 $N`;do
mknod -m 666/dev/nvidia$i c 195 $i
done
mknod -m 666/dev/nvidiactl c 195255else
exit 1
fi
/sbin/modprobe nvidia-uvm
if["$?"-eq 0]; then
# Find out the major device number used by the nvidia-uvm driver
D=`grep nvidia-uvm /proc/devices | awk '{print $1}'`
mknod -m 666/dev/nvidia-uvm c $D 0else
exit 1
fi
実行後、3つのフォルダが表示されます。
sudo chmod +x xxx.sh
sudo ./xxx.sh
ls /dev/nvidia*/dev/nvidia0 /dev/nvidiactl /dev/nvidia-uvm
次に、図に示すように、rc.localに書き込みます。
sudo vim /etc/rc.local
rc.local
環境構成ファイルを開く
sudo vim /etc/profile
最後に書く:
export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH
保存して終了すると、有効になります。
source /etc/profile
その後、あなたはそれを見ることができます。
いくつかの検出コマンドを実行します。それらが私が示したものと類似している場合、おめでとうございます。環境構成は完了です。
cat /proc/driver/nvidia/version
nvcc -V
検出
私はたくさんの記事を参照しましたが、そのうちのいくつかは私に落とし穴をもたらしました、私はそれを書きません。さて、あなたを許してください(手動無力)以下は非常に有用な記事です。
https://zh.wikipedia.org/wiki/NVIDIA
https://gist.github.com/dangbiao1991/7825db1d17df9231f4101f034ecd5a2b
http://ifenxi.com/archives/1103
https://www.jianshu.com/p/35c7fde85968?from=singlemessage
https://blog.csdn.net/qjk19940101/article/details/78927109
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/#abstract
今日では、並列プログラミングとGPUプログラミングが基盤となっており、CUDAプログラミング環境の構築を学ぶことが重要です。これに基づいて、ディープラーニングやテンソルフローなどを構築し続けることができます。
Recommended Posts