导航:首页 > 源码编译 > 国产芯片编译器

国产芯片编译器

发布时间:2023-11-02 17:55:47

1. 关于自研编程语言,华为传来好消息,或实现从根打破

开发一款操作系统,软件应用是需要用上编程语言的,要让计算机能够识别指令,才能实现功能的运行。市面上大部分的编程语言都来自国外,包括C++、Python、Java语言等等。有关的教科书,教材也是基于国外编程语言编写。

虽然有现成的编程语言可以用,可华为在建立全面自主的操作系统生态,编程语言又怎样可能落下呢?

华为传来了自研编程语言的好消息,或实现从根打破。除编程语言之外,还要在编译器、指令集、芯片等方面进行根源布局。

对此,华为在自研编程语言带来了怎样的好消息呢?华为从根打破,进展如何?

华为自研编程语言不是什么新鲜事,很早之前在网上就流传出华为自研编程语言的消息,并将其命名为“仓颉”。

从2022年8月份开始,华为申请了“仓颉语言”的商标,其中一项商标被驳回,但后来华为又再次申请。由此可见华为对这项“仓颉语言”的商标十分在意。

一开始外界并没有过多注意,只是觉得华为要开发某些项目,但随着时间的推移,有关“仓颉语言”是自研编程语言的消息越来越明确。

直到华为在2021全联接大会上表示,华为将在2022年正式推出自研的编程语言仓颉。这才真正看清了华为真的在努力开发自研编程语言。时至今日,进展如何呢?

6月16日,华为传来了自研编程语言的好消息,根据华为副总裁邓泰华表示,计划在下半年发布仓颉编程语言。

很多人都在等待这一刻,这一次华为瞄准编程语言或将从根打破。

编程语言准备了这么久,终于到了快要发布的时候了。尽管目前还没有具体的发布时间,究竟是下半年的几月几日还不确定,但这么多年都等过来了,还差这半年吗?

可以发现,只要是涉及到底层架构的根技术,华为几乎都有布局的身影。华为开发了鸿蒙,欧拉这两大国产操作系统,又推出了方舟编译器提高开发者效率,还有芯片平台的研发,让外界认识到华为不只是硬件实力强劲,软件技术的开发水平同样位居世界一流。

有人好奇这款华为自主研发的编程语言是不是使用中文,如果使用中文,岂不是意味着全球编程语言会迎来大洗牌?那么关于仓颉语言,究竟是怎样一个产品呢?

关于仓颉的消息华为并没有透露太多,但可以知道的是,仓颉将对应上层应用,支持多样化算力。

至于是否支持中文,基本上不太可能。计算机是国外发明的,二进制,指令集等一些技术架构的使用不会有太大的改变,在整个的编程环境中,大概率还是以英文为主。但也许华为真能独创中文编程语言也说不准,毕竟中文正逐渐走向世界。

华为全面转型软件产业,目前正在做的一些布局都和根技术有关,一旦成功,华为将掌握完全自主的软件生态环境。甚至改变国产信息技术产业的发展进程,让国产操作系统,编程语言等一系列根技术走向世界,建立属于中国的根技术开源社区。

华为或将从根打破,目前布局进展如何呢?先看操作系统。华为开发出鸿蒙,欧拉两大操作系统,一个是支持万物互联的物联网操作系统,另一个是面向数字基础设施的生态底座。截至目前鸿蒙系统拥有2.4亿用户,欧拉实现170万套的装机量。

开源系统已经建成,生态有序发展,华为开发的操作系统比想象中的还要好。

其次是编译器。华为对编译器的布局是推出了方舟编译器,主要功能是提供开发者统一的编译平台,让不同操作系统,应用程序能够适配统一识别的预言。华为在今年2月份发布了方舟编译器1.0版本。

芯片就不用多说了,大家都十分熟悉,不管是麒麟芯片还是面向数据中心的鲲鹏处理器,基本上在各大应用平台,终端市场都进行了系列芯片的开发。

还有就是编程语言了,这是华为掌握根技术的重点布局,为能够在下半年顺利发布,华为正努力开发,优化中,相信不会让大家等太久。

根技术远不止这些,国外花了几十年在计算机市场,信息技术体系建立起绝对的影响力。华为用了几年的时间就有了根技术自主可控的雏形,未来的前景不可限量。

华为正式官宣,自研的编程语言将在今年下半年发布。很多人没有意识到这件事的重要性,多少年以来编程语言一直被国外把持着,学习国外的知识的技术。现在华为独创编程语言,属于中国的信息技术时代终将到来。

对此,你有什么看法呢?

2. CPU性能大乱斗!国产CPU实力揭露

一直一来,缺芯少魂一直是中国信息产业的心病,中国的CPU市场也一直被Intel、ARM等国外厂商垄断,龙芯、申威、飞腾等国产CPU在社会上也往往遭到别有用心之徒诸如“打磨芯片”、“骗经费”、“政绩工程”等舆论抨击。不久前,采用申威26010的神威太湖之光在TOP500刷榜,飞腾也公布了采用ARM指令集的飞腾1500A和飞腾2000,龙芯的3A3000也顺利完成流片,那么这些国产CPU的性能到底如何呢?

如何评价CPU

如何评价CPU的性能呢?从体系结构的角度来看,有个指标叫MIPS,即每分钟执行多少条指令,执行指令数量越多,性能就越好,但这存在一个问题,当CPU指令集不同的时候,比较MIPS就意义不大了——比如A一条指令只算一个加法,B一条指令能做一个1024点的FFT。特别是在不同指令集的情况下,如何评价CPU的性能呢?

评价CPU性能必须考虑应用的多样性,比如科学运算重视双精浮点性能,但是如果数据供不上,运算能力再强也没用;比如PC日常使用更偏重于定点性能;再比如计算中心多任务环境关注的是吞吐率......因此单纯用某一个指标来衡量CPU性能是不科学的,必须综合考量。

业界也推出了很多基准测试程序,比如针对CPU的SPEC,针对嵌入式应用的EEMBC等。SPEC测试是比较权威的测试程序。和一些黑箱测试程序调整计分方式和计分权重后测试结果就发旦搜生变化不同,SPEC测试到底跑了什么程序,以及各项程序跑分和计分方式全部公开透明,而御兆且覆盖范围广——SPEC2000有12个定点程序,14个浮点程序,而且有比较强的代表性,比如gzip、vpr、gcc、mef、eon等。而SPEC2006则把定点程序扩展到14个定点程序和16个浮点程序。

在计分方法上,SPEC在计分上采用归一化的几何平均方法来进行综合性能评估——将不同CPU的执行时间与参照对象相比较后得到一个相对值。SEPC2000的参照对象是Ultra SPARC 2工作站的主频为300Mhz的CPU。如果运行测试程序1的时间是参照对象的十分之一的话,测试就是1000分,测试程序2的耗时是参照对象的八分之一的话,则为800分.....最后再算几何平均——比如SEPC2000有12个定点测试,就将12个测试成绩相乘再开12次方,SPEC2006相对于SPEC2000而言仅仅是扩展了几项测试程序,使测试更加科学合理。这里,我们以三星猎户座7420和华为麒麟950为例计算SPEC测试成绩。

“科普中国”是中国科协携同社会各方利用信息化手段开展科学传播的科学权威品牌。

本文由科普中国融合创作出品,转载请注明出处。

3. 地平线征程5:国产大算力自动驾驶芯片即将量产!

驾驶辅助功能作为车企在新能源时代新的技术护城河之一,在当下受到的关注与日俱增,决定一台车驾驶辅助能力的,除了有能够看得见摸得着的激光雷达、摄像头这类感知传感器,在看不到的地方自动驾驶芯片同样至关重要,它的性能高低直接决定,感知传感器采集到的信息能否被准确、快速的处理。那么对于高阶的驾驶辅助功能,甚至是自动驾驶,我们需要什么样性能的自动驾驶芯片呢?


4. 神威是首次完全使用中国芯的超级计算机

据报道,6月19日德国法兰克福举行的全球超级计算大会公布新一期全球超级计算机500强榜单,其中神威太湖之光出现在全球超算500强榜单(第四十九期)榜首的位置,神威也是首次主设计生产的国产芯片――“申威26010”众核处理器的超级计算机。

除了芯片,神威在体系结构、高速互联、系统软件等关键技术上都实现了前所未有的创新和突破,带来了性能的跨越式发展。目前已经构建了从编译器、操作系统、开发环境到应用平台的较为完善的软件生态链,并有针对硬件做性能的优化,确保性能的发挥、节能水平的利用。

5. 突破封锁!国产芯片终于有了自己的指令集

在半导体芯片领域, 指令系统是一切软硬件生态的起点

以大家最熟悉的ARM和X86为例,它们就分别隶属于RISC精简指令集和CISC复杂指令集。

随着物联网、5G、AI新兴领域的兴起,RISC-V和MIPS两大精简指令集架构也频繁出现在我们的视野内。

所谓芯片,其实都是由半导体堆出来的硬件电路,晶体管越多往往代表性能和功能越强。但无论是超级计算机还是智能手环, 它们搭载的处理器都只能识别二进制数据

想让这些芯片正常运行,处理复杂的应用场景,首先就要教会它们学会类似九九乘法表的“算法口诀”和“数学公式”, 而这些算法口诀/公式其实就是所谓的“指令集”

换句话说, 指令集的功能和效率(算法口诀/公式的类型),在很大程度上就决定了各类芯片的成就和算力的上限

虽然海思麒麟、龙芯、兆芯、海光、紫光、澎湃等国产芯片都在各自领域取得了不俗的成绩,但无论是它们,还是其他采用X86、ARM、MIPS、RISC-V、Alpha和Power,选择封闭、授权还是开源的国产芯片项目,其底层的指令集根基都掌握在别人手里。

因此, 只有从指令系统的根源上实现自主,才能打破软件生态发展受制于人的枷锁

好消息是,日前龙芯中科就正式发布了自主指令系统架构“Loongson Architecture”,简称为“龙芯架构”或者“LoongArch”。它包括基础架构部分,以及向量扩展LSX、高级向量扩展LASX、虚拟化LVZ、二进制翻译LBT等扩展部分,总共接近2000条指令。同时不包含龙芯此前使用的MIPS指令系统, 并具有完全自主、技术先进、兼容生态三个方面的特点

目前,采用LoongArch的龙芯3A5000处理器芯片已经流片成功,完整操作系统也已稳定运行,它能对多种国际主流指令系统的高效二进制翻译链,并成功演示了运行基于其它主流指令系统的复杂应用程序。

LoongArch对MIPS指令的翻译效率是100%性能,对ARM指令翻译的效率是90%性能,对x86的翻译效率是80%性能。

此外,龙芯中科还在联合产业链伙伴在适当的时间建立开放指令系统联盟,在联盟成员内免费共享LoongArch及有关龙芯IP核。

所谓IP核,我们可以理解为ARM旗下的Cortex-A78和Cortex-A55等,后置都是基于ARMv8指令集打造的核心IP架构,并授权给了高通、三星、联发科等芯片商开发SoC移动平台。

目前,ARM刚刚发布了ARMv9指令集,如果不出意外将在下半年发布的Cortex-A79和Cortex-X2架构就将采用这套指令集。

近10年来32位手机处理器都是基于ARMv7指令集打造,在A75之前的处理器则是基于ARMv8-A设计,随后都是ARMv8.2-A一统江湖

ARM指令集可以细分为Cortex-A(ARMv-A)、Cortex-R(ARMv-R)和Cortex-M(ARMv-M),分别适用于不同类型的芯片

比如车载芯片使用的就是Cortex-R(ARMv-R)核心IP

总之, 设计出一个纯国产的自主指令集只是万里长征的第一步 ,关键是后续要做出懂这个指令集的CPU(已经有了龙芯3A5000),再往后还需要让和人类交互的“翻译家”——编译器懂这个指令集。也就是需要不断完善软硬件生态,让我们熟悉的系统、办公、 娱乐 和 游戏 程序都能运行在这套指令集打造的芯片之上。如果做不到这一步,国产指令集和相关芯片也只是空中楼阁而已、

作为国人,我们真心希望LoongArch这种国产指令集可以取得成功,今后无论手机、电脑、车载还是其他半导体芯片都能以使用国产指令集为荣,并走向世界。

扩展小知识

那么,指令集又是如何影响芯片执行效率的?

我们以RISC和CISC,让它们分别执行“清洁地面”的命令为例,看看其背后的指令逻辑差异。

逻辑上,“清洁地面”的大概思路是先拿起扫帚,扫地;拿起簸箕,用扫帚把垃圾扫进簸箕;放下扫帚和簸箕,润湿墩布;再用墩布擦地,直至清洁地面完成。

对CISC复杂指令集而言,很容易理解“清洁地面”这套逻辑,下达“清洁地面”命令后,就能按照规则和顺序,一步步自动完成。

对于RISC精简指令集而言,它一下子可理解不了如此复杂的逻辑,必须将复杂的逻辑顺序拆分,然后按照一项项简单的命令去完成复杂的操作。

比如,想让RISC精简指令集完成“清洁地面”命令,就必须依次下达“拿起扫帚”、“扫地”、“拿起簸箕”、“把垃圾扫进簸箕”、“放下扫帚和簸箕”、“润湿墩布”、“墩地”……

看起来CISC复杂指令集方便又强大?没错,如果要同时清洁无数房间地面,你只要对着不同的房屋说“清洁地面”、“清洁地面”、“清洁地面”……即可。

而对RISC精简指令集,你需要对着每个房间都重复一整套复杂的命令,如果下达指令的人嘴巴不够快(带宽不够大),那清洁地面的效率自然受到影响,难以和CISC复杂指令集抗衡。

但是, 现实生活中,并非所有房间的地面都需要一整套的清洁流程,比如你只需要墩地一个步骤。

对RISC精简指令集而言,你只需对着需要清洁的房间说“墩地”、“墩地”、“墩地”即可。而由于CISC复杂指令集没有单独的“墩地”动作,操作起来就要麻烦许多,完成相同的墩地操作会消耗更多资源,翻译过来就是发热更高更费电。

这就是RISC和CISC的本质区别。 说不上谁好谁坏,只能说它们所擅长的领域各不相同。

以ARM架构为代表的RISC精简指令集,最适合针对常用的命令进行优化,赋予它更简洁和高效的执行环境,对不常用的功能则通过各种精简指令组合起来完成。

RISC是将复杂度交给了编译器,牺牲了程序大小和指令带宽,从而换取了简单和低功耗的硬件实现。

对以X86架构为代表的CISC复杂指令集,则适合更加复杂的应用环境。

CISC是以增加处理器本身复杂度作为代价,以牺牲功耗为代价去换取更高的性能。不过,X86架构则可通过对新型指令集的支持(如SSE4.1、AVX-512等),在一定程度上提高指定任务的执行效率和降低功耗。

现在芯片领域是RISC攻,CISC守的格局。以苹果M1为代表的ARM架构RISC指令集芯片正在染指传统的X86 PC市场,而且大概率会取得成功。虽然以英特尔为代表的X86阵营曾多次试图反击Android生态(如早期的Atom芯片),但最终却都以失败告终。ARM最新发布的ARMv9指令集,就给了ARM芯片入侵X86 PC大本营更多弹药,也许用不了多久Windows ARM版PC也将成为一个更加重要的PC品类。

6. 大部分手机厂家不用麒麟海思的芯片,其原因是什么

一方面是麒麟芯片的产量不足以供应其他的厂商。另一方面麒麟芯片也是华为的一项核心技术,并不是可以外出出售的。

华为手机的麒麟芯片是我国国产芯片当中目前可以量产使用的核心处理器之一,对华为公司来说是非常重要的一项核心技术。由于华为公司本身的技术差距以及沉淀实力,因此他们本身的芯片产量不足以供应其他的厂家。同时华为对于自己的芯片技术也是非常看重并且严格保密的。

一:在同等价格下,麒麟芯片的价格非常高昂。

麒麟海思芯片是华为沉淀了许多年,花费了大量人力物力所生产出来的国产研发芯片。由于华为本身的技术实力肯定要比高通和联发科等其他厂商要逊色许多,因此麒麟芯片的单个芯片造价以及研发价格是非常高昂的。因此许多厂商为了保证自己的手机生产的利润,购买麒麟芯片就是一种非常不划算的做法。

与国产芯片编译器相关的资料

热点内容
安卓手机mp3压缩工具 浏览:214
程序员和交易员 浏览:422
怎么变字体样式app 浏览:173
名字叫汤什么的视频app 浏览:209
金属加密键盘联系电话 浏览:335
自制解压牛奶盒子教程 浏览:64
编译高手的图片 浏览:922
单片机数码管显示时分秒 浏览:780
手指解压最简单的方法 浏览:345
韩国邮箱服务器地址 浏览:967
android版本介绍 浏览:410
pdf文件加密软件 浏览:410
长沙住房app怎么看备案 浏览:603
安装加密软件的电脑会被监控么 浏览:221
java微博源码 浏览:569
堆排序简单实现python 浏览:461
单片机引脚与键盘的关系 浏览:132
压缩火柴盒制作 浏览:38
谷歌地图android偏移 浏览:214
bitlocker硬盘加密空间 浏览:238