CFU Playground: Kerangka Sumber Terbuka Full-Stack untuk Akselerasi TinyML di FPGA
Ingin prosesor ML yang lebih cepat? Lakukan sendiri!
Proyek ini menyediakan kerangka kerja yang dapat digunakan oleh seorang insinyur, magang, atau siswa untuk merancang dan mengevaluasi peningkatan ke FPGA- berbasis prosesor “lunak”, khusus untuk meningkatkan kinerja tugas pembelajaran mesin (ML). Tujuannya adalah untuk mengabstraksikan sebagian besar detail infrastruktur sehingga pengguna dapat mempercepat dengan cepat dan hanya fokus pada penambahan instruksi prosesor baru, mengeksploitasinya dalam komputasi, dan mengukur hasilnya.
Proyek ini memungkinkan iterasi cepat pada peningkatan prosesor — beberapa iterasi per hari.
Begini cara kerjanya:
Pilih model TensorFlow Lite; model deteksi orang terkuantisasi disediakan, atau bawa sendiri.
Jalankan inferensi pada papan Arty FPGA untuk mendapatkan jumlah siklus per lapisan.
Pilih operator TFLite untuk mempercepat, dan gali kode itu.
Desain baru instruksi yang dapat menggantikan beberapa operasi dasar.
Membangun unit fungsi kustom (sejumlah kecil perangkat keras) yang menjalankan instruksi baru .
Modifikasi kernel perpustakaan TFLite/Micro untuk menggunakan instruksi baru, yang tersedia sebagai intrinsik dengan sintaks panggilan fungsi.
Buat ulang Soc FPGA, kompilasi ulang perpustakaan TFLM, dan jalankan kembali untuk mengukur peningkatan.
Fokus di sini adalah performa, bukan demo. Input ke inferensi ML dikalengkan/dipalsukan, dan satu-satunya output adalah jumlah siklus. Perbaikan yang dibuat di sini dapat diekspor ke demo yang sebenarnya, tetapi saat ini tidak ada jalur yang disiapkan untuk melakukannya.
Dengan pengecualian Vivado, semua yang digunakan oleh proyek ini adalah open source.
Penafian: Ini bukan proyek Google yang didukung secara resmi. Dukungan dan/atau rilis baru mungkin terbatas.
Ini adalah prototipe awal kerangka kerja eksplorasi ML; mengharapkan kurangnya dokumentasi dan kerusakan sesekali. Jika Anda ingin berkolaborasi dalam membangun kerangka kerja ini, hubungi tcal@google.com! Lihat “Pedoman kontribusi” di bawah.
Daftar Isi
Perangkat keras/OS yang diperlukan
Salah satu papan yang didukung oleh Papan LiteX. Sebagian besar target Papan LiteX harus berfungsi. Itu telah diuji pada Arty A7-35T/100T, iCEBreaker, Fomu, OrangeCrab
, ULX3S
, dan Nexys Video
boards.
Satu-satunya OS host yang didukung adalah Linux (Debian / Ubuntu).
Anda tidak memerlukan papan apa pun jika ingin menjalankan simulasi Renode atau Verilator.
Perangkat lunak yang diasumsikan
FPGA Toolchain: itu tergantung pada papan yang dipilih. Jika Anda sudah memasang rantai alat untuk papan Anda, Anda dapat menggunakannya.
Untuk papan dengan bagian Xilinx XC7, Anda dapat menggunakan Vivado, yang harus diinstal secara manual (ini panduan kami), atau rantai alat SymbiFlow open-source, yang dapat dengan mudah diinstal menggunakan Conda (lihat Panduan Pemasangan).
Untuk papan dengan Lattice iCE40, ECP5, atau Nexus FPGA, Anda dapat menginstal seperangkat alat sumber terbuka yang sesuai baik melalui Conda (lihat Panduan Penyiapan) atau sendiri dengan membangun dari sumber. Atau, Anda dapat menggunakan toolchain Lattice (Radiant/Diamond).
Jika Anda ingin mencoba berbagai hal menggunakan simulasi Renode, maka Anda tidak memerlukan board atau toolchain. Anda juga dapat melakukan simulasi akurat siklus tingkat Verilog dengan Verilator, tetapi ini jauh lebih lambat. Renode diinstal oleh skrip setup.
Paket lain yang diperlukan akan diperiksa dan, jika pada sistem berbasis Debian, otomatis diinstal oleh skrip setup di bawah.
Mempersiapkan
Klon repo ini, cd ke dalamnya, lalu jalankan:
Gunakan dengan papan
Papan default adalah Arty. Jika Anda ingin menggunakan papan yang berbeda, Anda harus menentukan target, misalnya TARGET=digilent_nexys_video
.
Bangun SoC dan muat bitstream ke Arty:
CD proj/proj_template buat prog
Ini membangun SoC dengan CFU default dari proj/proj_template. Nanti Anda akan menyalin ini dan memodifikasinya untuk membuat proyek Anda sendiri.
Buat program RISC-V dan jalankan di SoC yang baru saja Anda muat ke Arty:
Gunakan tanpa papan
Jika Anda tidak memiliki papan yang didukung oleh Papan LiteX, Anda dapat menggunakan Renode atau Verilator untuk mensimulasikannya.
Untuk menggunakan Renode untuk mengeksekusi pada simulator pada mesin host (tidak diperlukan papan Vivado atau Arty), jalankan:
Untuk menggunakan Verilator untuk mengeksekusi pada simulator tingkat RTL yang akurat siklus ( tidak diperlukan papan Vivado atau Arty), jalankan:
Bendera make paling berguna
Pilihan
Penjelasan
Contoh
Bawaan
PERON
Pilih platform SoC yang Anda inginkan untuk membangun: hps atau sim atau umum_soc
membuat bitstream PLATFORM=hps
common_soc
TARGET
Pilih salah satu dari banyak target dari repositori LiteX Boards, common_soc akan mengambil BaseSoC dari yang ditentukan target.py
buat bitstream TARGET=nexys_video_board
digilent_arty
USE_VIVADO
Gunakan rantai alat Vivado
buat bitstream USE_VIVADO=1
0
USE_SYMBIFLOW
Gunakan rantai alat Symbiflow
buat bitstream USE_SYMBIFLOW=1
0
UART_SPEED
Pilih baudrate UART
membuat bitstream UART_SPEED=115200
3686400
ABAIKAN_TIMING
Abaikan waktu kendala (hanya untuk Vivado)
buat bitstream USE_VIVADO=1 IGNORE_TIMING=1
0
LiteX: Kerangka kerja sumber terbuka untuk merakit SoC (CPU + periferal)
VexRiscv: RISC sumber terbuka- V soft CPU yang dioptimalkan untuk FPGA
nMigen: Python toolbox untuk membangun perangkat keras digital
Berlisensi di bawah lisensi Apache-2.0
Lihat file LISENSI.
Pedoman kontribusi
Jika Anda ingin berkontribusi di CFU Playground, pastikan untuk membaca panduan kontribusi. Proyek ini mematuhi kode etik Google. Dengan berpartisipasi, Anda diharapkan untuk menjunjung tinggi kode ini.
Bagaimana Kubernetes dengan cepat menjadi sistem… 19 Desember 2021 10:20 Kredit Gambar: BlackJack3D/Getty Mendengar dari CIO, CTO, dan eksekutif tingkat C dan senior lainnya tentang data dan strategi AI di Future of Work Summit 12 Januari…
3 Cara untuk Lebih Baik Menerapkan AI ke Kumpulan Data Kecil Ukuran sampel selalu berperan dalam ilmu data, tetapi ada beberapa contoh di mana risiko, waktu, atau biaya akan membatasi ukuran data Anda: Anda hanya dapat meluncurkan roket satu kali; Anda…
Pendingin AiO generasi berikutnya dari Corsair… Sepertinya Corsair sedang menyiapkan jajaran pendingin cair CPU All-in-One generasi berikutnya tepat pada waktunya untuk peluncuran prosesor Intel Alder Lake untuk PC desktop. Situs teknologi yang berfokus pada kebocoran VideoCardz…
Memindahkan Bank dari Pola Pikir Bata-dan-Mortar mereka Model kafetaria warisan layanan keuangan yang ditawarkan oleh bank -- menggunakan pendekatan origin-to-distribute untuk menyebarkan risiko dan mengurangi biaya pembiayaan -- tidak berfungsi lagi. Pelanggan tidak lagi mencari satu sumber…
Bias dalam AI menyebar dan saatnya untuk memperbaiki masalah Apakah Anda melewatkan sesi dari Future of Work Summit? Kunjungi perpustakaan sesuai permintaan Future of Work Summit kami untuk streaming. Artikel ini disumbangkan oleh Loren Goodman, salah satu pendiri dan…
Format Absensi PNS: Wujudkan Disiplin dan… Format Absensi Pegawai Negeri Sipil: Digitalisasi dan Kemudahan Pencatatan Kehadiran Di era digital saat ini, kehadiran pegawai negeri sipil (PNS) tidak lagi dicatat secara manual menggunakan buku absensi. Sudah banyak…
Azulle Ally – PC Mini Android 10 untuk aplikasi bisnis Di era digital saat ini, semakin banyak bisnis di seluruh dunia yang menggunakan aplikasi bisnis yang berjalan khusus di Android untuk menjalankan operasionalnya dengan lancar. Di zaman di mana pengiriman…
Chip laptop terbaru Intel mendukung generasi baru… Jika sejarah adalah panduan, prosesor baru notebook Anda berikutnya diluncurkan hari ini, saat Intel meluncurkan jajaran CPU Core generasi ke-12 untuk laptop—khususnya chip dengan nama kode Alder Lake -P untuk…
PCIe 6.0 terungkap: Kecepatan super cepat akan… Membuktikan bahwa setiap kali Anda membeli sesuatu yang baru, hal yang lebih baik segera keluar, PCI-Sig Group mengumumkan rilis PCIe 6.0 pada hari Selasa, yang akan menggandakan data mentah kecepatan…
Spesifikasi CPU Intel Alder Lake Non-K dikonfirmasi… Singkatnya: Intel diharapkan untuk mengungkapkan versi non-K dari Alder Lake (Core 12-gen) di CES pada hari Selasa, tetapi Asus dan Colorful telah mengkonfirmasi beberapa spesifikasi mereka terlebih dahulu. Beberapa model…
Apa yang Terjadi dengan Superkomputer Bisnis? Pernah tampak tak terelakkan -- suatu hal yang pasti -- bahwa superkomputer akan membantu bisnis mengatasi tuntutan yang dipaksakan oleh basis data besar, alat teknik yang kompleks, dan prosesor lainnya…
Strategi Kode Rendah Pratt & Whitney untuk Menghemat… Produsen mesin kedirgantaraan Pratt & Whitney memperluas penggunaan sumber daya berkode rendah untuk merampingkan proses operasional tertentu dan membuat penggunaan memori institusional veterannya secara lebih efisien. Dengan hampir satu abad…
Dramawan vs Selene Proses pengujian yang efektif adalah faktor terpenting untuk kinerja aplikasi yang sukses. Setiap bug yang lolos pengujian akan mengurangi kualitas layanan aplikasi. Untuk mengatasinya, satu-satunya cara yang mungkin adalah memiliki…
5 Alat Manajemen Proyek untuk Pengembang Perangkat Lunak Ketika sebagian besar tim memikirkan perangkat lunak manajemen proyek, mereka berpikir untuk menggunakannya agar tetap teratur dan sesuai tugas. Namun, untuk pengembang perangkat lunak, alat manajemen proyek lebih dari itu.…
Sepasang sampel rekayasa AMD Zen 4 telah muncul… Berwawasan ke depan: AMD mengumumkan Zen 4 awal pekan ini di CES 2022, tetapi mereka tidak merincinya. Jadi, biarkan kebocoran seri Ryzen 7000 dimulai. Sepasang sampel teknik telah ditemukan di…
Penawaran laptop siswa Black Friday terbaik untuk… Penawaran laptop Black Friday adalah waktu yang tepat untuk meningkatkan untuk periode berikutnya. Mahasiswa yang kekurangan uang tunai mendapatkan istirahat finansial yang bagus, dan orang tua yang membeli laptop untuk…
Intel secara resmi dalam bisnis penambangan bitcoin sekarang Intel telah mengumumkan rencananya untuk sepenuhnya merangkul teknologi blockchain dan akhirnya memasuki ruang penambangan bitcoin dengan chip baru yang akan tersedia akhir tahun ini.Dalam posting blog baru, chip tersebut raksasa…
Anda tidak harus membeli TPM untuk Windows 11.… Stake / Aslysun / Shutterstock Sekarang, hampir semua orang tahu bahwa Anda memerlukan Trusted Platform Module 2.0 untuk Windows 11. Tetapi banyak orang masih tidak yakin apakah Anda harus keluar…
Datang ke laptop di dekat Anda: Jenis chip keamanan… AT LONG LAST — AMD menjadi pembuat CPU pertama yang mengintegrasikan chip rancangan Microsoft ke dalam produknya. Dan Goodin - 4 Jan 2022 22:15 UTC Pada November 2020, Microsoft meluncurkan…
Rahasia Xiaomi Mi T : Tips & Cara Memmaksimalkan Ponsel Anda ## Tips dan Trik Xiaomi 13T: Memaksimalkan Ponsel Anda dengan Fitur-fitur Canggih Xiaomi 13T hadir dengan berbagai fitur canggih yang dapat memudahkan dan mempercepat berbagai aktivitas Anda. Namun, tidak semua…
Mengapa AI membutuhkan masukan dari orang Afrika Kecerdasan buatan (AI) pernah menjadi bahan fiksi ilmiah. Tapi itu menjadi meluas. Ini digunakan dalam teknologi ponsel dan kendaraan bermotor. Ini mendukung alat untuk pertanian dan perawatan kesehatan.Namun muncul kekhawatiran…
Masa depan teknologi pintar Munculnya kecerdasan buatan (AI) telah mengantarkan era baru inovasi teknologi, mengubah perangkat sehari-hari menjadi pendamping cerdas yang dapat beradaptasi, belajar, dan meningkatkan kehidupan kita. Gadget bertenaga AI telah menjadi bagian…
Merangkul janji masa depan komputasi di mana-mana Internet dan perangkat pintar ada di mana-mana, yang berarti komputasi juga harus ada di mana-mana. Dan di sinilah edge computing berperan, karena seiring perusahaan mengejar pengambilan keputusan yang lebih cepat…
Fondasi untuk proyek pertama Anda Sebuah komputer kecil namun kuat, Raspberry Pi telah menarik minat para pecinta dan penggemar teknologi di seluruh dunia. Ini memberikan metode luar biasa untuk menjelajahi dunia gadget dan proyek DIY,…
Laptop terbaik untuk mengedit video Gordon Mah Ung / IDG Pengeditan video adalah salah satu tugas paling berat yang dapat Anda lakukan di PC, jadi saat Anda berbelanja laptop untuk mengedit video, Anda saya ingin…
Coinpool: Panduan Lengkap Mengenai Platform Mining… Mining cryptocurrency menjadi salah satu cara populer untuk mendapatkan mata uang digital. Coinpool adalah salah satu platform mining cryptocurrency yang dapat membantu Anda memulai aktivitas mining dengan lebih mudah. Dalam…
Mac Studio Apple Adalah Desktop yang Lebih Perkasa… Dari iPhone SE dan iPad Air baru hingga chipset M1 Ultra yang kuat, acara perangkat keras musim semi Apple menghadirkan versi terbaru dari gadget dan prosesor yang ada. Tetapi perusahaan…
Pixel 6 Google yang besar dan berani membidik Apple… Selama lima tahun, Google telah mencoba menunjukkan kepada dunia seluler cara yang benar (atau setidaknya cara Google) untuk membuat ponsel Android. Dan selama lima tahun, masyarakat umum pembeli telepon menjawab…
Intel Core i9-12900K vs AMD Ryzen 9 5900X Beranda BeritaKomputasi ) (Kredit gambar: Masa Depan) Sejak prosesor AMD Ryzen pertama memasuki pasar pada tahun 2017, Intel agak bersikap defensif. Itu terjebak pada proses 14nm begitu lama, dan sementara…
Chrome OS Flex mengubah PC lama menjadi Chromebook… Google telah merilis Chrome OS Flex, sebuah cara untuk mengambil perangkat keras Windows dan Mac yang lebih lama dan mengganti sistem operasinya, mengubahnya menjadi Chromebook. Meskipun Google menyebut Chrome OS…