RVCC Proposed As An LLVM Incubator For High Performance RISC-V Optimizations
([LLVM] 2 Hours Ago
LLVM RVCC Compiler)
- Reference: 0001623627
- News link: https://www.phoronix.com/news/LLVM-RVCC-Incubator-Proposed
- Source link:
A proposal was submitted today for launching the RISC-V Compiler Collaboration "RVCC" as an LLVM Incubator project to focus on compiler optimizations for better performance on RISC-V. But before getting too excited, there is already some opposition to the proposal.
RVCC aims to be a staging area where RISC-V performance optimization patches for LLVM/Clang can be collected and iterate quicker than going into LLVM proper. RVV aims to lower the time / review costs on patches while still being developed/tested, the project would rely on benchmarks for evaluating RVV changes on different RISC-V hardware platforms, and hopefully avoid some of the toolchain fragmentation that is already happening within the RISC-V ecosystem by different software/hardware vendors.
In essence, RVCC to LLVM would be akin to the Linux kernel's staging area to the kernel, but tailored just to iterating on RISC-V patches more quickly. Patches from RVCC then submitted for upstream LLVM would still go through the same review process rigor.
The proposal for RVCC can be found via the [1]LLVM Discourse .
While the idea of advancing RISC-V compiler performance optimizations more quickly for LLVM/Clang is nice, this RVCC proposal does face some opposition already against becoming an LLVM Incubator project.
Nikita Popov as [2]the lead LLVM maintainer already responded to that LLVM Discourse thread against the proposal:
"This proposal gets a strong no from me. We should not have an incubator for what is basically an LLVM fork plus patches that fail to meet LLVM’s usual quality standards."
RVCC could still become an external proving grounds for RISC-V compiler optimizations to LLVM/Clang, but we'll see ultimately how this proposal evolves or what may come of it.
[1] https://discourse.llvm.org/t/rfc-rvcc-an-llvm-incubator-for-high-performance-risc-v-compiler-optimizations/90376
[2] https://www.phoronix.com/news/LLVM-Lead-Maintainer-Popov
RVCC aims to be a staging area where RISC-V performance optimization patches for LLVM/Clang can be collected and iterate quicker than going into LLVM proper. RVV aims to lower the time / review costs on patches while still being developed/tested, the project would rely on benchmarks for evaluating RVV changes on different RISC-V hardware platforms, and hopefully avoid some of the toolchain fragmentation that is already happening within the RISC-V ecosystem by different software/hardware vendors.
In essence, RVCC to LLVM would be akin to the Linux kernel's staging area to the kernel, but tailored just to iterating on RISC-V patches more quickly. Patches from RVCC then submitted for upstream LLVM would still go through the same review process rigor.
The proposal for RVCC can be found via the [1]LLVM Discourse .
While the idea of advancing RISC-V compiler performance optimizations more quickly for LLVM/Clang is nice, this RVCC proposal does face some opposition already against becoming an LLVM Incubator project.
Nikita Popov as [2]the lead LLVM maintainer already responded to that LLVM Discourse thread against the proposal:
"This proposal gets a strong no from me. We should not have an incubator for what is basically an LLVM fork plus patches that fail to meet LLVM’s usual quality standards."
RVCC could still become an external proving grounds for RISC-V compiler optimizations to LLVM/Clang, but we'll see ultimately how this proposal evolves or what may come of it.
[1] https://discourse.llvm.org/t/rfc-rvcc-an-llvm-incubator-for-high-performance-risc-v-compiler-optimizations/90376
[2] https://www.phoronix.com/news/LLVM-Lead-Maintainer-Popov