HƯỚNG DẪN KỸ THUẬT

Slurm cho các cụm đào tạo AI

Slurm là trình quản lý khối lượng công việc nguồn mở có chức năng lên lịch và điều hành các công việc trên các cụm điện toán hiệu suất cao và nó đã trở thành lựa chọn mặc định cho hoạt động đào tạo AI quy mô lớn.

Đọc trong 2 phútCập nhật lần cuối

Tổng quan

It matters because it reliably distributes massive training runs across thousands of GPUs.

Lặn sâu

Slurm (Tiện ích Linux đơn giản để quản lý tài nguyên) có nguồn gốc từ siêu máy tính và hiện cung cấp năng lượng cho nhiều cụm đào tạo AI lớn nhất thế giới. Người dùng gửi tập lệnh hàng loạt kèm theo sbatch, yêu cầu các tài nguyên như nút và GPU với các lệnh như --gres=gpu:8 và hàng đợi Slurm, ưu tiên và khởi chạy tác phẩm. Trình khởi chạy srun của nó tạo ra các quy trình phối hợp giữa các nút, kết hợp tự nhiên với các khung phân tán như PyTorch DDP và NCCL. Slurm theo dõi việc tính toán tài nguyên, thực thi các giới hạn chia sẻ và phân vùng công bằng, đồng thời xử lý việc lập kế hoạch chèn lấp để sắp xếp các công việc nhỏ vào các khoảng trống. Để đào tạo mô hình biên giới, các nhóm dựa vào Slurm để quản lý hàng nghìn GPU, khởi động lại từ các điểm kiểm tra sau khi nút bị lỗi và dự trữ công suất chuyên dụng cho các hoạt động kéo dài nhiều tuần.

Hiểu biết kỹ thuật

Trình nền của bộ điều khiển Slurm (slurmctld) đưa ra các quyết định lập lịch trong khi tác nhân slurmd trên mỗi nút khởi chạy các nhiệm vụ và báo cáo trạng thái. Plugin Tài nguyên chung (GRES) theo dõi GPU để các công việc yêu cầu chúng một cách rõ ràng. srun đặt các biến môi trường (thứ hạng, kích thước thế giới, địa chỉ chính) phân phối các thư viện đào tạo được đọc để khởi động giao tiếp NCCL. Lập lịch chèn lấp cho phép các công việc ngắn hơn chạy sớm miễn là chúng không trì hoãn việc đặt trước có mức độ ưu tiên cao hơn, duy trì mức độ sử dụng ở mức cao.

Tác động chiến lược

Chi phí và ngân sách

Các quyết định về kiến ​​trúc sẽ thúc đẩy hiệu suất và chi phí vận hành trong nhiều năm.

Quyết định rõ ràng hơn

Giáo dục kỹ thuật giúp các nhóm chọn nhóm phù hợp chứ không chỉ nhóm mới nhất.

Kiểm soát chất lượng

Lựa chọn kỹ thuật tốt hơn làm giảm sự cố về độ tin cậy trong sản xuất.

Tương lai của Slurm cho các cụm đào tạo AI

Slurm tiếp tục bổ sung tính năng bùng nổ đám mây, hỗ trợ vùng chứa thông qua Pyxis và Enroot cũng như các tính năng nhận biết GPU chặt chẽ hơn. Khi các cụm AI mở rộng tới hơn 100.000 GPU, khả năng chịu lỗi sẽ cao hơn, tích hợp điểm kiểm tra-khởi động lại tự động và các tác vụ linh hoạt có thể thay đổi kích thước sau lỗi. Nhiều tổ chức hiện chạy Slurm cùng với hoặc bên dưới Kubernetes và các bộ lập lịch kết hợp nhằm mục đích kết hợp hiệu quả kiểu HPC với tính linh hoạt của nền tảng đám mây để thực hiện các đợt đào tạo lớn hơn bao giờ hết.

Triển khai trong thế giới thực

Một phòng thí nghiệm ở biên giới triển khai một chương trình đào tạo kéo dài nhiều tuần trên hàng nghìn GPU với một tập lệnh sbatch duy nhất yêu cầu hàng trăm nút.

Một nhà nghiên cứu gửi 'srun --gres=gpu:8' để lấy tám GPU trên một nút cho thử nghiệm PyTorch DDP.

Lập kế hoạch chèn lấp sắp xếp một công việc đánh giá ngắn vào các GPU nhàn rỗi trong khi một đợt đào tạo dự trữ lớn đang chờ bắt đầu.

Sau khi một nút bị lỗi giữa chừng, Slurm sẽ yêu cầu công việc đó vào hàng đợi và nó sẽ tiếp tục lại từ điểm kiểm tra mới nhất thay vì bắt đầu lại.

Rủi ro & lan can

Tối ưu hóa một điểm chuẩn có thể che giấu những điểm yếu của hệ thống rộng hơn.

Chi phí cơ sở hạ tầng và bảo trì thường được đánh giá thấp.

Khoảng cách về bảo mật và khả năng quan sát có thể tăng lên khi hệ thống trở nên phức tạp hơn.

Lộ trình thực hiện

1

Xác định các mục tiêu về độ trễ, chất lượng và chi phí trước khi triển khai.

2

Điểm chuẩn trong điều kiện tải và dữ liệu thực tế.

3

Giám sát thiết bị về lỗi, độ lệch và tác động của người dùng.

4

Chuẩn bị đường dẫn khôi phục và ứng phó sự cố trước khi mở rộng quy mô.

Tiếp tục khám phá

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Slurm for AI Training Clusters quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Bắt đầu bài kiểm tra

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Hướng dẫn tiếp theo

Ngăn xếp đào tạo DeepSpeed ​​và Megatron

Câu hỏi thường gặp

What is Slurm for AI Training Clusters?

Slurm là trình quản lý khối lượng công việc nguồn mở có chức năng lên lịch và điều hành các công việc trên các cụm điện toán hiệu suất cao và nó đã trở thành lựa chọn mặc định cho hoạt động đào tạo AI quy mô lớn. Điều này quan trọng vì nó phân phối các chương trình đào tạo lớn trên hàng nghìn GPU một cách đáng tin cậy.

Người dùng thường sử dụng lệnh nào để gửi một công việc hàng loạt tới Slurm?

sbatch gửi một tập lệnh bó mô tả các tài nguyên và lệnh cho một công việc tới hàng đợi Slurm.

Công việc Slurm yêu cầu GPU như thế nào?

Hệ thống Tài nguyên chung (GRES) cho phép các công việc yêu cầu GPU một cách rõ ràng, ví dụ --gres=gpu:8.

Thành phần Slurm nào đưa ra quyết định lập lịch tập trung?

slurmctld là daemon điều khiển lên lịch công việc, trong khi slurmd chạy trên mỗi nút để khởi chạy các tác vụ.

Tại sao srun kết hợp tốt với các khung đào tạo phân tán như PyTorch DDP?

srun khởi chạy các tác vụ được đồng bộ hóa trên các nút và cung cấp thông tin về thứ hạng và địa chỉ chính mà các thư viện phân tán sử dụng để khởi động.

Mục đích của việc lập lịch chèn lấp trong Slurm là gì?

Chèn lấp cải thiện việc sử dụng bằng cách điều chỉnh các công việc nhỏ hơn vào các khoảng trống trong lịch trình miễn là chúng không đẩy lùi các công việc đã đặt trước.