diff --git a/SUMMARY.md b/SUMMARY.md index 8bf871d47f6f67a5d012be1cf3a5d1399a63dcff..6fe0257817f7dad5db0d7f9db035d5f4e4348b95 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -6,6 +6,7 @@ * [一云多芯硬件生态](./multi_arch/README.md) * [Intel SPR平台支持](./multi_arch/intel_spr_support.md) * [开源硬件 RISC-V 支持](./multi_arch/riscv.md) + * [龙芯自主指令集的支持](./multi_arch/loongarch_support.md) * [运维与性能](./devops_perf/README.md) * [软硬件协同](./sw_hw_codesign/README.md) * [面向芯片研发和验证的操作系统 SiliconFastOS](./sw_hw_codesign/siliconfastos.md) diff --git a/multi_arch/loongarch_support.md b/multi_arch/loongarch_support.md new file mode 100644 index 0000000000000000000000000000000000000000..7463a3ca38e2ab05bc36d22b994c61b7fc8c7d89 --- /dev/null +++ b/multi_arch/loongarch_support.md @@ -0,0 +1,25 @@ +# 龙芯自主指令集的支持 +tags: 一云多芯硬件生态, Anolis8 + +## 硬件 +LoongArch是由龙芯中科推出的新一代指令系统,包括基础架构部分和向量指令、虚拟化、二进制翻译等扩展部分,近2000条指令。该指令系统具有较好的自主性、先进性与兼容性,对二进制翻译、虚拟化、向量化的支持能够为操作系统、虚拟机的开发降低成本。 +
+基于LoongArch指令集的处理器芯片如3A5000、3C5000等已经研发成功并量产。AnolisOS完美地支持基于LoongArch指令集的龙芯处理器,并为基于龙芯处理器打造的硬件平台提供了操作系统生态。 + +## 关键技术 +* 内核支持 +基于4.19内核进行了全新的LoongArch架构支持,包括LoongArch架构的基础指令支持,扩展向量指令支持,扩展二进制翻译支持,扩展虚拟化支持;同时实现了基于LoongArch架构研发的3A5000、3C5000、3C5000L/LL处理器的支持和相关配套桥片7A1000、7A2000的支持。并在各个平台进行了完善的测试,相关技术指标也进行了优化。 + +* 虚拟化技术 +QEMU/KVM是目前最流行的虚拟化技术,它基于内核提供的kvm模块,结构精简,性能损失小。AnolisOS在龙芯平台上支持qemu以及libvirt,并提供基于龙芯CPU的虚拟化、管理平台一体化方案,为客户提供全栈的云服务体系。针对QEMU6龙芯平台的优化、支持代码已经合入AnolisOS主线分支。此次改动除专注通用优化外,还支持7A2000桥片iommu功能;支持加解密sec模块直通虚拟机技术。 + +* 语言平台GCC/LlVM/Golang/Rust/Java/JavaScript +针对龙芯平台的优化、支持代码已经合并进入AnolisOS社区主线分支。这些改动除专注通用性优化,如GC NUMA和编译策略优化外,也包括针对龙芯处理器的深度优化,比如使用龙芯的专有指令。如此可以充分挖掘指令特点,最大限度利用硬件。 +
+其中龙芯平台的JVM虚拟机和V8引擎优化后已经能够承担量级可观的日常测试和开发任务。 + +## 产业链 +AnolisOS操作系统环境及软件均已移植完成,成为了LoongArch的原生版本。行业应用方面,面向LoongArch的移植工作也在有条不紊地进行,LoongArch的原生生态已经不输于原本的LoongISA。 +
+3个二进制翻译系统x86、arm、mips翻译能力使得龙芯平台可以短时间内兼容其他平台成熟的应用软件。翻译运行效率也在持续提升,已经接近90%。 +