AI và Machine Learning từ lâu đã dựa vào các kiến trúc xử lý và công nghệ lưu trữ truyền thống để đáp ứng nhu cầu về hiệu suất của chúng. Nhưng điều đó đang dần thay đổi. AI ngày nay và các hệ thống xử lý học máy sử dụng GPU, FPGA (field-programmable gate arrays) và các bộ ASIC (application-specific integrated circuits) – cần xử lý dữ liệu nhanh hơn nhiều so với các phiên bản trước đó.
Trong khi đó, các tập dữ liệu được sử dụng để đào tạo các hệ thống thông minh đó ngày càng phát triển về quy mô. Và để đáp ứng nhu cầu xử lý chúng, các nhà phát triển công nghệ đang chuyển dần sang sử dụng giải pháp lưu trữ dựa trên bộ nhớ NVMe cho các hệ thống AI.
NVMe cung cấp băng thông lớn, độ trễ (latency) thấp hơn so với các ổ cứng chuẩn SAS và SATA, cho phép đạt được hiệu suất cao hơn nhiều mà các workload trong AI đòi hỏi. Chẳng hạn, Machine Learning training sử dụng hàng triệu mẫu dữ liệu để đào tạo các thuật toán, để chúng có thể đưa ra quyết định cho các dữ liệu mới.
“NVMe đã dịch chuyển từ dòng sản phẩm sơ khai khi ra mắt đầu thập kỷ này thành một lựa chọn lưu trữ chính cho AI từ năm 2019”, Jason Echols, giám đốc tiếp thị kỹ thuật cấp cao của Micron Technology, hãng cung cấp ổ cứng SSD NVMe, cho biết.
Lưu trữ cơ học truyền thống có tốc độ truy xuất chỉ bằng 1/3 so với công nghệ NVMe hiện tại. Bên cạnh đó, công nghệ lưu trữ này được thiết kế với đầu đọc và đĩa quay cơ học, có bản chất là truy xuất tuần tự. Các bộ điều khiển chỉ cung cấp số lượng hàng đợi hạn chế và thường tương ứng với số lượng đầu đọc trên đĩa. Ngược lại, các thiết bị NVMe có tới 64.000 hàng đợi, cho phép chúng phục vụ tới 64.000 yêu cầu dữ liệu đồng thời.
Nhanh hơn – tốt hơn
Flash là một thành phần quan trọng trong các nền tảng AI kết hợp hệ thống lưu trữ mở rộng, hiệu suất cao với hệ thống tăng tốc xử lý bằng GPU để loại bỏ các tắc nghẽn I/O và thúc đẩy khả năng khai phá AI ở quy mô lớn. Nhanh hơn luôn luôn tốt hơn, vì vậy NVMe là một sự tiến triển tự nhiên của các giải pháp này, thúc đẩy hiệu suất tăng cường và đưa chúng đến gần hơn với thời gian thực.
Rất có thể NVMe sẽ thay thế lưu trữ truyền thống trong môi trường AI. Các ứng dụng AI thường yêu cầu các tập dữ liệu khổng lồ và khi các ứng dụng hướng đến vấn đề hiệu năng hơn, các hệ thống lưu trữ bổ trợ truyền thống nhanh chóng trở nên khó đáp ứng các yêu cầu xử lý.
Chỉ một vài năm trước đây, network là nhân tố chính làm hạn chế hiệu năng của hệ thống tổng thể. Khi các nhà cung cấp giải pháp chuyển sang mạng ethernet 10 Gigabit, rồi 25GbE và sắp tới là 100GbE (và sau đó là 400GbE!), các giải pháp mạng mới đang nhanh chóng tiếp cận tốc độ truy cập của bộ nhớ cục bộ.
Kirill Shoikhet, kiến trúc sư trưởng tại Excelero, nhà cung cấp giải pháp distributed block-based storage cho biết, các ứng dụng AI chạy trên các hệ thống dựa trên GPU có thể sử dụng bộ lưu trữ NVMe để cung cấp cho hầu như mọi hệ thống GPU farm ở mọi quy mô với hiệu năng cao hơn rất nhiều so với các công nghệ lưu trữ truyền thống. “Các GPU hiện đại được sử dụng trong các ứng dụng AI và Machine Learning có một sự “háu ăn” mãnh liệt đối với dữ liệu, lên tới 16 GB/GPU”, ông lưu ý. “Bỏ đói sự thèm ăn đó với các bộ lưu trữ chậm chạp hoặc mất thời gian sao chép dữ liệu qua lại làm lãng phí các tài nguyên CNTT đắt đỏ mà bạn đã đầu tư”.
Ứng dụng NVMe cho AI
NVMe hoạt động tốt cho các ứng dụng AI cụ thể, chẳng hạn như đào tạo model và các checkpoint trong machine learning, trong đó các bản snapshot dự phòng được thực hiện trong quá trình đào tạo. Machine Learning bao gồm hai giai đoạn: đào tạo một mô hình dựa trên những gì học được từ tập dữ liệu và sau đó thực sự chạy mô hình. “Đào tạo một mô hình là giai đoạn đói tài nguyên nhất”, Shoikhet giải thích. “Phần cứng được sử dụng cho giai đoạn này – thông thường là các GPU cao cấp hoặc SoC chuyên dụng – những thứ rất tốn kém để trang bị và vận hành, vì vậy phải luôn làm cho chúng bận rộn”.
Cách các bộ dữ liệu được sử dụng để đào tạo các ứng dụng học máy
Bộ dữ liệu hiện đại được sử dụng cho đào tạo mô hình có thể có quy mô rất lớn. Chẳng hạn như MRI scanner có thể đạt tới nhiều terabyte và khi được sử dụng cho học máy, có thể cần hàng chục hoặc thậm chí hàng trăm ngàn hình ảnh.
“Ngay cả khi việc đào tạo tự chạy từ RAM, bộ nhớ nên được cấp dữ liệu từ bộ lưu trữ NVMe”, Shoikhet nói. Phân trang dữ liệu đào tạo cũ và đưa vào dữ liệu mới nên được thực hiện nhanh nhất có thể để giữ cho GPU vận hành. Điều đó có nghĩa là độ trễ cũng phải thấp, và đối với loại ứng dụng này, NVMe là giao thức duy nhất hỗ trợ cả băng thông cao và độ trễ thấp.
Cài đặt checkpoint cũng được hưởng lợi từ công nghệ NVMe. “Nếu quá trình đào tạo kéo dài, hệ thống có thể chọn lưu snapshot của bộ nhớ vào bộ lưu trữ NVMe để cho phép khởi động lại từ snapshot đó trong trường hợp xảy ra sự cố”, Shoikhet giải thích. “Lưu trữ NVMe cũng rất phù hợp cho tình huống này.”
Các lỗi tiềm tàng
Điều quan trọng là phải hiểu đầy đủ các thông số I/O của các bộ lưu trữ trong ứng dụng AI để vận dụng SSD NVMe phù hợp với các nhu cầu cụ thể. “Một số môi trường AI, đặc biệt là đào tạo, rất tập trung, nghĩa là bạn có thể nhận ra lợi ích về chi phí và hiệu suất mà không cần làm thâm thủng ngân sách”, Echols nói.
Đối với tất cả các ứng dụng liên quan đến NVMe cho AI, Hausmann khuyên nên tránh xa các công nghệ lưu trữ NVMe độc quyền và thay vào đó, tìm kiếm giải pháp NVMe được tích hợp trong các sản phẩm doanh nghiệp hàng đầu. “Bạn có thể mất vài nano giây trên giấy, nhưng bạn sẽ đi trước nhiều năm ánh sáng khi hệ thống của bạn sẵn sàng hoạt động và được hỗ trợ tốt trong sáu tháng tiếp theo”.
Bài viết liên quan
- Xây dựng hệ thống dữ liệu hiệu suất cao cho AI với VAST Data Platform
- LLM: Lịch sử và tương lai của các mô hình ngôn ngữ lớn
- Máy chủ Supermicro X14: Hiệu suất mạnh mẽ, hiệu quả tối đa cho AI, Cloud, Storage, 5G/Edge
- NVIDIA HGX AI Supercomputer: Nền tảng điện toán AI hàng đầu thế giới
- NVIDIA SuperPOD DGX GB200: Kỷ nguyên của AI nghìn tỷ tham số
- Nền tảng NVIDIA Blackwell: Tạo nên kỷ nguyên điện toán mới