Rumah >Peranti teknologi >AI >Proses 7nm, lebih cekap daripada GPU, Meta mengeluarkan pemecut inferens AI generasi pertama
Laporan Jantung Mesin
Jabatan Editorial Jantung Mesin
Baru-baru ini, Meta mendedahkan kemajuan terbarunya dalam kecerdasan buatan.
Apabila orang berfikir tentang Meta, mereka biasanya memikirkan aplnya, termasuk Facebook, Instagram, WhatsApp atau Metaverse yang akan datang. Tetapi apa yang ramai orang tidak tahu ialah syarikat ini mereka bentuk dan membina pusat data yang sangat canggih untuk mengendalikan perkhidmatan ini.
Tidak seperti pembekal perkhidmatan awan seperti AWS, GCP atau Azure, Meta tidak perlu mendedahkan butiran tentang pemilihan silikon, infrastruktur atau reka bentuk pusat datanya, kecuali OCPnya direka untuk menarik perhatian pembeli. Pengguna Meta mahukan pengalaman yang lebih baik dan konsisten, tidak kira bagaimana ia dicapai.
Di Meta, beban kerja AI ada di mana-mana dan menjadi asas untuk pelbagai kes penggunaan, termasuk pemahaman kandungan, aliran maklumat, AI generatif dan kedudukan iklan. Beban kerja ini dijalankan pada PyTorch, dengan penyepaduan Python terbaik dalam kelasnya, pembangunan mod bersemangat dan kesederhanaan API. Khususnya, model pengesyoran pembelajaran mendalam (DLRM) sangat penting untuk meningkatkan perkhidmatan dan pengalaman aplikasi Meta. Tetapi apabila model ini meningkat dalam saiz dan kerumitan, sistem perkakasan asas perlu menyediakan lebih banyak memori dan kuasa pengkomputeran secara eksponen sambil kekal cekap.
Meta mendapati bahawa untuk operasi AI skala semasa dan beban kerja tertentu, GPU adalah tidak cekap dan bukan pilihan terbaik. Oleh itu, syarikat itu mencadangkan pemecut inferens MTIA untuk membantu melatih sistem AI dengan lebih pantas.
MTIA V1
Cip MTIA v1 (inferens) (mati)
Pada tahun 2020, Meta mereka bentuk pemecut inferens MTIA ASIC generasi pertama untuk beban kerja dalamannya. Pemecut inferens adalah sebahagian daripada penyelesaian timbunan penuhnya, yang merangkumi model silikon, PyTorch dan pengesyoran.
Pemecut MTIA dihasilkan pada proses TSMC 7nm dan berjalan pada 800 MHz, memberikan 102.4 TOPS pada ketepatan INT8 dan 51.2 TFLOPS pada ketepatan FP16. Ia mempunyai kuasa reka bentuk terma (TDP) sebanyak 25 W.
Pemecut MTIA terdiri daripada elemen pemprosesan (PE), sumber memori dalam cip dan luar cip, dan saling bersambung. Pemecut dilengkapi dengan subsistem kawalan khusus yang menjalankan perisian tegar sistem. Perisian tegar mengurus sumber pengiraan dan ingatan yang tersedia, berkomunikasi dengan hos melalui antara muka hos khusus, dan menyelaras pelaksanaan kerja pada pemecut.
Subsistem memori menggunakan LPDDR5 sebagai sumber DRAM luar cip, boleh dikembangkan sehingga 128 GB. Cip ini juga mempunyai 128 MB SRAM pada cip, dikongsi oleh semua PE, memberikan lebar jalur yang lebih tinggi dan kependaman yang lebih rendah untuk data dan arahan yang kerap diakses.
Grid pemecut MTIA terdiri daripada 64 PE yang disusun dalam konfigurasi 8x8 yang disambungkan antara satu sama lain dan ke blok memori melalui rangkaian mesh. Keseluruhan grid boleh digunakan secara keseluruhan untuk menjalankan kerja, atau ia boleh dibahagikan kepada berbilang sub-grid yang boleh menjalankan kerja bebas.
Setiap PE dilengkapi dengan dua teras pemproses (satu daripadanya dilengkapi dengan sambungan vektor) dan beberapa unit fungsi tetap yang dioptimumkan untuk melaksanakan operasi kritikal seperti pendaraban matriks, pengumpulan, pergerakan data dan bukan linear pengiraan fungsi. Teras pemproses adalah berdasarkan seni bina set arahan terbuka (ISA) RISC-V dan sangat disesuaikan untuk melaksanakan tugas pengkomputeran dan kawalan yang diperlukan.
Setiap PE juga mempunyai 128 KB memori SRAM tempatan untuk penyimpanan pantas dan manipulasi data. Seni bina ini memaksimumkan keselarian dan penggunaan semula data, yang merupakan asas untuk menjalankan beban kerja dengan cekap.
Cip ini menawarkan kedua-dua selari peringkat benang dan data (TLP dan DLP), memanfaatkan selari peringkat arahan (ILP), dan membolehkan paralelisme peringkat memori (MLP) besar-besaran dengan membenarkan sejumlah besar permintaan memori diproses secara serentak .
Reka bentuk sistem MTIA v1
Pemecut MTIA dipasang pada papan M.2 dwi kecil untuk penyepaduan yang lebih mudah ke dalam pelayan. Papan menggunakan pautan PCIe Gen4 x8 untuk menyambung ke CPU hos pada pelayan, menggunakan sekurang-kurangnya 35 W.
Contoh papan ujian dengan MTIA
Pelayan yang mengehos pemecut ini menggunakan spesifikasi pelayan Yosemite V3 daripada Open Compute Project. Setiap pelayan mengandungi 12 pemecut yang disambungkan ke CPU hos dan antara satu sama lain menggunakan hierarki suis PCIe. Oleh itu, komunikasi antara pemecut yang berbeza tidak perlu melibatkan CPU hos. Topologi ini membolehkan beban kerja diagihkan merentasi berbilang pemecut dan dijalankan secara selari. Bilangan pemecut dan parameter konfigurasi pelayan dipilih dengan teliti untuk melaksanakan dengan terbaik beban kerja semasa dan masa hadapan.
Timbunan Perisian MTIA
Timbunan perisian MTIA (SW) direka untuk menyediakan pembangun dengan kecekapan pembangunan yang lebih baik dan pengalaman berprestasi tinggi. Ia disepadukan sepenuhnya dengan PyTorch, memberikan pengguna pengalaman pembangunan yang biasa. Menggunakan PyTorch dengan MTIA semudah menggunakan PyTorch dengan CPU atau GPU. Dan, terima kasih kepada ekosistem dan alatan pembangun PyTorch yang berkembang maju, tindanan MTIA SW kini boleh menggunakan PyTorch FX IR untuk melaksanakan transformasi dan pengoptimuman peringkat model, dan LLVM IR untuk pengoptimuman peringkat rendah, sambil turut menyokong seni bina tersuai pemecut MTIA dan ISA .
Gambar berikut menunjukkan rajah rangka kerja tindanan perisian MTIA:
Sebagai sebahagian daripada timbunan SW, Meta juga telah membangunkan perpustakaan kernel yang ditala tangan dan sangat dioptimumkan untuk kernel ML yang kritikal prestasi, seperti pengendali pakej yang disambungkan sepenuhnya dan terbenam. Tahap yang lebih tinggi dalam timbunan SW mempunyai pilihan untuk membuat instantiate dan menggunakan kernel yang sangat dioptimumkan ini semasa penyusunan dan penjanaan kod.
Selain itu, timbunan MTIA SW terus berkembang dengan penyepaduan dengan PyTorch 2.0, yang lebih pantas dan lebih Pythonic, tetapi dinamik seperti biasa. Ini akan membolehkan ciri baharu seperti TorchDynamo dan TorchInductor. Meta juga memperluaskan Triton DSL untuk menyokong pemecut MTIA dan menggunakan MLIR untuk perwakilan dalaman dan pengoptimuman lanjutan.
Prestasi MTIA
Meta membandingkan prestasi MTIA dengan pemecut lain dan hasilnya adalah seperti berikut:
Meta menggunakan lima DLRM berbeza (daripada kerumitan rendah ke tinggi) untuk menilai MTIA
Selain itu, Meta membandingkan MTIA dengan NNPI dan GPU, dan hasilnya adalah seperti berikut:
Penilaian mendapati bahawa MTIA lebih cekap memproses model kekompleksan rendah (LC1 dan LC2) dan kekompleksan sederhana (MC1 dan MC2) berbanding NNPI dan GPU. Selain itu, Meta belum dioptimumkan untuk MTIA untuk model kerumitan tinggi (HC).
Pautan rujukan:
https://ai.facebook.com/blog/meta-training-inference-accelerator-AI-MTIA/
Atas ialah kandungan terperinci Proses 7nm, lebih cekap daripada GPU, Meta mengeluarkan pemecut inferens AI generasi pertama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!