靠开源来完善自我,龙芯:丑媳妇早晚见公婆
说起国产厂商的佼佼者,可能华为算是值得几乎所有人尊敬的一个,不论是通信设备制造,还是技术研发以及最近几年发展红火的芯片和终端设备,都在国内外赢得了一致好评,而近日在国外发布的华为新一代旗舰机型华为Mate9,也吸引了足够多的眼球。然而,还有另外一个厂家,也是值得我们尊敬的,那就是国产芯片的领导者,龙芯中科。就在今年5月,龙芯OpenJDK8免费向全世界开源,龙芯将其多年的心血回报给了开源社区。龙芯首次完整实现了OpenJDK的MIPS分支,堪称OpenJDK发展史上的一个里程碑。
在最近两个月中,龙芯启动的新一阶段工作是把代码提交到OpenJDK社区官方代码库,使全世界的OpenJDK用户都能够任意下载使用,使龙芯服务器产品的使用范围推广到全球开发者。OpenJDK Community要求所有代码贡献者签署一个版权声明,在龙芯签订了OCA(Oracle Contributor Agreement)协议之后,龙芯OpenJDK在产权上已经符合提交至OpenJDK的标准。
经过多次沟通与努力,龙芯中科已经与Oracle正式签署OpenJDK Contributor协议。龙芯成为OpenJDK贡献者列表中的一个重要成员。龙芯中科的Java团队接下来就要启动向OpenJDK Community提交代码和审核的流程,有希望在不远的将来,OpenJDK 8或者OpenJDK 9的官方代码中就集成了龙芯公司贡献的代码,龙芯平台成为OpenJDK继X86、Sparc、PowerPC、Arm64之后支持的又一个CPU架构分支。
Java诞生至今已走过了20多个年头,作为编程语言中的老前辈,随饱受争议却历久弥新。Java平台无关的特点在计算机设备愈发多样化的今天显得尤为重要,小到智能手表、大到云端服务器,都可以看到Java活跃的身影。Java虚拟机(Java Virtual Machine,简称JVM)作为Java的基石,是Java程序运行的基础,它消除了Java语言对底层硬件的依赖华为Mate9。
龙芯公司于2009年组建Java小组并开始进行Java虚拟机的研究和移植。基于OpenJDK,龙芯最初只是实现了OpenJDK 6的模板表解释器,但这却是在龙芯平台上第一次实现了具有较完整功能的Java虚拟机。之后,龙芯依次实现了OpenJDK 6 的C1编译器、OpenJDK 6的64位版本、OpenJDK 8的64位解释器以及C2编译器。这些版本的Java虚拟机在龙芯的客户中得到了广泛的应用和反馈,通过不断的完善和优化,龙芯JVM最终达到了产品级的标准。
龙芯3A2000/3B2000是龙芯3号系列处理器的最新升级产品,以龙芯3A1000四核框架结构为基础,处理器核升级为新一代GS464E架构,内存控制升级为高性能激进调度控制器,IO总线升级至HT3.0,内部互连网络则进行了大量的性能优化。龙芯3A2000处理器核心采用自主设计高性能GS464E微结构,微结构综合技术水平达到了与Intel的IvyBridgy及AMD的Steamroller相当的水平。龙芯3A2000支持自主龙芯指令系统LoongISA,在MIPS64架构500多条指令的基础上,在基础指令、虚拟机指令、面向X86和ARM的二进制翻译指令、向量指令四个方面增加了近1400条新指令华为Mate9。龙芯3A2000/3B2000芯片在对龙芯3A1000引脚兼容的基础上,大幅提升了系统性能。实测综合计算性能提升1-2倍,实测访存性能提升10-20倍,实测IO性能提升3-5倍。同时还对虚拟机和二进制翻译进行了针对性优化支持。龙芯3B2000在龙芯3A2000的基础上支持多达四片全相联结构的多路一致性互连。
俗话说得好,丑媳妇早晚要见公婆,不怕代码不规范甚至漏洞百出,外界的压力正是龙芯JVM不断进步的动力。同时,加入社区意味着代码的开发和维护会更加规范,产品质量自然就会得到提升。归根结底,龙芯JVM希望通过开源的方式完善自己,为用户提供更好的产品。
- 龙芯中科规模化提速:再获3.5亿元采购大单(01-13)
- 谁是“龙芯并购AMD”谣言背后的黑手(01-03)
- 龙芯之殇:中国芯片业就是有钱烧的(01-22)
- 龙芯中科“花式炫富”,产品和合作商一览(06-24)
- 开放源代码的软微处理器开创了设计的新时代 (10-29)
- 嵌入式行业必将大有作为(07-14)