[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1040380: ITP: spike -- Spike RISC-V ISA Simulator



On Wed, Jul 05, 2023 at 05:17:29PM +0800, Jax Young wrote:
> Package: wnpp
> Severity: wishlist
> Owner: Jax Young <jaxvanyang@gmail.com>
> X-Debbugs-Cc: debian-devel@lists.debian.org, jaxvanyang@gmail.com
>
> * Package name    : spike
>   Version         : 1.1.0
>   Upstream Author : Andrew Waterman <aswaterman@gmail.com>
> * URL             : https://github.com/riscv-software-src/riscv-isa-sim
> * License         : Custom license
>   Programming Lang: C, C++
>   Description     : Spike RISC-V ISA Simulator
>
> Spike has been published for several years, with the development of
> RISC-V, I think it should be included in Debian packages.
>  - Spike is developed by the official RISC-V organization. It is a good
>    reference for RISC-V ISA Simulator, and it has 1.8K stars on GitHub.
>  - QEMU also supports RISC-V ISA simulation, but it acts more for
>    virtual environment. Spike focus on RISC-V, and it is more for
> 	 developing.
>  - I am new to package maintenance, so I need a sponsor. Spike's API is
>    fairly stable, the last version was released on Dec 17, 2021. But the
> 	 development is still ongoing. So the maintenance should be easy for a
> 	 noob like me.
>

I disagree. Spike exists to be an easy simulator for people extending
the RISC-V ISA to hack on, and to give software developers something to
start testing their code on as extensions are in-flight (both of which
are also served by the Sail model, which is technically the official
golden model, even if many still prefer to use Spike). However, if
you're not using the latest version, any draft extension specifications
implemented by it have likely moved on in the meantime to newer
incompatible drafts, rendering them obsolete, and any frozen (or even
ratified) specifications are likely to be implemented by QEMU. Plus QEMU
will be much, much faster thanks to its JIT approach, and has a rich set
of devices available, unlike Spike which has just a UART last I checked,
not even any form of storage, meaning it can only run basic binaries or
boot kernels with an in-memory filesystem.

I therefore do not see any point in shipping some old version of Spike
in Debian. What is your use case for having it?

Jess


Reply to: