
FAASM adalah runtime tanpa server tanpa kinerja tinggi.
FAASM memberikan isolasi multi-penyewa, namun memungkinkan fungsi untuk berbagi daerah memori. Daerah memori bersama ini memberikan akses bersamaan latensi rendah ke data, dan disinkronkan secara global untuk mendukung paralelisme skala besar di beberapa host.
FAASM menggabungkan isolasi kesalahan perangkat lunak dari WebAssembly dengan Linux Tooling standar, untuk memberikan keamanan dan isolasi sumber daya dengan biaya rendah. FAASM menjalankan fungsi berdampingan sebagai utas dari proses runtime tunggal, dengan overhead rendah dan waktu boot cepat.
FAASM mendefinisikan antarmuka host khusus yang memperluas WASI untuk memasukkan input fungsi dan output, fungsi rantai, keadaan mengelola, mengakses sistem file terdistribusi, tautan dinamis, pthreads, OpenMP dan MPI.
Makalah kami dari Usenix ATC '20 tentang FAASM dapat ditemukan di sini.
Silakan lihat dokumentasi lengkap untuk detail lebih lanjut tentang kode dan arsitektur.
Perbarui submodul dan aktifkan lingkungan virtual:
git submodule update --init --recursive
source ./bin/workon.sh Mulai kluster faasme secara lokal menggunakan docker compose :
faasmctl deploy.composeUntuk mengkompilasi, mengunggah, dan memohon fungsi C ++ menggunakan cluster lokal ini Anda dapat menggunakan wadah FAASM/CPP:
faasmctl cli.cpp
# Compile the demo function
inv func demo hello
# Upload the demo "hello" function
inv func.upload demo hello
# Invoke the function
inv func.invoke demo helloUntuk informasi lebih lanjut tentang langkah selanjutnya, Anda dapat melihat dokumen yang memulai
Proyek ini telah menerima dana dari Program Penelitian dan Inovasi Horizon 2020 Uni Eropa di bawah Perjanjian Hibah No 825184 (CloudButton), penghargaan Dewan Penelitian Ilmu Pengetahuan dan Ilmu Fisika Inggris (EPSRC) 1973141, dan hadiah dari Intel Corporation di bawah proyek TFAAS.