Skip to content

Create RFC for deepin RVA23 optimization repository#18

Open
YukariChiba wants to merge 1 commit intodeepin-community:masterfrom
YukariChiba:rva23
Open

Create RFC for deepin RVA23 optimization repository#18
YukariChiba wants to merge 1 commit intodeepin-community:masterfrom
YukariChiba:rva23

Conversation

@YukariChiba
Copy link
Member

This RFC proposes the establishment of a separate overlay repository for deepin 25 to support and optimize for the new RISC-V RVA23 hardware. It outlines the motivation, detailed design, and potential risks associated with the upgrade of core components.

@deepin-ci-robot
Copy link
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@deepin-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign felixonmars for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

若推迟至 deepin next 准备转正时才进行跨越式升级(如从 GCC 12 跳跃至 GCC 15/16),将面临巨大的 ABI 兼容性与构建失败风险。

4. 维护资源不足
鉴于 RISC-V port 维护人力有限(目前仅 1 人主要维护),我们无法为旧版编译器长期 backport 大量新特性。建立一个基于上游新版本的实验性仓库,是兼顾低维护成本与高性能体验的最佳策略。
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

不过听说目前绝大多数硬件都是 RVA20 的,那这个 RFC 会影响现有的 deepin 上 risc-v 的工作吗?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RVA23 是额外的仓库,构建/使用 RVA23 仓库都需要支持 RVA23 的设备,对原仓库无影响。


### 1. 仓库定位

该仓库(暂定名 `next` 或 `experimental`)将作为 deepin 25 的上层叠加仓库。它不直接替换稳定版用户的核心环境,而是供开发者、高级用户在搭载 RVA23 兼容芯片的 RISC-V 设备使用。用户需手动添加 `sources.list.d/next.list` 并提高优先级。
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

具体实现是?
我如果没理解错的话,dpkg arch 依然是 riscv64,只是一个改了基线的附加仓库?
那是否要考虑用户误加这种事情?感觉可以加个 Pre-Depends 的包,然后当非 rva23 的时候,在 postinst 里炸掉(一个想法,不一定好,不一定就是这个实现)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

可以加,这个有待考量


没有这两个版本,我们将被迫使用非标准的 flag 组合来开启指令集(参考 ubuntu),不仅难以维护,且难以确保生成的二进制文件一定符合 RVA23 规范。

GCC 16 预计于 2026 年 4 月发布,等待该版本将导致我们错过当前的硬件适配窗口,且后续也有观望和调整基线的空间,因此先确定使用 GCC 15 是最佳选择。
Copy link
Contributor

@UTsweetyfish UTsweetyfish Jan 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Debian 已经出 GCC 16 的 snapshot 了
https://tracker.debian.org/pkg/gcc-16

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gcc16选型要慎重 有可能需要选择x.2.0版本更稳定 - 这个可能要更详细讨论

> GCC: RISC-V: Update Profiles string in RV23. (pz9115, 2025-06-16)
> Binutils: RISC-V: Add support for RISC-V Profiles 23. (pz9115, 2025-05-11)

没有这两个版本,我们将被迫使用非标准的 flag 组合来开启指令集(参考 ubuntu),不仅难以维护,且难以确保生成的二进制文件一定符合 RVA23 规范。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

没有这回事 这个提交只是协助展开成对应rva23标准 实际march字符串依然是等价展开 可不受影响

@YukariChiba YukariChiba force-pushed the rva23 branch 3 times, most recently from 4b57b4a to 50e3731 Compare January 29, 2026 05:33
This RFC proposes the establishment of a separate overlay repository for deepin 25 to support and optimize for the new RISC-V RVA23 hardware. It outlines the motivation, detailed design, and potential risks associated with the upgrade of core components.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants