VS Codeを用いた深層学習環境の構築とRTX 4080 Super vs 4090のベンチマーク比較

1. PowerShellの実行環境設定

1.1 実行ポリシーの変更

WindowsのPowerShellでスクリプトの実行が制限されている場合、Conda環境の有効化などでエラーが発生することがあります。以下のコマンドを管理者権限のPowerShellで実行し、実行ポリシーを RemoteSigned に変更します。
# 実行ポリシーをRemoteSignedに設定
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
これにより、ローカルで作成されたスクリプトの実行が許可されます。

1.2 システム環境変数へのパス追加

コマンドプロンプトやPowerShellから直接 condapip を呼び出せるようにするため、システムの環境変数(Path)に以下のディレクトリを追加します。※インストール先が C:\miniconda3 の場合の例です。
  • C:\miniconda3
  • C:\miniconda3\Scripts
  • C:\miniconda3\Library\bin
  • C:\miniconda3\Library\usr\bin
  • C:\miniconda3\Library\mingw-w64\bin
  • C:\Users\YourName\AppData\Local\Programs\Microsoft VS Code\bin
設定反映後、ターミナルを再起動し、以下のコマンドでCondaの初期設定を行います。
conda init

2. VS Codeの最適化設定

2.1 必須拡張機能の導入

効率的な開発のために、VS Codeの拡張機能マーケットプレイスから以下のパッケージをインストールします。
  • Japanese Language Pack: UIの日本語化
  • Python: IntelliSenseやデバッグ機能の有効化

2.2 Pythonインタープリターの選択

プロジェクト内の .py ファイルを開いた状態で、VS Codeの右下にあるステータスバー、または Ctrl+Shift+P で「Python: Select Interpreter」を入力し、構築した仮想環境(Conda環境など)を選択します。

2.3 既定のターミナルの変更

PowerShellではなくコマンドプロンプト(cmd)を標準で使用したい場合は、Ctrl+Shift+P から 「Terminal: Select Default Profile」を検索し、「Command Prompt」を選択します。

2.4 Condaの自動アクティベート競合の解消

ターミナル起動時に複数の環境が重複してアクティベートされる場合は、以下の設定でベース環境の自動起動を無効化します。
conda config --set auto_activate_base False

3. CUDAおよびcuDNNの動作確認

仮想環境内にインストールされたPyTorchがGPUを正しく認識しているかを確認します。
import torch

def check_gpu_status():
    gpu_ready = torch.cuda.is_available()
    print(f"CUDA可用性: {gpu_ready}")
    
    if gpu_ready:
        print(f"PyTorchバージョン: {torch.__version__}")
        print(f"CUDAバージョン: {torch.version.cuda}")
        print(f"cuDNN有効化: {torch.backends.cudnn.is_available()}")
        print(f"cuDNNバージョン: {torch.backends.cudnn.version()}")

if __name__ == "__main__":
    check_gpu_status()

4. ハードウェア別トレーニング速度の比較検証

システムのOSやハードウェア構成が学習効率に与える影響を、YOLOv8を用いたベンチマークで比較します。

OSおよびIDEによるパフォーマンスの差異 (RTX 4080 Super / YOLOv8n)

同一のモデル・ハイパーパラメータでの1エポックあたりの所要時間は以下の通りです。
  • Windows 11 + PyCharm: 約17秒
  • Windows 11 + VS Code: 約16秒
  • Ubuntu 20.04 + VS Code: 約14秒
Linux環境(Ubuntu)の方がオーバーヘッドが少なく、Windows環境よりも約12.5%高速という結果になりました。

ハイエンドGPU比較:RTX 4080 Super vs RTX 4090

学習モデルの規模(GFLOPs)に応じた、RTX 4080 SuperとRTX 4090のパフォーマンス差を検証しました。
モデル規模 RTX 4080 Super (Ubuntu) RTX 4090 (AutoDL/Linux) 差分 (1エポック)
YOLOv8n (低負荷) 14秒 13秒 約1秒
YOLOv8s (中負荷) 26秒 22秒 約4秒
YOLOv8l (高負荷) 78秒 65秒 約13秒
小規模から中規模のモデル(50 GFLOPs以下)を扱う場合、RTX 4080 Superと4090の差は数分程度の蓄積に留まります。一方で、大規模なモデルや膨大なデータセットを扱う場合は、VRAM容量とコア数に勝るRTX 4090が優位となります。コストパフォーマンスを重視する場合、中規模な研究用途であればRTX 4070 Ti SuperやRTX 4080 Superが有力な選択肢となります。

タグ: VSCode Miniconda PyTorch CUDA NVIDIA-RTX

9月15日 19:25 投稿