OpenXLA, proyek sumber terbuka untuk mempercepat dan menyederhanakan pembelajaran mesin

BukaXLA

OpenXLA adalah ekosistem kompiler ML open source yang dikembangkan bersama

Baru-baru ini, perusahaan terbesar yang bergerak dalam pengembangan di bidang pembelajaran mesin dihadirkan proyek BukaXLA, dimaksudkan untuk pengembangan alat bersama untuk menyusun dan mengoptimalkan model untuk sistem pembelajaran mesin.

Proyek ini bertanggung jawab atas pengembangan alat yang memungkinkan penyatuan kompilasi model yang disiapkan dalam framework TensorFlow, PyTorch, dan JAX untuk pelatihan dan eksekusi yang efisien pada berbagai GPU dan akselerator khusus. Perusahaan seperti Google, NVIDIA, AMD, Intel, Meta, Apple, Arm, Alibaba dan Amazon bergabung dalam kerja sama proyek tersebut.

Proyek OpenXLA menyediakan kompiler ML canggih yang dapat menyesuaikan skala di tengah kompleksitas infrastruktur ML. Pilar dasarnya adalah kinerja, skalabilitas, portabilitas, fleksibilitas, dan ekstensibilitas bagi pengguna. Dengan OpenXLA, kami bercita-cita untuk membuka potensi sebenarnya dari AI dengan mempercepat pengembangan dan penyampaiannya.

OpenXLA memungkinkan pengembang untuk mengompilasi dan mengoptimalkan model dari semua kerangka kerja ML terkemuka untuk pelatihan dan servis yang efisien pada berbagai macam perangkat keras. Pengembang yang menggunakan OpenXLA akan melihat peningkatan yang signifikan dalam waktu pelatihan, kinerja, latensi layanan, dan pada akhirnya waktu untuk memasarkan dan menghitung biaya.

Diharapkan dengan bergabung upaya tim peneliti utama dan perwakilan masyarakat, akan dimungkinkan untuk merangsang pengembangan sistem pembelajaran mesin dan memecahkan masalah fragmentasi infrastruktur untuk berbagai kerangka kerja dan tim.

OpenXLA memungkinkan untuk menerapkan dukungan yang efektif untuk berbagai perangkat keras, terlepas dari kerangka kerja yang menjadi dasar model pembelajaran mesin. OpenXLA diharapkan dapat mengurangi waktu pelatihan model, meningkatkan kinerja, mengurangi latensi, mengurangi biaya komputasi, dan mengurangi waktu pemasaran.

BukaXLA terdiri dari tiga komponen utama, yang kodenya didistribusikan di bawah lisensi Apache 2.0:

  1. XLA (aljabar linier yang dipercepat) adalah kompiler yang memungkinkan Anda mengoptimalkan model pembelajaran mesin untuk eksekusi kinerja tinggi pada berbagai platform perangkat keras, termasuk GPU, CPU, dan akselerator khusus dari berbagai produsen.
  2. StableHLO adalah spesifikasi dasar dan implementasi serangkaian Operasi Tingkat Tinggi (HLO) untuk digunakan dalam model sistem pembelajaran mesin. Ini bertindak sebagai lapisan antara kerangka pembelajaran mesin dan kompiler yang mengubah model untuk dijalankan pada perangkat keras tertentu. Lapisan disiapkan untuk menghasilkan model dalam format StableHLO untuk kerangka kerja PyTorch, TensorFlow, dan JAX. Suite MHLO digunakan sebagai dasar untuk StableHLO, yang diperluas dengan dukungan serialisasi dan kontrol versi.
  3. IREE (Lingkungan Eksekusi Representasi Menengah) adalah kompiler dan runtime yang mengubah model pembelajaran mesin menjadi representasi perantara universal berdasarkan format MLIR (Representasi Multi-Level Menengah) dari proyek LLVM. Dari fitur-fiturnya, kemungkinan prekompilasi (sebelumnya), dukungan untuk kontrol aliran, kemampuan untuk menggunakan elemen dinamis dalam model, pengoptimalan untuk berbagai CPU dan GPU, dan overhead rendah disorot.

Mengenai keunggulan utama OpenXLA, disebutkan itu kinerja optimal telah dicapai tanpa harus mendalami penulisan kode khusus perangkat, sebagai tambahan memberikan optimalisasi out-of-the-box, termasuk penyederhanaan ekspresi aljabar, alokasi memori yang efisien, penjadwalan eksekusi, dengan mempertimbangkan pengurangan konsumsi memori maksimum dan overhead.

Keunggulan lainnya adalah penyederhanaan penskalaan dan paralelisasi perhitungan. Cukup bagi pengembang untuk menambahkan anotasi untuk subset dari tensor kritis, yang dengannya kompiler dapat secara otomatis menghasilkan kode untuk komputasi paralel.

Itu juga disorot itu portabilitas disediakan dengan dukungan untuk beberapa platform perangkat keras, seperti GPU AMD dan NVIDIA, CPU x86 dan ARM, Akselerator Google TPU ML, IPU AWS Trainium Inferentia, Graphcore, dan Cerebras Mesin Berskala Wafer.

Dukungan untuk menghubungkan ekstensi dengan penerapan fungsi tambahan, sebagai dukungan untuk menulis primitif pembelajaran mesin dalam menggunakan CUDA, HIP, SYCL, Triton dan bahasa lain untuk komputasi paralel, serta kemungkinan penyesuaian kemacetan secara manual dalam model.

Terakhir, jika Anda tertarik untuk mengetahuinya lebih lanjut, Anda dapat berkonsultasi dengan detailnya di tautan berikut.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Bertanggung jawab atas data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.