#はじめに
大学院の研究でCUDAなどを使う必要性が出てきたので、GPUの認識を考えるとデュアルブートが一番良いと判断。もともと持っていたWindowsPCでUbuntu20.04とのデュアルブートを試みます。
#PCスペック
(変更前)
OS : windows10 home
m.2 nvme SSD : 1TB
HDD : 2TB
メモリ : 8G×2
GPU : Nvidia RTX2070super
(変更後)
OS : windows10 home or Ubuntu20.04LTS
m.2 nvme SSD : 1TB (windows 10 home)
m.2 nvme SSD : 500TB (Ubuntu20.04LTS)
HDD : 2TB
メモリ : 8G×2 + 16G×2 = 48G
GPU : Nvidia RTX2070super
#デュアルブートの必要性
まず本当にデュアルブートが必要か判断してください。
Linux系のOSをWindowsで使いたい場合は方法は大まかに分けて3つあります。
-
仮想環境の構築
一番オーソドックスなのはDocker、VirtualBoxなどの仮想環境作成ツールを使っての作成だと思います。Windows内のリソースは取られ、少し動作も遅いですがGPUなどの認識がいらないのであればこれでもいいです。DockerなどでもGPUが使えるようになったと噂を聞きましたが、めんどくさかったのでやめました。 -
WSL
お手軽にCUIを体験してみたい、atcoderなどの競技プログラミングでのファイル作成しかしないということであればwslがいいです。WindowsStoreにあるのをダウンロードすればターミナルは使えるようになるので一番簡単でしょう。新しいwsl2ではGPUが使用可能らしいですが、バグがあったり動作が不安定だったりするので記事投稿時点では採用しません。2023年頃にはまともに使えるようになってそうな気はします。 -
デュアルブート
結局これが一番楽。起動時にOSを選択するのが面倒ですが。同じSSD内でパーティションを区切って他OSをインストールすることも出来ますが、よっぽどわかっている人以外は辞めたほうがいいです。
結論: GPUを使いたいならSSD増設してデュアルブート化する
#参考記事
検索したところこちら[[1]]がわかりやすくまとまっていたので、この記事を参考にデュアルブートに挑戦していきます
#LiveUSBの作成
いまあるPCでLiveUSBを作成します。ブートメディアならばなんでもいいのでDVDでも問題ないです。
最初はbalena Etcherを使用して作成しようとしたのですが、フリーズしてできなかったので仕方なくUNetBootinでLiveUSBを作成しました。
#SSDの増設
僕はM.2SSDを買いましたがSATA接続のものを買っても問題ないと思います。
SATA接続の場合は電源ケーブル、SATAケーブル、
SSDを購入する前に自分のPCを開けてみて中身がどうなっているのかをきちんと確認しましょう。
僕はもともとPCゲームをするためにBTOで買っていたので、購入履歴からマザボの名称を発見。
その名称を検索してマザボ上にSSDをどうつけるかを考えました。
m.2スロットが2つあっても同時に使えなかったり、そもそも2つなかったりするかもしれないのでしっかり調べましょう。
SSDをマザボに接続できたらwindowsで起動して認識しているか確認しましょう。
認識していることが確認できたらOSを入れたい記録媒体以外は全部マザボから外しましょう。
間違えてwindowsの方にインストールしたら当然データふっとぶのでやばいです。
よっぽど自信のある方以外は全部外すことをおすすめします。
あとケーブル類を外す際はマザボ側の端子、電源側の端子を外しましょう。
逆側を外しただけのときに何故かうまく行きませんでした。
メモリ不足を感じていたので、ついでにメモリも増設しました。
#OSのインストール
Live USBを挿した状態で起動してBIOSを開きます。
僕はF2で開いて、F11でOSの選択でしたがそれはPCによるので自分で調べてください。
あとは[[1]]の通りに進めていきます。
パーティションのところだけわからなかったので調べました。
どのサイトか忘れたのでわからない人は調べてください。
再起動すると画面がバグっていたので[[1]]に書いてある参考文献をみて解決。
要するにNVIDIAドライバーがうまく動かないので無効にしてあとでダウンロードする感じらしい。
書いてある通りやって再起動するとうまく行きました。
とりあえず流れでいろいろダウンロード。
ひとまずダウンロードが必要とのことで再起動すると無限にログインを求められる。
調べて見ると[[2]]に対応作が書いてあってのでそれを実行。
再起動するとやっとログイン出来た。
linux系はやっぱりある程度調べたり解決する力がないときついですね。
#確認とダウンロード
ターミナルを開いて
nvidia-smi
と入力してGPU情報が出てくればGPU認識されています。
sudo apt update
sudo apt upgrade
でパッケージの更新ができるので好きなコマンドやアプリケーションを入れましょう。
storeからダウンロードしてもOKです。
#おわりに
今回はデュアルブート化をしてみました。ノートPCもUbuntuにしたことがあるのでまだ楽でしたが、デスクトップPC内部をいじったりするのは初めてだったので壊さないか緊張しましたね。リスクを減らして作業を行うことの大切さが改めてわかりました。次はディープラーニング用の環境を構築していきたいと思います。
それではまた!
#参考文献
[1]:https://qiita.com/shimopino/items/464ca8d5294a3a2cb9ee
[[1]] WindowsでSSDを増設してデュアルブートしたUbuntuでPyTorch(GPU)を使うまで
[2]:https://musaprg.hatenablog.com/entry/2020/06/30/201759
[[2]]:Ubuntu20.04がログインループで立ち上がらなくなった場合の対処法