Saat menerapkan tugas AI, komputasi berperforma tinggi, atau beban kerja lain yang memerlukan sumber daya GPU di Knative, Anda dapat menentukan jenis instans yang dipercepat GPU di Layanan Knative untuk membuat instans tersebut. Selain itu, Anda dapat mengaktifkan fitur berbagi GPU agar beberapa pod dapat berbagi satu GPU, sehingga memaksimalkan pemanfaatannya.
Prasyarat
Knative telah diterapkan di kluster Anda. Untuk informasi lebih lanjut, lihat atau Deploy and Manage Knative.
Konfigurasikan sumber daya GPU
Tambahkan anotasi k8s.aliyun.com/eci-use-specs ke bagian spec.template.metadata.annotation dalam konfigurasi Layanan Knative untuk menentukan jenis instans ECS yang dipercepat GPU. Tambahkan bidang nvidia.com/gpu ke bagian spec.containers.resources.limits untuk menentukan jumlah sumber daya GPU yang dibutuhkan oleh Layanan Knative.
Berikut adalah contoh blok kode:
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: helloworld-go
spec:
template:
metadata:
labels:
app: helloworld-go
annotations:
k8s.aliyun.com/eci-use-specs: ecs.gn5i-c4g1.xlarge # Tentukan jenis instans ECS yang dipercepat GPU yang didukung oleh Knative.
spec:
containers:
- image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:73fbdd56
ports:
- containerPort: 8080
resources:
limits:
nvidia.com/gpu: '1' # Tentukan jumlah GPU yang dibutuhkan oleh kontainer. Bidang ini wajib. Jika Anda tidak menentukan bidang ini, kesalahan akan muncul saat pod diluncurkan. Famili instans ECS yang dipercepat GPU berikut didukung:
gn7i, famili instans komputasi dioptimalkan dengan akselerasi GPU menggunakan GPU NVIDIA A10. Famili ini mencakup berbagai jenis instans seperti ecs.gn7i-c8g1.2xlarge.
gn7, mencakup berbagai jenis instans seperti ecs.gn7-c12g1.3xlarge.
gn6v, famili instans komputasi dioptimalkan dengan akselerasi GPU menggunakan GPU NVIDIA V100. Famili ini mencakup berbagai jenis instans seperti ecs.gn6v-c8g1.2xlarge.
gn6e, famili instans komputasi dioptimalkan dengan akselerasi GPU menggunakan GPU NVIDIA V100. Famili ini mencakup berbagai jenis instans seperti ecs.gn6e-c12g1.3xlarge.
gn6i, famili instans komputasi dioptimalkan dengan akselerasi GPU menggunakan GPU NVIDIA T4. Famili ini mencakup berbagai jenis instans seperti ecs.gn6i-c4g1.xlarge.
gn5i, famili instans komputasi dioptimalkan dengan akselerasi GPU menggunakan GPU NVIDIA P4. Famili ini mencakup berbagai jenis instans seperti ecs.gn5i-c2g1.large.
gn5, famili instans komputasi dioptimalkan dengan akselerasi GPU menggunakan GPU NVIDIA P100. Famili ini mencakup berbagai jenis instans seperti ecs.gn5-c4g1.xlarge.
Famili instans gn5 dilengkapi dengan disk lokal. Anda dapat memasang disk lokal ke instans kontainer elastis. Untuk informasi lebih lanjut, lihat Buat Instans Kontainer Elastis dengan Disk Lokal Terpasang.
Versi driver GPU yang didukung oleh instans kontainer elastis yang dipercepat GPU adalah NVIDIA 460.73.01. Versi CUDA Toolkit yang didukung adalah 11.2.
Untuk informasi lebih lanjut tentang famili instans ECS yang dipercepat GPU, lihat Jenis Instans ECS yang Tersedia untuk Setiap Wilayah dan Ikhtisar Famili Instans.
Aktifkan berbagi GPU
Lihat contoh untuk mengaktifkan fitur berbagi GPU pada node.
Anda dapat mengonfigurasi bidang
aliyun.com/gpu-memdi Layanan Knative untuk menentukan ukuran memori GPU. Contoh:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: helloworld-go namespace: default spec: template: metadata: annotations: autoscaling.knative.dev/maxScale: "100" autoscaling.knative.dev/minScale: "0" spec: containerConcurrency: 1 containers: - image: registry-vpc.cn-hangzhou.aliyuncs.com/hz-suoxing-test/test:helloworld-go name: user-container ports: - containerPort: 6666 name: http1 protocol: TCP resources: limits: aliyun.com/gpu-mem: "3" # Tentukan ukuran memori GPU.
Referensi
Anda dapat menerapkan model AI sebagai layanan inferensi di pod Knative, mengonfigurasi penskalaan otomatis, dan secara fleksibel mengalokasikan sumber daya GPU untuk meningkatkan pemanfaatan sumber daya GPU serta kinerja inferensi AI. Untuk informasi lebih lanjut, lihat Praktik Terbaik untuk Menerapkan Layanan Inferensi AI di Knative.
Untuk pertanyaan yang sering diajukan dan solusi tentang GPU, lihat FAQ GPU.