全部产品
Search
文档中心

Platform For AI:FAQ tentang DLC

更新时间:Jan 06, 2026

Topik ini menjawab pertanyaan yang sering diajukan tentang Deep Learning Containers (DLC), memberikan panduan troubleshooting, serta menawarkan solusi.

T: Pelatihan model gagal dengan error: SupportsDistributedTraining false, harap atur InstanceCount=1

  • Penyebab: Pekerjaan pelatihan saat ini dikonfigurasi untuk menggunakan beberapa instans, tetapi model tersebut tidak mendukung pelatihan terdistribusi.

  • Solusi: Atur jumlah node menjadi 1.

    image

T: Pelatihan model gagal dengan error: failed to compose dlc job specs, resource limiting triggered, you are trying to use more GPU resources than the threshold

Pekerjaan pelatihan melebihi batas dua GPU yang berjalan secara konkuren. Tunggu hingga pekerjaan saat ini selesai sebelum memulai pekerjaan baru, atau kirimkan tiket untuk meminta kuota yang lebih tinggi.

T: Apa yang harus saya lakukan jika menerima error "exited with code 137"?

Jika Anda menerima error "xxx exited with code 137", gunakan instans dengan ukuran memori yang lebih besar, tingkatkan jumlah worker, atau ubah jumlah memori yang diminta dalam kode Anda.

image

Di Linux, kode kesalahan 137 menunjukkan bahwa proses tersebut dipaksa dihentikan oleh sinyal SIGKILL. Penyebab paling umum adalah penggunaan memori yang tinggi, yang mengakibatkan error kehabisan memori (out-of-memory/OOM). Anda dapat memeriksa penggunaan memori para worker di halaman detail pekerjaan untuk mengidentifikasi penyebab ketidakcukupan memori. Selanjutnya, gunakan instans dengan ukuran memori yang lebih besar, tingkatkan jumlah worker, atau ubah jumlah memori yang diminta dalam kode Anda.

T: Apa yang harus saya lakukan jika status pekerjaan DLC adalah Failed atau Dequeued?

Status eksekusi tugas untuk DLC terjadi dalam urutan berikut:

Jenis Pekerjaan

Urutan Status

Pekerjaan DLC yang menggunakan sumber daya bayar sesuai penggunaan

Menggunakan sumber daya preemptible Layanan Komputasi AI Lingjun

Creating -> Bidding -> Preparing -> Running -> Succeeded/Failed/Stopped

Menggunakan sumber daya publik Layanan Komputasi AI Lingjun atau sumber daya umum

Creating -> Preparing -> Running -> Succeeded/Failed/Stopped

Pekerjaan DLC yang menggunakan sumber daya langganan

Creating -> Queued -> Preparing -> Running -> Succeeded/Failed/Stopped

  • Apa yang harus saya lakukan jika status pekerjaan adalah Preparing?

    Jika pekerjaan tetap berada dalam status Preparing dalam waktu lama, kemungkinan karena Anda mengonfigurasi dataset CPFS untuk pekerjaan pelatihan terdistribusi tanpa mengonfigurasi virtual private cloud (VPC). Anda harus membuat ulang pekerjaan pelatihan terdistribusi tersebut. Saat membuat ulang, konfigurasikan dataset CPFS dan VPC. Pastikan VPC yang dipilih sama dengan VPC dari sistem file CPFS. Untuk informasi selengkapnya, lihat Buat pekerjaan pelatihan.

  • Apa yang harus saya lakukan jika status pekerjaan adalah Failed?

    Di halaman detail pekerjaan, arahkan kursor ke ikon image.png di samping status pekerjaan atau periksa log operasi instans untuk mengidentifikasi penyebab kegagalan. Untuk informasi selengkapnya, lihat Lihat detail pelatihan.

T: Bisakah saya mengubah pekerjaan yang awalnya menggunakan sumber daya publik agar menggunakan sumber daya khusus nanti?

Anda harus membuat ulang pekerjaan tersebut untuk mengubah sumber daya yang digunakan. Di kolom Actions pekerjaan asli, klik Clone untuk membuat pekerjaan baru. Pekerjaan baru tersebut menggunakan kembali konfigurasi pekerjaan asli, sehingga Anda tidak perlu memasukkan ulang parameter yang sama. Untuk informasi selengkapnya mengenai penagihan, lihat Penagihan DLC.

T: Bagaimana cara mengatur multi-mesin dan multi-GPU di DLC?

Anda dapat mengonfigurasi perintah startup berikut saat membuat pekerjaan DLC. Untuk informasi selengkapnya, lihat Buat pekerjaan pelatihan.

python -m torch.distributed.launch \ --nproc_per_node=2 \ --master_addr=${MASTER_ADDR} \ --master_port=${MASTER_PORT} \ --nnodes=${WORLD_SIZE} \ --node_rank=${RANK} \ train.py --epochs=100

T: Bagaimana cara mengunduh model yang telah dilatih di platform PAI-DLC ke mesin lokal?

Saat Anda mengirimkan pekerjaan DLC, Anda dapat mengaitkan dataset yang diperlukan. Kemudian, konfigurasikan perintah startup untuk mengarahkan hasil pelatihan ke direktori dataset yang dipasang.image

Setelah pelatihan selesai, file model yang dihasilkan akan otomatis disimpan ke direktori dataset yang dipasang. Anda kemudian dapat mengakses sistem file dataset yang sesuai dan mengunduh file model tersebut ke mesin lokal Anda.

T: Bagaimana cara menggunakan citra Docker di DLC?

  • Buat pekerjaan DLC menggunakan citra Docker: Dorong citra Docker Anda ke Alibaba Cloud Container Registry (ACR). Lalu, tambahkan sebagai custom image ke ruang kerja PAI Anda. Anda kemudian dapat memilih citra tersebut untuk memulai instans saat membuat pekerjaan DLC.

  • Instal dan gunakan Docker dalam kontainer DLC: Pekerjaan DLC berjalan di dalam kontainer. Oleh karena itu, Anda tidak dapat menginstal dan menggunakan Docker di dalam kontainer DLC.

T: Bagaimana cara mengonfigurasi pekerjaan DLC agar melepaskan node yang telah selesai agar dapat digunakan oleh pekerjaan DLC lain?

Deskripsi masalah:

Saat pekerjaan DLC memulai tugas pelatihan terdistribusi multi-worker, beberapa worker mungkin selesai lebih awal dan keluar secara normal. Hal ini dapat terjadi karena faktor seperti kesenjangan data. Namun, dengan konfigurasi default, worker yang telah selesai tetap menduduki node yang dialokasikan.

Solusi: Konfigurasikan parameter lanjutan PAI-DLC ReleaseResourcePolicy. Secara default, parameter ini tidak dikonfigurasi, dan sumber daya komputasi hanya dilepaskan setelah seluruh pekerjaan selesai. Jika Anda mengaturnya ke pod-exit, sumber daya komputasi akan dilepaskan segera setelah pekerja keluar.

T: Mengapa pekerjaan DLC melaporkan error OSError: [Errno 116] Stale file handle?

Deskripsi masalah:

Beberapa worker gagal dengan error OSError: [Errno 116] Stale file handle saat menjalankan kompilasi ahead-of-time (AOT) torch.compile milik PyTorch. Kegagalan ini disebabkan oleh ketidakmampuan membaca file cache.

Troubleshooting:

Error ini biasanya terjadi di lingkungan Network File System (NFS). Error ini dipicu ketika suatu proses memegang handle file untuk file yang telah dihapus atau dipindahkan di server. Upaya klien untuk mengakses file tersebut menggunakan handle yang tidak valid menyebabkan handle menjadi stale.

Penyebab:

Akar permasalahan terletak pada mekanisme kompilasi AOT PyTorch yang menyimpan cache graf komputasi yang dioptimalkan ke sistem file. Secara default, cache disimpan di /tmp, yang biasanya merupakan tmpfs lokal. Namun, di lingkungan seperti komputasi kluster, cache mungkin disimpan di sistem file terdistribusi CPFS yang dipasang melalui NFS. NFS sensitif terhadap operasi penghapusan file. Handle file stale dapat dipicu dalam beberapa kondisi. Misalnya, PyTorch mungkin secara otomatis membersihkan file cache lama, atau proses lain menghapus direktori cache, sehingga file tersebut dihapus. Error juga dapat terjadi jika file dipindahkan, dihapus, atau izinnya diubah di server NFS saat klien masih memegang handle lama. Klien NFS secara default melakukan cache atribut file, yang dapat mencegah mereka mendeteksi perubahan yang dilakukan di server. Masalah ini diperparah oleh beberapa faktor lingkungan. CPFS berbasis NFS, sehingga rentan terhadap error stale file handle selama akses konkurensi tinggi, terutama untuk file sementara ber-siklus hidup pendek seperti file cache. Akses konkuren dari banyak worker yang membaca, menulis, atau membersihkan cache secara bersamaan juga dapat menimbulkan race condition.

Solusi:

  • Solusi utama: Paksa cache menggunakan tmpfs lokal dengan mengatur variabel lingkungan TORCHINDUCTOR_CACHE_DIR=/dev/shm/torch_cache.

Solusi alternatif:

  1. Ikuti dokumentasi resmi Torch untuk menggunakan Redis sebagai cache bersama. Ini memerlukan layanan Redis yang telah dikonfigurasi.

  2. Periksa konfigurasi NFS CPFS. Opsi mount `noac` mungkin dapat mengurangi masalah ini, tetapi dapat memengaruhi performa.

  3. Nonaktifkan cache dengan mengatur TORCHINDUCTOR_CACHE_DIR="". Namun, ini mengorbankan performa kompilasi.