So sánh CPU vs GPU cho các hệ thống xử lý AI

GPU thường được coi là phương tiện được lựa chọn để chạy các workload xử lý AI, nhưng đang có một sự thôi thúc mở rộng các loại thuật toán có thể chạy hiệu quả trên cả CPU.

GPU đã thu hút rất nhiều sự chú ý như một phương tiện tối ưu để chạy khối lượng công việc AI. Hầu hết các nghiên cứu tiên tiến dường như dựa vào khả năng của GPU và chip AI mới hơn để chạy song song nhiều khối lượng công việc học sâu. Tuy nhiên, CPU cũ đáng tin cậy vẫn có một vai trò quan trọng trong AI của doanh nghiệp.

Anshumali Shrivastava, phó giáo sư, khoa khoa học máy tính tại Đại học Rice cho biết: “CPU là phần cứng hàng hóa rẻ tiền và có mặt ở khắp mọi nơi. Định giá theo yêu cầu của CPU trên đám mây rẻ hơn đáng kể so với GPU và các cửa hàng CNTT quen thuộc hơn với việc thiết lập và tối ưu hóa các máy chủ dựa trên CPU.

CPU từ lâu đã giữ lợi thế cho một số loại thuật toán AI liên quan đến logic hoặc yêu cầu bộ nhớ chuyên sâu. Nhóm của Shrivastava đã và đang phát triển một loại thuật toán mới, được gọi là SLIDE ( S ub- LI near D eep learning E ngine), hứa hẹn sẽ làm cho CPU trở nên thực tế cho nhiều loại thuật toán hơn.

Ông nói: “Nếu chúng ta có thể thiết kế các thuật toán như SLIDE có thể chạy AI trực tiếp trên CPU một cách hiệu quả, thì đó có thể là người thay đổi cuộc chơi.

Các kết quả ban đầu cho thấy ngay cả khối lượng công việc phù hợp hoàn hảo với GPU vẫn có thể được đào tạo nhanh hơn đáng kể – nhanh hơn tới 3,5 lần – trên CPU.

Shrivastava tin rằng chúng ta có thể đang ở một điểm uốn trong quá trình phát triển AI. Công việc ban đầu trong AI bắt đầu với các mô hình nhỏ và tập dữ liệu tương đối nhỏ. Khi các nhà nghiên cứu phát triển các mô hình lớn hơn và bộ dữ liệu lớn hơn, họ có đủ khối lượng công việc để sử dụng hiệu quả tính song song khổng lồ trong GPU. Nhưng giờ đây, kích thước của các mô hình và khối lượng của bộ dữ liệu đã phát triển vượt ra ngoài giới hạn của GPU để chạy hiệu quả.

“Tại thời điểm này, việc đào tạo bản thân thuật toán AI truyền thống là điều cấm kỵ [về thời gian và tài nguyên]”, Shrivastava nói. “Tôi nghĩ rằng trong tương lai, sẽ có nhiều nỗ lực để thiết kế các giải pháp thay thế rẻ hơn cho AI hiệu quả trên quy mô lớn.”

GPU tốt nhất để xử lý song song

Shrivastava cho biết GPU đã trở thành phương tiện được ưu tiên để đào tạo các mô hình AI vì quy trình này vốn dĩ yêu cầu thực hiện một hoạt động gần như giống hệt nhau trên tất cả các mẫu dữ liệu đồng thời. Với sự phát triển về kích thước của tập dữ liệu, tính song song khổng lồ có sẵn trong GPU được chứng minh là không thể thiếu: GPU cung cấp tốc độ ấn tượng so với CPU, khi khối lượng công việc đủ lớn và dễ dàng chạy song song.

Mặt khác, GPU có bộ nhớ nhỏ hơn và chuyên biệt hơn. Hiện tại, GPU tốt nhất trên thị trường, Nvidia Tesla V100, có dung lượng bộ nhớ là 32 GB. Nếu tính toán không phù hợp với bộ nhớ chính của GPU, quá trình tính toán sẽ chậm lại đáng kể. Cùng một bộ nhớ chuyên dụng giúp giảm độ trễ cho nhiều luồng trên GPU trở thành một hạn chế.

CPU cho các thuật toán tuần tự

Bijan Tadayon, Giám đốc điều hành của Z Advanced Computing, công ty phát triển AI cho các ứng dụng IoT, cho biết tìm ra cách chạy các thuật toán AI hiệu quả hơn trên CPU thay vì GPU “sẽ mở rộng đáng kể thị trường ứng dụng AI”. Việc có một thuật toán hiệu quả hơn cũng làm giảm yêu cầu về điện năng, khiến nó trở nên thiết thực hơn cho các ứng dụng như máy bay không người lái , thiết bị từ xa hoặc thiết bị di động.

Karen Panetta, một IEEE Fellow và là trưởng khoa kỹ thuật tại Đại học Tufts cho biết, CPU cũng thường là lựa chọn tốt hơn cho các thuật toán thực hiện các phép tính thống kê phức tạp, chẳng hạn như xử lý ngôn ngữ tự nhiên (NLP) và một số thuật toán học sâu. Ví dụ, rô bốt và thiết bị gia đình sử dụng NLP đơn giản hoạt động tốt khi sử dụng CPU. Các tác vụ khác, như nhận dạng hình ảnh hoặc vị trí và lập bản đồ đồng thời (SLAMM) cho máy bay không người lái hoặc phương tiện tự hành, cũng hoạt động trên CPU.

Ngoài ra, các thuật toán như mô hình Markov và máy vector hỗ trợ sử dụng CPU. Panetta nói: “Việc chuyển những thứ này sang GPU đòi hỏi sự song song của dữ liệu tuần tự và điều này là một thách thức.

Suy nghĩ lại về các mô hình AI

Các phương pháp AI truyền thống chủ yếu dựa vào thống kê và toán học. Do đó, chúng có xu hướng hoạt động hiệu quả nhất trên các GPU được thiết kế để xử lý nhiều phép tính song song.

Rix Ryskamp, ​​Giám đốc điều hành của UseAIble cho biết: “Các mô hình thống kê không chỉ nặng về bộ vi xử lý mà còn cứng nhắc và không xử lý tốt các động lực học.

Nhiều công ty đang tìm cách sử dụng CPU để hợp lý hóa công việc này. Ví dụ, UseAIble đã phát triển một hệ thống mà nó gọi là Máy học Ryskamp – theo tên Giám đốc điều hành của nó – cắt giảm các yêu cầu tính toán bằng cách dựa trên logic để loại bỏ nhu cầu thống kê. Thuật toán không sử dụng trọng số trong mạng thần kinh của nó , loại bỏ lý do chính mà mạng thần kinh cần tính toán GPU nặng cũng như giảm các vấn đề hộp đen .

Ryskamp tin rằng các kiến ​​trúc sư học máy cần trau dồi kỹ năng của họ để họ ít phụ thuộc hơn vào các mô hình thống kê yêu cầu khối lượng công việc GPU nặng.

Ông nói: “Để có được kết quả mới và sử dụng các loại phần cứng khác nhau, bao gồm IoT và các phần cứng tiên tiến khác, chúng ta cần phải suy nghĩ lại các mô hình của mình, chứ không chỉ đóng gói lại. “Chúng tôi cần thêm các mô hình sử dụng bộ xử lý đã được phổ biến rộng rãi, cho dù đó là CPU, bo mạch IoT hay bất kỳ phần cứng nào khác đã có sẵn với khách hàng.”

CPU phấn đấu trở thành cỗ máy AI

Eric Gardner, giám đốc tiếp thị AI của công ty cho biết Intel đang nhận thấy sự quan tâm từ các doanh nghiệp trong việc chạy nhiều loại khối lượng công việc AI trên CPU Xeon của mình . Các công ty trong ngành bán lẻ, viễn thông, công nghiệp và chăm sóc sức khỏe đã và đang áp dụng AI trong hệ thống CPU của họ để triển khai quy mô lớn.

Các trường hợp sử dụng bao gồm sử dụng AI để đo từ xa và định tuyến mạng, nhận dạng đối tượng trong camera CCTV, phát hiện lỗi trong đường ống công nghiệp, phát hiện đối tượng trong quét CT và MRI. CPU hoạt động tốt hơn cho các thuật toán khó chạy song song hoặc cho các ứng dụng yêu cầu nhiều dữ liệu hơn mức có thể phù hợp với bộ tăng tốc GPU điển hình. Một trong số các loại thuật toán có thể hoạt động tốt hơn trên CPU đó là:

  • Đề xuất hệ thống đào tạo và suy luận yêu cầu bộ nhớ lớn hơn để nhúng các lớp;
  • Các thuật toán học máy cổ điển khó song song cho GPU;
  • Mạng nơ-ron tái phát sử dụng dữ liệu tuần tự;
  • Mô hình sử dụng các mẫu dữ liệu kích thước lớn, chẳng hạn như dữ liệu 3D để đào tạo và suy luận; và
  • Suy luận thời gian thực cho các thuật toán khó song song hóa.

____
Bài viết liên quan