Benchmarking RISC-V QEMU Emulator with SPEC CPU2017(Multicore/intrate)
By Ali Tariq | May 16, 2024

This page describes the necessary commands to run SPEC-2017 benchmark on RISC-V QEMU Emulator for integer and also displays the performance results. 

QEMU is an opensource emulator. QEMU's RISC-V emulator supports two modes, namely, user mode as well as system mode. In user mode, users can run a single binary compiled for RISC-V architecture in single command. In system mode, users can run a complete linux operating system on emulated RISC-V instance and can execute commands inside it.

This benchmark is run on qemu-system-riscv64 version 8.2.2 with ubuntu 22.04.4 pre-installed server image.

The QEMU system is allocated 4 cores (host CPU is AMD EPYC™ 7713) and 8GB of RAM.

Execution of test

All the things are same as explained in the previous benchmark. The command used for the execution of test is as follows:

./bin/runcpu --config="$PATH_OF_CONFIG_FILE" spec --reportable

Results

Individual Test Results

The individual test results of qemu-system-riscv64 are as follows:




Final Results (comparison with physical hardware)

Int_base results

The following results of other instances are taken out from previous SPEC CPU intrate/multicore blog.


Int_peak results

The following results of other instances are taken out from previous SPEC CPU intrate/multicore blog.



Conclusion

After looking at the results it can be concluded that not only QEMU emulator will have latest architecture specification changes available in it (as real hardware will always have 2 years old specification inside it due to fabrication process duration) but it is also faster when the host machine can provide more computing power. This makes the RISC-V software development streamlined.

Benchmarking RISC-V QEMU Emulator with SPEC CPU2017(Multicore/intrate)
Cloud-V 16 May, 2024
Share this post
Tags
Archive

Benchmarking RISC-V SBC with SPEC CPU2017(Single Core/fprate)
By Ali Tariq | March 29, 2024