

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Jalankan lowongan kerja GPU
<a name="gpu-jobs"></a>

Pekerjaan GPU membantu Anda menjalankan pekerjaan yang menggunakan instans. GPUs

Berikut tipe instans Amazon EC2 berbasis GPU yang didukung. [https://aws.amazon.com/ec2/instance-types/trn1/](https://aws.amazon.com/ec2/instance-types/trn1/) [ 2 Instans Dl1, dan Instans](https://aws.amazon.com/ec2/instance-types/dl1/) [Amazon](https://aws.amazon.com/ec2/instance-types/dl2q/) EC2 Dl2.


|  Tipe instans  |  GPUs  |  Memori GPU  |  v CPUs  |  Memori  |  Bandwith jaringan  | 
| --- | --- | --- | --- | --- | --- | 
|  g3s.xlarge  |  1  |  8 GiB  |  4  |  30,5 GiB  |  10 Gbps  | 
|  g3.4xlarge  |  1  |  8 GiB  |  16  |  122 GiB  |  Hingga 10 Gbps  | 
|  g3.8xlarge  |  2  |  16 GiB  |  32  |  244 GiB  |  10 Gbps  | 
|  g3.16xlarge  |  4  |  32 GiB  |  64  |  488 GiB  |  25 Gbps  | 
|  g4dn.xlarge  |  1  |  16 GiB  |  4  |  16 GiB  |  Hingga 25 Gbps  | 
|  g4dn.2xlarge  |  1  |  16 GiB  |  8  |  32 GiB  |  Hingga 25 Gbps  | 
|  g4dn.4xlarge  |  1  |  16 GiB  |  16  |  64 GiB  |  Hingga 25 Gbps  | 
|  g4dn.8xlarge  |  1  |  16 GiB  |  32  |  128 GiB  |  50 Gbps  | 
|  g4dn.12xlarge  |  4  |  64 GiB  |  48  |  192 GiB  |  50 Gbps  | 
|  g4dn.16xlarge  |  1  |  16 GiB  |  64  |  256 GiB  |  50 Gbps  | 
|  g5.xlarge  |  1  |  24 GiB  |  4  |  16 GiB  |  Hingga 10 Gbps  | 
|  g5.2xlarge  |  1  |  24 GiB  |  8  |  32 GiB  |  Hingga 10 Gbps  | 
|  g5.4xlarge  |  1  |  24 GiB  |  16  |  64 GiB  |  Hingga 25 Gbps  | 
|  g5.8xlarge  |  1  |  24 GiB  |  32  |  128 GiB  |  25 Gbps  | 
|  g5.16xlarge  |  1  |  24 GiB  |  64  |  256 GiB  |  25 Gbps  | 
|  g5.12xlarge  |  4  |  96 GiB  |  48  |  192 GiB  |  40 Gbps  | 
|  g5.24xlarge  |  4  |  96 GiB  |  96  |  384 GiB  |  50 Gbps  | 
|  g5.48xlarge  |  8  |  192 GiB  |  192  |  768 GiB  |  100 Gbps  | 
|  g5g.xlarge  |  1  |  16 GiB  |  4  |  8 GiB  |  Hingga 10 Gbps  | 
|  g5g.2xlarge  |  1  |  16 GiB  |  8  |  16 GiB  |  Hingga 10 Gbps  | 
|  g5g.4xlarge  |  1  |  16 GiB  |  16  |  32 GiB  |  Hingga 10 Gbps  | 
|  g5g.8xlarge  |  1  |  16 GiB  |  32  |  64 GiB  |  12 Gbps  | 
|  g5g.16xlarge  |  2  |  32 GiB  |  64  |  128 GiB  |  25 Gbps  | 
|  g5g.metal  |  2  |  32 GiB  |  64  |  128 GiB  |  25 Gbps  | 
|  g6.xlarge  |  1  |  24 GiB  |  4  |  16 GiB  |  Hingga 10 Gbps  | 
|  g6.2xlarge  |  1  |  24 GiB  |  8  |  32 GiB  |  Hingga 10 Gbps  | 
|  g6.4xlarge  |  1  |  24 GiB  |  16  |  64 GiB  |  Hingga 25 Gbps  | 
|  g6.8xlarge  |  1  |  24 GiB  |  32  |  128 GiB  |  25 Gbps  | 
|  g6.16xlarge  |  1  |  24 GiB  |  64  |  256 GiB  |  25 Gbps  | 
|  g6.12xlarge  |  4  |  96 GiB  |  48  |  192 GiB  |  40 Gbps  | 
|  g6.24xlarge  |  4  |  96 GiB  |  96  |  384 GiB  |  50 Gbps  | 
|  g6.48xlarge  |  8  |  192 GiB  |  192  |  768 GiB  |  100 Gbps  | 
|  g6e.xlarge  |  1  |  48 GiB  |  4  |  32 GiB  |  Hingga 20 Gbps  | 
|  g6e.2xlarge  |  1  |  48 GiB  |  8  |  64 GiB  |  Hingga 20 Gbps  | 
|  g6e.4xlarge  |  1  |  48 GiB  |  16  |  128 GiB  |  20 Gbps  | 
|  g6e.8xlarge  |  1  |  48 GiB  |  32  |  256 GiB  |  25 Gbps  | 
|  g6e.16xlarge  |  1  |  48 GiB  |  64  |  512 GiB  |  35 Gbps  | 
|  g6e.12xlarge  |  4  |  192 GiB  |  48  |  384 GiB  |  100 Gbps  | 
|  g6e.24xlarge  |  4  |  192 GiB  |  96  |  768 GiB  |  200 Gbps  | 
|  g6e.48xlarge  |  8  |  384 GiB  |  192  |  1536 GiB  |  400 Gbps  | 
|  gr6.4xbesar  |  1  |  24 GiB  |  16  |  128 GiB  |  Hingga 25 Gbps  | 
|  gr6.8xbesar  |  1  |  24 GiB  |  32  |  256 GiB  |  25 Gbps  | 
|  p2.xlarge  |  1  |  12 GiB  |  4  |  61 GiB  |  Tinggi  | 
|  p2.8xlarge  |  8  |  96 GiB  |  32  |  488 GiB  |  10 Gbps  | 
|  p2.16xlarge  |  16  |  192 GiB  |  64  |  732 GiB  |  20 Gbps  | 
|  p3.2xlarge  |  1  |  16 GiB  |  8  |  61 GiB  |  Hingga 10 Gbps  | 
|  p3.8xlarge  |  4  |  64 GiB  |  32  |  244 GiB  |  10 Gbps  | 
|  p3.16xlarge  |  8  |  128 GiB  |  64  |  488 GiB  |  25 Gbps  | 
|  p3dn.24xlarge  |  8  |  256 GiB  |  96  |  768 GiB  |  100 Gbps  | 
|  p4d.24xlarge  |  8  |  320 GiB  |  96  |  1152 GiB  |  400 Gbps  | 
|  p4de.24xlarge  |  8  |  640 GiB  |  96  |  1152 GiB  |  400 Gbps  | 
|  p5.48xlarge  |  8  |  640 GiB  |  192  |  2 TiB  |  3200 Gbps  | 
|  p5e.48xlarge  |  8  |  1128 GiB  |  192  |  2 TiB  |  3200 Gbps  | 
|  p5en.48xlarge  |  8  |  1128 GiB  |  192  |  2 TiB  |  3200 Gbps  | 
|  p6-b200.48xlarge  |  8  |  1440 GiB  |  192  |  2 TiB  |  100 Gbps  | 
|  trn1.2xlarge  |  1  |  32 GiB  |  8  |  32 GiB  |  Hingga 12,5 Gbps  | 
|  trn1.32xlarge  |  16  |  512 GiB  |  128  |  512 GiB  |  800 Gbps  | 
|  trn1n.32xlarge  |  16   |  512 GiB  |  128  |  512 GiB  |  1600 Gbps  | 
|  trn2.48xlarge  |  16  |  1.5 TIB  |  192  |  2 TiB  |  3,2 Tbps  | 
|  inf1.xlarge  |  1  |  8 GiB  |  4  |  8 GiB  |  Hingga 25 Gbps  | 
|  inf1.2xlarge  |  1  |  8 GiB  |  8  |  16 GiB  |  Hingga 25 Gbps  | 
|  inf1.6xlarge  |  4  |  32 GiB  |  24  |  48 GiB  |  25 Gbps  | 
|  inf1.24xlarge  |  16  |  128 GiB  |  96  |  192 GiB  |  100 Gbps  | 
|  inf2.xlarge  |  1  |  32 GiB  |  4  |  16 GiB  |  Hingga 15 Gbps  | 
|  inf2.8xlarge  |  1  |  32 GiB  |  32  |  128 GiB  |  Hingga 25 Gbps  | 
|  inf2.24xlarge  |  6  |  192 GiB  |  96  |  384 GiB  |  50 Gbps  | 
|  inf2.48xlarge  |  12  |  384 GiB  |  192  |  768 GiB  |  100 Gbps  | 
|  dl1.24xlarge  |  8  |  256 GiB  |  96  |  768 GiB  |  400 Gbps  | 
|  dl2q.24xlarge  |  8  |  128 GiB  |  96  |  768 GiB  |  100 Gbps  | 

**catatan**  
Untuk pekerjaan GPU AWS Batch hanya mendukung jenis instans yang memiliki NVIDIA GPUs. Misalnya, [https://aws.amazon.com/ec2/instance-types/g4/#Amazon_EC2_G4ad_instances](https://aws.amazon.com/ec2/instance-types/g4/#Amazon_EC2_G4ad_instances)keluarga tidak didukung untuk penjadwalan GPU. Anda masih dapat menggunakannya [https://aws.amazon.com/ec2/instance-types/g4/#Amazon_EC2_G4ad_instances](https://aws.amazon.com/ec2/instance-types/g4/#Amazon_EC2_G4ad_instances) AWS Batch dengan mendefinisikan hanya persyaratan vcpu dan memori dalam definisi pekerjaan, kemudian mengakses GPU host secara langsung melalui penyesuaian dalam [data pengguna template peluncuran Amazon EC2 dengan](launch-templates.md#lt-user-data.title) AMI yang dioptimalkan untuk komputasi Amazon ECS atau Amazon EKS, atau AMI yang disesuaikan untuk menggunakan AMD. GPUs  
Jenis instans yang menggunakan ARM64 arsitektur didukung untuk pekerjaan GPU pada data pengguna yang AMIs disediakan khusus AWS Batch atau Amazon EC2 untuk mengakses kode dan GPUs konfigurasi yang disesuaikan. Misalnya, keluarga [https://aws.amazon.com/ec2/instance-types/g5g/](https://aws.amazon.com/ec2/instance-types/g5g/)contoh.

Parameter [ResourceRequirements](job_definition_parameters.md#ContainerProperties-resourceRequirements) untuk definisi pekerjaan menentukan jumlah yang akan disematkan GPUs ke wadah. Jumlah ini GPUs tidak tersedia untuk pekerjaan lain yang berjalan pada contoh itu selama durasi pekerjaan itu. Semua tipe instans dalam lingkungan komputasi yang menjalankan pekerjaan GPU harus berasal dari keluarga`p3`,,`p4`,`p5`,`p6`,`g3`,`g3s`, `g4``g5`, atau `g6` instance. Jika hal ini tidak dilakukan, tugas GPU mungkin akan terjebak di status `RUNNABLE`.

Pekerjaan yang tidak menggunakan GPUs dapat dijalankan pada instance GPU. Namun, mungkin diperlukan biaya lebih untuk menjalankannya di instans GPU daripada di instans non-GPU yang serupa. Tergantung pada vCPU, memori, dan waktu tertentu yang diperlukan, tugas non-GPU ini mungkin memblokir berjalannya tugas GPU.

**Topics**
+ [

# Buat Kubernetes cluster berbasis GPU di Amazon EKS
](create-gpu-cluster-eks.md)
+ [

# Buat definisi pekerjaan GPU Amazon EKS
](create-eks-gpu-job-definition.md)
+ [

# Jalankan pekerjaan GPU di cluster Amazon EKS Anda
](run-gpu-job-eks-cluster.md)

# Buat Kubernetes cluster berbasis GPU di Amazon EKS
<a name="create-gpu-cluster-eks"></a>

Sebelum Anda membuat Kubernetes cluster berbasis GPU di Amazon EKS, Anda harus telah menyelesaikan langkah-langkahnya. [Memulai dengan AWS Batch di Amazon EKS](getting-started-eks.md) Selain itu, pertimbangkan juga hal berikut:
+ AWS Batch mendukung jenis instance dengan NVIDIA GPUs.
+ Secara default, AWS Batch pilih AMI yang dipercepat Amazon EKS dengan Kubernetes versi yang cocok dengan versi bidang kontrol cluster Amazon EKS Anda.

```
$ cat <<EOF > ./batch-eks-gpu-ce.json
{
  "computeEnvironmentName": "My-Eks-GPU-CE1",
  "type": "MANAGED",
  "state": "ENABLED",
  "eksConfiguration": {
    "eksClusterArn": "arn:aws:eks:<region>:<account>:cluster/<cluster-name>",
    "kubernetesNamespace": "my-aws-batch-namespace"
  },
  "computeResources": {
    "type": "EC2",
    "allocationStrategy": "BEST_FIT_PROGRESSIVE",
    "minvCpus": 0,
    "maxvCpus": 1024,
    "instanceTypes": [
      "p3dn.24xlarge",
      "p4d.24xlarge"
    ],
    "subnets": [
        "<eks-cluster-subnets-with-access-to-internet-for-image-pull>"
    ],
    "securityGroupIds": [
        "<eks-cluster-sg>"
    ],
    "instanceRole": "<eks-instance-profile>"
  }
}
EOF

$ aws batch create-compute-environment --cli-input-json file://./batch-eks-gpu-ce.json
```

AWS Batch tidak mengelola plugin perangkat NVIDIA GPU atas nama Anda. Anda harus menginstal plugin ini ke cluster Amazon EKS Anda dan membiarkannya menargetkan AWS Batch node. Untuk informasi selengkapnya, lihat [Mengaktifkan Dukungan GPU di Kubernetes](https://github.com/NVIDIA/k8s-device-plugin#enabling-gpu-support-in-kubernetes) aktif. GitHub

Untuk mengkonfigurasi plugin NVIDIA perangkat (`DaemonSet`) untuk menargetkan AWS Batch node, jalankan perintah berikut.

```
# pull nvidia daemonset spec
$ curl -O https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/v0.12.2/nvidia-device-plugin.yml
# using your favorite editor, add Batch node toleration
# this will allow the DaemonSet to run on Batch nodes
- key: "batch.amazonaws.com/batch-node"
  operator: "Exists"

$ kubectl apply -f nvidia-device-plugin.yml
```

Kami tidak menyarankan Anda mencampur beban kerja berbasis komputasi (CPU dan memori) dengan beban kerja berbasis GPU dalam pasangan lingkungan komputasi dan antrian pekerjaan yang sama. Ini karena pekerjaan komputasi dapat menggunakan kapasitas GPU.

Untuk melampirkan antrian pekerjaan, jalankan perintah berikut.

```
$ cat <<EOF > ./batch-eks-gpu-jq.json
 {
    "jobQueueName": "My-Eks-GPU-JQ1",
    "priority": 10,
    "computeEnvironmentOrder": [
      {
        "order": 1,
        "computeEnvironment": "My-Eks-GPU-CE1"
      }
    ]
  }
EOF

$ aws batch create-job-queue --cli-input-json file://./batch-eks-gpu-jq.json
```

# Buat definisi pekerjaan GPU Amazon EKS
<a name="create-eks-gpu-job-definition"></a>

Hanya `nvidia.com/gpu` didukung saat ini dan nilai sumber daya yang Anda tetapkan harus berupa bilangan bulat. Anda tidak dapat menggunakan pecahan GPU. Untuk informasi selengkapnya, lihat [Jadwal GPUs](https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/) dalam *Kubernetesdokumentasi*.

Untuk mendaftarkan definisi pekerjaan GPU untuk Amazon EKS, jalankan perintah berikut.

```
$ cat <<EOF > ./batch-eks-gpu-jd.json
{
    "jobDefinitionName": "MyGPUJobOnEks_Smi",
    "type": "container",
    "eksProperties": {
        "podProperties": {
            "hostNetwork": true,
            "containers": [
                {
                    "image": "nvcr.io/nvidia/cuda:10.2-runtime-centos7",
                    "command": ["nvidia-smi"],
                    "resources": {
                        "limits": {
                            "cpu": "1",
                            "memory": "1024Mi",
                            "nvidia.com/gpu": "1"
                        }
                    }
                }
            ]
        }
    }
}
EOF

$ aws batch register-job-definition --cli-input-json file://./batch-eks-gpu-jd.json
```

# Jalankan pekerjaan GPU di cluster Amazon EKS Anda
<a name="run-gpu-job-eks-cluster"></a>

Sumber daya GPU tidak dapat dikompresi. AWS Batch **membuat spesifikasi pod untuk pekerjaan GPU di mana nilai **permintaan** sama dengan nilai limit.** Ini adalah Kubernetes persyaratan.

Untuk mengirimkan pekerjaan GPU, jalankan perintah berikut.

```
$ aws batch submit-job --job-queue My-Eks-GPU-JQ1 --job-definition MyGPUJobOnEks_Smi --job-name My-Eks-GPU-Job

# locate information that can help debug or find logs (if using Amazon CloudWatch Logs with Fluent Bit)
$ aws batch describe-jobs --job <job-id> | jq '.jobs[].eksProperties.podProperties | {podName, nodeName}'
{
  "podName": "aws-batch.f3d697c4-3bb5-3955-aa6c-977fcf1cb0ca",
  "nodeName": "ip-192-168-59-101.ec2.internal"
}
```