RAVE: RISC-V Analyzer of Vector Executions, a QEMU tracing plugin
<|reference_start|>RAVE: RISC-V Analyzer of Vector Executions, a QEMU tracing plugin: Simulators are crucial during the development of a chip, like the RISC-V accelerator designed in the European Processor Initiative project. In this paper, we showcase the limitations of the current simulation solutions in the project and propose using QEMU with RAVE, a plugin we implement and describe in this document. This methodology can rapidly simulate and analyze applications running on the v1.0 and v0.7.1 RISC-V V-extension. Our plugin reports the vector and scalar instructions alongside useful information such as the vector-length being used, the single-element-width, and the register usage, among other vectorization metrics. We provide an API used from the simulated Application to control the RAVE plugin and the capability to generate vectorization traces that can be analyzed using Paraver. Finally, we demonstrate the efficiency of our solution between different evaluated machines and against other simulation methods used in the European Processor Accelerator (EPAC) project.<|reference_end|>
@article{vizcaino2024rave:,
    title={RAVE: RISC-V Analyzer of Vector Executions, a QEMU tracing plugin},
    author={Pablo Vizcaino, Filippo Mantovani, Jesus Labarta, Roger Ferrer},
    journal={arXiv preprint arXiv:2409.13639},
    year={2024},
    archivePrefix={arXiv},
    eprint={2409.13639},
    primaryClass={cs.PF}
}