OpenXLA, một dự án nguồn mở để tăng tốc và đơn giản hóa việc học máy

mởXLA

OpenXLA là hệ sinh thái trình biên dịch ML mã nguồn mở được đồng phát triển

Gần đây, các công ty lớn nhất tham gia phát triển trong lĩnh vực học máy đã trình bày dự án mởXLA, dành cho sự phát triển chung của các công cụ để biên dịch và tối ưu hóa các mô hình cho các hệ thống máy học.

Dự án chịu trách nhiệm phát triển các công cụ cho phép thống nhất biên dịch các mô hình được chuẩn bị trong các khung TensorFlow, PyTorch và JAX để đào tạo và thực thi hiệu quả trên các GPU và máy gia tốc chuyên dụng khác nhau. Các công ty như Google, NVIDIA, AMD, Intel, Meta, Apple, Arm, Alibaba và Amazon đã tham gia vào công việc chung của dự án.

Dự án OpenXLA cung cấp một trình biên dịch ML tiên tiến nhất có thể thay đổi quy mô giữa sự phức tạp của cơ sở hạ tầng ML. Các trụ cột cơ bản của nó là hiệu suất, khả năng mở rộng, tính di động, tính linh hoạt và khả năng mở rộng cho người dùng. Với OpenXLA, chúng tôi mong muốn khai thác tiềm năng thực sự của AI bằng cách tăng tốc độ phát triển và phân phối của nó.

OpenXLA cho phép các nhà phát triển biên dịch và tối ưu hóa các mô hình từ tất cả các khung ML hàng đầu để đào tạo và phục vụ hiệu quả trên nhiều loại phần cứng. Các nhà phát triển sử dụng OpenXLA sẽ thấy những cải tiến đáng kể về thời gian đào tạo, hiệu suất, độ trễ của dịch vụ và cuối cùng là thời gian đưa ra thị trường và tính toán chi phí.

Hy vọng rằng bằng cách chung tay nỗ lực của các nhóm nghiên cứu chính và đại diện của cộng đồng, nó sẽ có thể kích thích sự phát triển của các hệ thống máy học và giải quyết vấn đề phân mảnh cơ sở hạ tầng cho các khung và nhóm khác nhau.

OpenXLA cho phép triển khai hỗ trợ hiệu quả cho các phần cứng khác nhau, bất kể khuôn khổ mà mô hình học máy dựa trên. OpenXLA dự kiến ​​sẽ giảm thời gian đào tạo mô hình, cải thiện hiệu suất, giảm độ trễ, giảm chi phí tính toán và giảm thời gian đưa ra thị trường.

mởXLA bao gồm ba thành phần chính, mã của nó được phân phối theo giấy phép Apache 2.0:

  1. XLA (đại số tuyến tính tăng tốc) là trình biên dịch cho phép bạn tối ưu hóa các mô hình máy học để thực thi hiệu suất cao trên các nền tảng phần cứng khác nhau, bao gồm GPU, CPU và bộ tăng tốc chuyên dụng của nhiều nhà sản xuất.
  2. StableHLO là một đặc điểm kỹ thuật cơ bản và triển khai một tập hợp các Hoạt động cấp cao (HLO) để sử dụng trong các mô hình hệ thống máy học. Nó hoạt động như một lớp giữa các khung máy học và trình biên dịch chuyển đổi mô hình để chạy trên phần cứng cụ thể. Các lớp được chuẩn bị để tạo các mô hình ở định dạng StableHLO cho khung PyTorch, TensorFlow và JAX. Bộ MHLO được sử dụng làm cơ sở cho StableHLO, được mở rộng với sự hỗ trợ cho kiểm soát phiên bản và lập số sê-ri.
  3. IREE (Môi trường thực thi biểu diễn trung gian) là một trình biên dịch và thời gian chạy giúp chuyển đổi các mô hình máy học thành một biểu diễn trung gian phổ quát dựa trên định dạng MLIR (Môi trường đại diện đa cấp trung gian) của dự án LLVM. Trong số các tính năng, khả năng biên dịch trước (trước thời hạn), hỗ trợ kiểm soát luồng, khả năng sử dụng các phần tử động trong mô hình, tối ưu hóa cho các CPU và GPU khác nhau cũng như chi phí thấp được nêu bật.

Về những ưu điểm chính của OpenXLA, người ta đề cập rằng đã đạt được hiệu suất tối ưu mà không cần phải viết mã thiết bị cụ thể, ngoài cung cấp tối ưu hóa vượt trội, bao gồm đơn giản hóa các biểu thức đại số, phân bổ bộ nhớ hiệu quả, lập lịch thực thi, có tính đến việc giảm mức tiêu thụ bộ nhớ tối đa và chi phí hoạt động.

Một lợi thế khác là đơn giản hóa việc chia tỷ lệ và song song hóa các tính toán. Nhà phát triển chỉ cần thêm các chú thích cho một tập hợp con các tenxơ quan trọng là đủ, trên cơ sở đó trình biên dịch có thể tự động tạo mã cho tính toán song song.

Nó cũng được nhấn mạnh rằng tính di động được cung cấp với sự hỗ trợ cho nhiều nền tảng phần cứng, chẳng hạn như GPU AMD và NVIDIA, CPU x86 và ARM, Bộ tăng tốc ML TPU của Google, IPU AWS Trainium Inferentia, Graphcore và Cerebras Engine Wafer-Scale.

Hỗ trợ kết nối các tiện ích mở rộng với việc triển khai các chức năng bổ sung, như hỗ trợ viết các nguyên hàm học máy sâu bằng cách sử dụng CUDA, HIP, SYCL, Triton và các ngôn ngữ khác để tính toán song song, cũng như khả năng điều chỉnh thủ công các tắc nghẽn trong các mô hình.

Cuối cùng, nếu bạn muốn biết thêm về nó, bạn có thể tham khảo chi tiết trong liên kết sau.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.