AVA ist ein Forschungssystem zur Virtualisierung der allgemeinen API-kontrollierten Beschleuniger automatisch, die im SCEA Lab der University of Texas in Austin entwickelt wurde. AVA ist auf KVM und QEMU prototyp, die Kompatibilität mit der Automatisierung klassischer API -Remotungssysteme beeinträchtigt und die Interposition für die Hypervisor -Interposition für das Ressourcenmanagement und die starke Isolation einführt.
Dieses Repository ist die Haupt -Codebasis von AVA. Wir hosten maßgeschneiderte Linux -Kernel, Qemu, LLVM und Benchmark -Sätze in separaten Repositories.
Wir refaktieren AVA-Code für eine bessere Erweiterbarkeit und Entwicklerfreundlichkeit. Das Refactoring bricht in diesem Moment ein paar Funktionen, aber sie kommen zurück.
git clone [email protected]:utcs-scea/ava.git
cd ava
git submodule update --init --recursive
AVA wurde vollständig auf Ubuntu 18.04 (Linux 4.15) mit GCC 7.5.0, Python 3.6.9, Boost 1.71.x, CMake 3.19.1 und ProtobUF 3.0-3.9 getestet. Das System arbeitet auch in Ubuntu 16.04 mit zusätzlicher Betreuung von Python 3.6 und Clang-7-Installation für Cava-Skripte, aber wir behalten die Unterstützung nicht mehr bei. Wir planen, AVA nach Ubuntu 20.04 zu migrieren.
Die folgenden Hardware und APIs werden mit AVA virtualisiert (ohne manuell implementierte Python -Weiterleitung):
API -Framework | Hardware |
---|---|
Opencl 1.2 | Nvidia GTX 1080 / AMD RX 580 |
CUDA 10.0 (Treiber) | Nvidia GTX 1080 |
CUDA 10.0 (Laufzeit) | Nvidia GTX 1080 |
Tensorflow 1.12 c | Intel Xeon E5-2643 |
Tensorflow 1.14 Python | Nvidia GTX 1080 |
NCSDK V2 | Intel Movidius NCS V1 & V2 |
GTI SDK 4.4.0.3 | Gyrfalcon 2803 Plai Plug |
Quickassist 1.7 | Intel Quickassist |
Benutzerdefinierte FPGA auf Amorphos | AWS F1 |
Für den Status des Supports finden Sie das Build- und Setup -Dokument.
Yu, Hangchen, Arthur M. Peters, Amogh Akshintala und Christopher J. Rossbach. "AVA: Beschleunigte Virtualisierung von Beschleunigern." In Proceedings der 25. Internationalen Konferenz über architektonische Unterstützung für Programmiersprachen und Betriebssysteme, S. 807-825. ACM, 2020.
Yu, Hangchen, Arthur M. Peters, Amogh Akshintala und Christopher J. Rossbach. "Automatische Virtualisierung von Beschleunigern." In Proceedings of the Workshop zu heißen Themen in Betriebssystemen, S. 58-65. ACM, 2019.
Name | Zugehörigkeit | Rolle | Kontakt |
---|---|---|---|
Hangchen Yu | Facebook & Ut Austin | Hauptentwickler | [email protected] |
Arthur M. Peters | Katana Graph & Ut Austin | Hauptentwickler | [email protected] |
Amogh Akshintala | Facebook & UNC | ||
Zhiting Zhu | Ut Austin | ||
Tyler Hunt | Katana Graph & Ut Austin | ||
Christopher J. Rossbach | UT Austin & Katana Graph & VMware Research | Berater | [email protected] |