LR_04_001: Port .NET Runtime to RISC-V
Tracking at https://github.com/dotnet/runtime/issues/84834
CI supported by MSFT
Test boards: VisionFive2
We will be changing the test boards soon: a new SoC w/ full media & connectivity support and vector/crypto extensions.
About
There are consumer electronics running .NET applications on Linux (Tizen), which are going to try RISC-V CPUs.
Project Scope and Timelines
The functional capability (passing the unit tests except for performance criteria) of runtime and libraries for RISC-V (RV64) is required by 2Q, 2024.
In 2023, .NET Runtime RISC-V port effort will focus on completing its JIT functions and codegen.
Extension support (Vector and Crypto), AOT compilers, JIT optimizations, are scheduled after that.
Components and Repos
Repository: https://github.com/dotnet/runtime
Task/Issue Tracking: https://github.com/dotnet/runtime/issues/84834
Related Pull Requests (a few examples)
- [RISC-V] coreclr-jit directory #82379
- [RISC-V] others except coreclr #82382
- [RISC-V][JIT] Fix assert on passing double in struct #84584
- [RISC-V] Fix build fail #84608
- [RISC-V] coreclr-pal and coreclr-debug directories #82380
- [RISC-V][JIT] JIT/CodeGenBringUpTest #84748
- [RISC-V] coreclr-vm and other directories in coreclr #82381
- [RISC-V][GC] Use 128gb for regions_range on RISCV64 #84797
- ...
Stakeholders and Partners
- .NET RISC-V Port Implementation (Samsung / Contact: MyungJoo Ham , clamp03@github, gbalykov@github, t-mustafin@github, alpencolt@github, zer011b@github, )
- .NET Project Maintenance & Review (Microsoft .NET team)
Dependencies
Name or Category | WG Link | Urgency | Impact | Status |
---|---|---|---|---|
libunwind (resolved) | ||||
lldb (resolved) |
|
| ||
binary toolchain packages (resolved) | ||||
more efficient emulator (resolved) |
|
Measure of Success
Either one of the two:
Scenario 1: It passes the testing facilities in .NET upstream CI (DONE)
and Microsoft (or its upstream maintainers) announces that it officially supports RISC-V (WIP: It's in .NET 8 Preview)
Scenario 2: Tizen releases RISC-V OS images including .NET runtime, libraries, and API/SDK. (WIP: Targets 25' release)
RISE Requirements
It'd be great to have, but not "required":
- Find people who's interested in porting .NET on RISC-V and let them participate.
- Get Microsoft involved in RISE and put their own effort on RISC-V ports.
Status Updates
Add key updates here, using heading 2 with the update date as the title.