VITAMIN-V: Virtual Environment and Tool-boxing for Trustworthy Development of RISC-V based Cloud Services

Description

Vitamin-V aims to develop a complete RISC-V open-source software stack for cloud services with iso-performance to its clouddominantx86 counterpart and a powerful virtual execution environment for software development, validation, verification, and test that considers the relevant RISC-V ISA extensions for cloud deployment. Specifically, commercial cloud systems make use of hardware features that are currently unavailable in RISC-V virtual environments(not to mention the lack of specific RISC-V hardware). These features include the virtualization, cryptography and vectorization for which Vitamin-V will add support in three virtual environments: QEMU, gem5 and cloud-FPGA prototype platforms.

Vitamin-V will provide support for EPI-based RISC-V designs for both the main CPUs and cloud-important accelerators (for memory compression). We will add the compiler (LLVM-based) and toolchain support for the ISA extensions. Moreover, novel approaches forthe validation, verification, and test of software trustworthiness will be developed. Vitamin-V will port and evaluate several cutting-edge VMMs and container suites (i.e. VOSySmonitor, KVM, QEMU, Docker, RustVMM,Kata containers), cloud management software (i.e., OpenStack, and Kubernetes) together with their software and libraries dependencies (e.g. JVM, Python); and AI (i.e Tensorflow) and BigData applications (Apache Spark). These software suites are representative of the three cloud setups that will be demonstrated: classical (OpenStack), modern (Kubernetes), and serverless(RustVMM, Kata, Kubernetes).The cloud setups will be benchmarked against relevant AI (i.e., Google Net, ResBet, VGG19), BigData (TPC-DS), and Serverless applications (FunctionBench, ServerlessBench). Vitamin-V aims to match the software performance of its x86 equivalent while contributing to RISC-V open-source virtual environments, software validation and cloud software suites.

Funding