目次

4. 開発環境

作業の目的によって起動するAMI(Amazon マシンイメージ)と開発環境の設定法が変わります。

4.1 C言語

C言語のアプリケーションをビルドするには、 EC2の標準のAMIである "Amazon Linux 2023 AMI" を使用します。
このAMIには開発環境は含まれていないので、 ログイン後、最初に下記のコマンドを実行してください。 終了するまでに2~3分かかります。
これにより開発に必要な言語(GCCなど)やツール(makeなど)が使用可能になります。 GCCはOpenMPを含みます。

$ sudo yum -y groupinstall "Development Tools"

4.2 CUDA

GPUを使用するにはCUDAが必要になります。
AMIには "Deep Learning Base AMI with Single CUDA (Amazon Linux 2023)" を選択してください。
g6.xlarge~g6.16xlarge 等の違いはCPUのvCPU数とメモリー容量の違いであり、GPUはすべて共通で1個です。
GCCとCUDAがインストールされています。

4.3 PyTorch

深層学習のためにPyTorchを使用するにはGPUが必須です。
AMIには "Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.10 (Amazon Linux 2023)" を選択してください。
g6.xlarge~g6.16xlarge 等の違いはCPUのvCPU数とメモリー容量の違いであり、GPUはすべて共通で1個です。
作業前に以下のコマンドを実行してください。
Pythonのライブラリ(numpy, scipy, matplotlib, torch, torchvision, numba 等) とGCC,CUDAが使用可能になります。

$ source /opt/pytorch/bin/activate

4.4 インスタンス

CPUとGPUが使用できるインスタンスは表1と表2の通りです。
その他のインスタンスもあります。 また随時新しいインスタンスが追加されます。

表1 CPUインスタンス
インスタンスCPU
C7aAMD EPYC 9R14
G8gAWS Graviton4

表2 GPUインスタンス
インスタンスCPUGPU
G6 AMD EPYC 7R13NVIDIA L4 (24GiB, 7424コア)
G6eAMD EPYC 7R13NVIDIA L40S (48GiB, 18176コア)
G7eIntel Xeon Platinum 8559CNVIDIA RTX PRO 6000 Blackwell (96GiB, 24064コア)

4.5 ファイルの転送

WinSCPを用いてソースコードその他をAWSに転送してください。
予めアップロードするファイルを一つのフォルダの下にまとめておくと便利です。
作業中は必要に応じてできたファイルをダウンロードしてください。 インスタンスを終了するとAWSにあるファイルはすべて削除されることに注意してください。