重庆财经网
重庆财经网 > 资讯 > 正文

鲲鹏展翅集纳天下英才,智耀山城蓄力计算未来

导读: 

百年之前,孙中山先生有言:“人既尽其才,则百事俱举;百事举矣,则富强不足谋也。”百年之后,战火已然远去,而全世界在文化、科技等各个领域上的追逐争夺从未停息,信息

百年之前,孙中山先生有言:“人既尽其才,则百事俱举;百事举矣,则富强不足谋也。”百年之后,战火已然远去,而全世界在文化、科技等各个领域上的追逐争夺从未停息,信息科学、通讯技术、生物科学等一系列科学技术的角逐是智能时代下的“新战场”。“战火”在不同的世界燃起,而始终未曾改变的是,人才和技术始终是决定竞争力的关键因素。

“新战场”下,国产技术在 5G、云计算、大数据、人工智能等领域表现十分突出,但盛况之下暗流汹涌,我国的计算生态并不乐观。科技场上的一派繁荣之下,传统计算基础设施的成本投入居高不下,芯片产品的竞争力也还不能够完全适配市场需求。要实现进一步的突破,继续保持平稳快速的发展,技术进阶和人才储备缺一不可。

作为国产信息技术领域的领航者,华为鲲鹏始终坚持硬件开放、软件开源、使能伙伴的信条。多年来,鲲鹏致力打造一个从底层硬件到终端软件全面覆盖的国产化生态体系,突破传统计算框架与计算平台,开源操作系统、数据库、数据虚拟化引擎,全方位支撑软件伙伴打造商业化的解决方案,为国产计算技术持续高速发展保驾护航。

技术的进阶离不开其背后海量人才的支撑,华为鲲鹏也牢记着这一法则。为了满足鲲鹏产业发展对人才的需求,激发创新潜力,培养鲲鹏产业发展所需的基于鲲鹏生态的软件适配、迁移、软件开发、解决方案孵化等研发能力,加速构建以鲲鹏为底座的覆盖全产业链的千亿级计算产业,鲲鹏计算产业生态重庆中心与华为技术有限公司联合,面向重庆 ICT 行业企业从业人员举办了「鲲鹏应用创新大赛 2020•重庆赛区」活动。

激发行业创新、促进人才培养、加速产业融合是本次「鲲鹏应用创新大赛 2020」的宗旨。在「鲲鹏应用创新大赛 2020•重庆赛区」宣讲会上,来自鲲鹏的专家现场向大家详细介绍了本次应用创新大赛内容及奖项设置,并对鲲鹏软件性能调优、软件迁移等技术进行了讲解,吸引全产业开发者共同打造鲲鹏全栈解决方案,实现技术与商业创新应用。

2. 鲲鹏软件性能调优

效率和性能是我们在计算中一直不懈追求的,尤其是现在人工智能、大数据、云计算等技术的发展对计算效率和性能的要求越来越高,而进行软件性能调优后,在算法不变的情况下,能够使性能达到数万倍的提升,这也就是要进行软件调优的原因。

性能调优有 CPU/ 内存,磁盘,网卡,应用 4 个方向。

磁盘

文件系统决定了磁盘加载到内存过程速度的快慢。文件系统是硬盘到内存之间沟通的桥梁,信息从本地磁盘或者网络存储中读入内存,必须经过文件系统进行相关的标注,完成相关调度,再加载到内存之中。

鲲鹏展翅集纳天下英才,智耀山城蓄力计算未来

而磁盘预取能够充分利用磁盘的带宽。开启磁盘预取后,CPU 在读取数据时,可能会将周围的数据一并读取加载,这样就会减少相关的一些 I/O 请求,使磁盘带宽得到充分利用。

应用

软件调优的本质是充分发挥硬件的性能,在多核场景中,我们考虑通过提升并发数来达到提高利用率的目的。但在实际的业务场景中来看,例如在有锁的业务模型中,在等锁上。消耗了很多时间片,应用处理的时间相对来说反而较少,这样性能不升反降。不过可以通过推进无锁编程、大锁变小锁、原子操作指令等方式的应用,减少资源抢占,提升并发,在 Cache 中也可采取减小 CacheLine 的大小、分别放置读写频繁的变量的方式,充分发挥多核性能优势。

鲲鹏展翅集纳天下英才,智耀山城蓄力计算未来

2. 工具套件与技术支持

鲲鹏小智

鲲鹏小智是一个智能服务机器人,能够对兼容性软件查询、镜像包查询、汇编指令查询等问题进行智能问答。目前鲲鹏小智可以就兼容软件查询、镜像包查询、汇编指令查询、项目经验案例检索、常用工具一键访问、故障问题查询六大模块在网页上直接进行回答。

鲲鹏展翅集纳天下英才,智耀山城蓄力计算未来

兼容软件查询

兼容软件查询工具,包括对开源软件、商业软件、操作系统、软件的查询。方便开发者获取需求软件的名称、下载地址、兼容信息等一系列内容。

鲲鹏展翅集纳天下英才,智耀山城蓄力计算未来

C/C++ 代码迁移

对于像 C、C++ 等典型的编译型语言来说,要从 x86 平台迁移到鲲鹏平台时,一般都需要重新编译。编译构建脚本类文件在迁移过程中会涉及到编译选项的移植,而源码类文件则会涉及到编译宏,以及编译器自带的 Builtin 函数、SSE intrinsic 函数等内容的移植。

鲲鹏展翅集纳天下英才,智耀山城蓄力计算未来

在 C/C++ 代码编译构建过程有六大步骤,首先是获取源码,可以通过 GitHub 等开源社区来获取;其次需要选择所需的编译环境,就是安装编译器 gcc 等;之后根据源码的编译脚本生成 Makefile 文件,再用 Makefile 编译生成可持续文件。如果这部分代码之中有依赖 x86 平台的 SO 库,那么这部分的依赖库是需要重新编译替换的。在编译完成之后进行安装部署,之后进入到实际的系统之中进行测试。

Maven 仓软件构建

Maven 的作用就是把所有的开源软件编辑成一个 jar 包放在 Maven 仓库上面,需要时直接在 Maven 上调用,这也叫作 jar 的依赖管理。在构建 jar 包的过程中,首先需要查询本地仓库,本地仓库如果找不到就去远程仓找,第三步需要编译实现,并且验证该版本在鲲鹏上是否可用,如果不可用,则需要重新编译这个包,然后替换到本地的仓库,再重新构建,编译出可使用的版本。

鲲鹏展翅集纳天下英才,智耀山城蓄力计算未来

鲲鹏 Maven 仓实质是一个远程仓,里有各种各样适用于鲲鹏平台的 jar 包,基于 Maven 仓的构建过程,在本地仓没有找到合适的 jar 包时,就到鲲鹏的远程仓找,下载出来就是在鲲鹏平台可以使用的 jar 包,无需重复校验、编译,就可以得到一个鲲鹏上可以用的版本包。这一过程能够大大简化 Maven 软件构建流程,有效提升开发效率。

4. 写在最后

人才积蓄力量,技术创造未来。智能时代的大幕刚刚拉开,计算力量决定着科技的走向,而技术的比拼究其根源无外乎皆是人才的较量。作为后浪的你,准备好加入这场战斗了吗?鲲鹏与你一同创造计算世界的下一站光辉。

推荐阅读:如何解除u盘写保护