Zhaoxin Tries Again To Upstream Their "LuJiaZui" CPU Support Within GCC
Back in 2019 Chinese CPU company Zhaoxin introduced "LuJiaZui" as their 16nm x86 CPU design for use from laptops up through servers. LuJiaZui is much improved from their earlier chips though still well behind AMD and Intel performance. Proper GCC compiler support for LuJiaZui was sent out again this week after their previous upstreaming attempt hadn't made it into GCC 12 due to being late in the cycle.
Zhaoxin as a refresher is what started as a joint venture between VIA and the Shanghai government and their x86 CPU focus is on the domestic Chinese PC market. The Zhaoxin LuJiaZui 16nm CPUs can run at up to 3GHz, support DDR4-3200 memory, handle up to 64GB of RAM, and other enhancements for these processors marketed as the ZX-E / KX-6000 / KH-30k series.
Zhaoxin this year is expected to launch their YongFeng successor to LuJiaZui with much better performance, reportedly DDR5 memory support and PCIe 4.0 connectivity, and more. Zhaoxin though only in recent months has been trying to upstream the LuJiaZui detection and support within the GCC compiler.
This patch fix Zhaoxin CPU vendor ID detection problem and add zhaoxin "lujiazui" processor support. Currently gcc can't recognize Zhaoxin CPU(vendor ID "CentaurHauls" and "Shanghai") if user use -march=native option, which is confusing for users. This patch enables -march=native in zhaoxin family 7th processor and -march/-mtune=lujiazui, costs and tunning are set according to the characteristics of the processor. We add a new md file to describe lujiazui pipeline.
Should you have access or be interested in these Chinese x86 CPUs, the GCC enablement patch is currently sitting on the GCC mailing list. We'll see if it gets pulled soon now that GCC 12 has been branched and GCC Git is tracking the work for next year's GCC 13. We'll also see if Zhaoxin's next-gen YongFeng CPU family sees more timely GNU Compiler Collection upstreaming.