写点什么

硬核盘点,华为面向开发者的十大技术

  • 2019-09-24
  • 本文字数:5844 字

    阅读完需:约 19 分钟

硬核盘点,华为面向开发者的十大技术

随着社会的发展,科技的进步,5G 落地、AI 爆发、大数据持续突破、云计算已然成为新时代的水电煤。日益增多的新兴技术,为开发者带来机遇的同时也带来了不少挑战。尽管开发者们经常身处历史性事件的前沿,但由于很多技术学习门槛较高,且没有相对完整的配套技术生态,开发者们其实很难时刻保持良好的学习曲线。


在简化开发、降低技术门槛、提高研发效率等方面,华为每年投入大量的资金和人力,而小编将为大家介绍的这十大硬核技术,正是华为加速技术发展、构建产业生态的助燃剂。小编看来,作为开发者,了解学习到这十大技术,不仅可以了解技术产业前沿趋势,也是为未来职业生涯发展打基础。

Top 1 达芬奇架构

毋庸置疑,AI 技术正成为各行业数字化转型的发动机,大到智慧城市,小到 IoT 等,都少不了 AI 的身影。那么多的应用场景,如何才能实现 AI 在多平台、多场景之间的协同?


华为用达芬奇架构给出了答案。作为华为自研的面向 AI 计算特征的全新计算架构,达芬奇架构具备高算力、高能效、灵活可裁剪的特性。


具体说来,达芬奇架构采用 3D Cube 针对矩阵运算做加速,大幅提升了单位功耗下的 AI 算力,同时还集成了向量、标量、硬件加速器等多种计算单元,辅以最小的计算代价增加矩阵乘的算力,来提升 AI 计算的完备性和不同场景的 AI 能效。



3D Cube


而灵活可裁剪的特性则让达芬奇架构能够满足端侧、边缘侧及云端的应用场景,可用于小到几十毫瓦,大到几百瓦的训练场景,解锁 AI 的无限可能。


以华为昇腾芯片为例,昇腾系列芯片就采用了统一的、可扩展的达芬奇架构,是全球第一个覆盖全场景的人工智能芯片系列,无论在低功耗的边缘场景,还是大算力的数据中心场景,昇腾系列都将提供出色的性能和能效比。


此前,华为推出的目前算力最强 AI 处理器昇腾 910 就可应用于自动驾驶、平安城市、智能制造、运营商、金融等应用场景。不仅如此,华为还基于达芬奇架构提供了高性能的人工智能计算平台 Atlas。通过 Atlas 200 DK AI 开发者套件,开发者可以在 30 分钟内完成开发环境搭建,内置的图形化编程环境,将极大地提升开发效率。并且,得益于昇腾芯片的全栈全场景能力,基于开发者套件开发的程序只需一次开发,即可实现端、边、云全场景部署。


依托采用达芬奇架构的华为昇腾系列 AI 芯片提供的超强算力和全场景需求覆盖,Atlas 已实现算力、边界两大突破。可以说,达芬奇架构满足了人工智能领域对高算力和低功耗的需求,是专为人工智能算力需求而设计的芯片架构。

Top 2 A-Tune 智能调优技术

对开发者来说,要想软件获得更好的体验,手动调优是个必不可少的过程。不过现在计算机硬件结构越来越复杂,丰富多样的应用对资源的需求也各不相同,这也导致调优过程异常复杂。


为了减少开发者在软件调优上消耗的时间,华为 A-Tune 智能调优技术,可以在程序运行中实时感知应用的运行特征,使系统主动调整底层资源;还可以通过学习引擎对特征进行建模,根据业务负载去匹配最佳资源模型,通过负反馈持续优化。


简而言之,A-Tune 技术相当于在现有系统上加装了大脑,让系统“懂”业务场景,给出最合适的资源模型,使得系统运行更加智能,达到应用性能加速的目的。


由于不必考虑硬件和系统的底层细节,即使是入门开发者,也能达到调优效果,高阶开发者更可针对具体的业务场景进行定制,实现更细粒度的调优。通过将应用 &系统性能做到最优,A-Tune 技术可以从总体上降低成本。比如,以前你可能需要购买 10 台服务器才能完成的工作,现在可能需要 7-8 台服务器就能实现。


目前,应用了 A-Tune 技术的华为服务器操作系统,其内核源于 Linux,支持华为 Kunpeng 及其它多种处理器,能够充分释放计算芯片的潜能,具有高效、稳定、安全特点,适用于数据库、大数据、云计算、人工智能等应用场景。

Top 3 S2S 自动微分

第三个技术我们来说说自动微分。


资深的深度学习开发者应该都体会过手动求解的痛苦,不仅求导过程复杂,结果还很容易出错,好在现在有深度学习框架,可以利用自动微分技术轻松解决这个复杂又关键的过程。


我们都知道,深度学习框架的自动微分根据实现原理的不同,分为以 Google 的 TensorFlow 为代表的图方法,以 Facebook 的 PyTorch 为代表的运算符重载,以及以华为自研的 MindSpore 为代表的源码转化方法(Source To Source,S2S)。



自动微分


前不久,华为刚发布了自研的全场景 AI 计算框架 MindSpore,而在 MindSpore 中的自动微分就采用了 S2S 形式。在性能和可编程性上,S2S 自动微分显著优于业界图和运算符重载方式,开发者无需重新学习一套新的表达逻辑(图逻辑),用原生 Python 就能实现 AI 算法。


同时,S2S 自动微分能够实现任意算子的微分表达和编译优化,同时实现反向算子自动生成,极大地方便模型开发,为开发者的代码带来更佳性能。在软件硬件协同方面,支持自动优化,无需像其他两种方式需要手动定制。


此外,S2S 自动微分还有着丰富的调试手段。开发者可以使用可视化接口,方便观察程序运行时的状态,同时支持动态执行,帮助开发者在程序运行时进行代码调试。


基于此项技术,华为 MindSpore 不仅可以支持端、边、云独立的和协同的统一训练和推理,同时支持华为提出的全场景。通过这款完整的软件堆栈,华为正在实现一次性算子开发、一致的开发和调试体验,以此帮助开发者实现一次性开发,应用在所有设备端、边缘及云端平滑迁移的能力。


值得一提的是,MindSpore 预计将在 2020 年 Q1 开源。

Top 4 分布式深度学习技术

通常,深度学习训练过程涉及大规模参数的网络间传递。TensorFlow 使用中心化的网络参数服务器(Parameter Server)来承担梯度的收集、平均和分发工作,对 server 节点的访问会成为瓶颈,带宽利用率低。


为了提高深度学习训练效率,华为采用了 AllReduce 算法进行梯度聚合来优化带宽,这样可以同时利用多个工作节点,分布式地、高效地训练出性能优良的神经网络模型。


同时对传输的梯度进行融合,对小于阈值大小的梯度多次传输合并为一次,提升带宽利用率;另外在通信底层采用 NVIDIA 的 NvLink、P2P 等技术来提升节点内和节点间通信带宽,降低通信时延。


一般情况下,在衡量分布式深度学习的加速性能时,主要有吞吐量和收敛时间两个重要指标。而对开发者而言,最关心的指标也是收敛时间。内置的分布式深度学习技术使得华为云 ModelArts 训练速度有了很大的提升,同时以全栈优化极大地缩短了训练收敛时间。2019 年 5 月在斯坦福大学 DAWNBench 榜单中,华为云 ModelArts 就以 2 分 43 秒的成绩获得图像识别训练世界第一。

Top 5 图神经网络

现实世界中,大量数据都能被图建模,但当前的深度学习还是以 CNN、RNN 等技术(对应图像识别、文本挖掘等领域)为主。然而,这些技术其实并不能有效地处理图结构数据,尤其是涉及到基因网络、社交网络、商品推荐等复杂应用场景。


而图神经网络(GNN)则可以解决这个问题,它借鉴了深度学习中卷积网络、循环网络和深度自编码器的思想,进行表征学习(如节点嵌入和子图嵌入),或者利用标签和属性信息,以半监督或纯无监督的方式在端到端学习框架中训练。


图数据的复杂性对现有机器学习算法提出了重大挑战,因为图数据是不规则的。每张图大小不同、节点无序,一张图中的每个节点都有不同数目的邻近节点,使得一些在图像中容易计算的重要运算(如卷积)不能再直接应用于图。


为此,华为提供了更易用的图神经网络平台。据了解,该平台在反欺诈、营销推荐、3D 视觉方面的商业潜力不可小觑。


作为华为云 ModelArts 的关键新特性之一,ModelArts 图深度学习的核心就是图神经网络技术,这也使得华为云 ModelArts“视力”优良,同时在 ModelArts 的高效神经网络训练算子的基础上,结合 GES 既有的高性能图计算框架平台能力,充分利用图引擎高并发、低延时的特点,将 GNN 的训练过程高度并行化;使用统一架构实现了非监督的大规模图嵌入(例如 DeepWalk, Node2Vec)和半监督的图卷积(例如 GCN, GraphSage)等多类 GNN 算法,降低了系统的维护成本,也降低了开发者使用 GNN 算法的门槛。

Top 6 轻量级的云化集成开发环境

有了平台,有了算法,开发者还缺少什么呢?当然是开发环境,而且还是随时随地可以 Code 的环境,华为轻量级的云化集成开发环境(Cloud IDE)正是满足开发者 Code anywhere anytime 的法门。


可以说,华为 Cloud IDE 服务定义了一种新的在线编程体验。基于开源的华为自研内核,Cloud IDE 结合代码编辑器的轻量极速、快速文件和目录访问操作和多语言高亮显示等特性和 IDE 的代码调试和代码理解的能力。


开发者可以在任意联网的浏览器中快速开始编码、测试和调试等开发活动,体验和本地 IDE 一样拥有高性能和快速的表现。同时内核还集成了华为的代码分析、检查能力和 AI 辅助编码能力。尤其 AI 辅助编码把传统 IDE 的智能联想功能提升到了智能的新高度,通过机器学习算法训练特定语言模型,用户的代码上下文作为模型输入,模型给出预测结果作为输出,让开发者编码效率和代码质量能得到海量提升。


简单地说,借助 Cloud IDE 服务,开发者可以随时随地可以进行编程,即便是身在国外度假,即便没有带工作电脑,只要有一个能访问浏览器的终端,即可随时随地解决线上生产环境紧急故障,避免临时取消休假回去救火的窘境发生。


毫不夸张地说,Cloud IDE 正在成为广大开发者云端开发的秘密武器。基于此项技术,华为云 DevCloud 作为一站式云端 DevOps 平台,能面向开发者提供更便捷的研发工具服务,让软件开发变得更加简单高效。

Top 7 可视化全流程 AI 开发工程化技术

开发者都知道,在 AI 开发过程中,需经历 AI 开发数据集准备、模型训练、参数调整等一系列步骤,而当面临调优迭代情况时,就很容易造成实验过程难以追踪、流程难以追溯等问题。


为了解决开发者从数据集管理到模型构建产生的诸多问题,全流程可视化就很有必要了。华为可视化全流程 AI 开发工程技术可实现对千万级模型、数据集以及服务等对象的管理,无需人工干预,自动生成溯源图,换句话来说,便是选择任一模型,就能找到对应的数据集、参数、模型部署在哪里,你可以一目了然地将可视化训练任务及结果进行比对。


作为搭载可视化全流程 AI 开发工程化技术的一站式 AI 开发平台,华为云 ModelArts 提供 AI 开发全生命周期管理,从原始数据、标注数据、训练作业、算法、模型、推理服务等,统统提供全流程可视化管理服务,大幅降低开发门槛、提升开发效率。


目前,华为云 ModelArts 已经适用于建筑、互联网、医疗等诸多行业场景。例如,在建筑业,ModelArts 能够赋能质检、巡查等场景,如产品缺陷检测、合规检测、异常识别、安全穿戴等;在互联网行业,ModelArts 的智能数据标注技术及高性能大规模模型训练,大幅度提高模型开发效率、缩短模型开发周期(从月到天)。



ModelArts 全流程可视化管理

Top 8 多模分布式数据库

随着数字化转型的深入,企业亟待解决的是数字化能力的提升。而企业如何提升数字化能力,或许就在于数据挖掘与数据处理的能力是否强劲。当大企业的数据存储需求日益增长,单机数据库无法满足大企业的业务需求时,分布式数据库便成了行业首选,为开发者提供以 100%兼容开源接口、多模型一致运维,具备高性能、低成本、高可靠、高安全、易管理的特点。


华为云 Taurus 作为新一代企业级分布式数据库,在解决海量存储与极高并发性能场景上有着极具竞争力的技术优势。而作为业界超强性能的分布式多模 NoSQL 数据库,华为云 GeminiDB 则具备高性价比的优势,为大企业级业务保驾护航。

Top 9 智能化的软件开发技术

经过几十年的软件开发,人们对软件质量与效率需求正在不断提升。高质量与高效率的开发要求之下,开发相关的数据(例如:代码、文档、检视意见、测试用例、问题单等等)便显的尤为重要。


如何才能获得数据价值?工作重心便是通过利用机器学习技术对这些数据进行挖掘、清洗,并进一步将其与语法树、数据流、控制流等基本分析技术,以及符号执行、抽象解释等高级软件分析技术,甚至是自然语言技术相结合,并且还能在这个过程中将其中包含的各种开发知识复用起来。这样就不简单了。


经过几十年的软件开发实践,华为积累了与开发相关的大量数据,通过各种具体工具的支持,华为智能化的软件开发技术可以帮助开发者降低开发过程中低价值、重复性的劳动,例如自动发现常见的编码错误,对部分错误给出修复好代码,自动对多人编码过程产生的冲突进行消解,在某些场景下,甚至自动生成一些高价值的代码,帮助定位运行错误等等。


基于此,华为云 DevCloud 可以让开发团队随时随地在云端进行项目管理、代码托管、代码检查、编译构建、测试、部署、发布等,大幅提升了个人和团队的交付能力和效率,提升自动化运维质量,帮助软件企业提高竞争力。

Top 10 LiteOS IoT Stack 技术

不得不说,物联网的出现将以往人与物、物与物的连接方式重构。在 5G 浪潮的推动下,万物互联的世界将加速到来。但从目前的整体进程看,物联网产业仍处于成长阶段,技术突破、行业融合、规模应用等方面都还存在较大的发展空间。


面对物联网带来的巨大发展机遇和挑战,Huawei LiteOS IoT Stack 技术应运而生。



华为 LiteOS IoT 方案


该技术遵循 BSD-3 开源许可协议,具备轻量级、低功耗、端云协同、即插即用、组件丰富、快速开发等关键能力,能够基于物联网领域业务特征打造领域性技术栈,为开发者提供“一站式”完整软件平台,有效降低开发者的开发成本和难度、缩短开发周期。


基于 Huawei LiteOS IoT Stack 技术,华为打造了 OceanConnect IoT 平台。简单来说,OceanConnect 是华为云核心网推出的以 IoT 联接管理平台为核心的 IoT 生态圈。基于统一的 IoT 联接管理平台,通过开放 API 和系列化 Agent,它能够实现与上下游产品能力的无缝联接,为客户提供端到端的高价值行业应用。目前,LiteOS IoT Stack 通过开放生态快速打造了行业标杆,在智慧消防、智慧水务、智慧物流、智慧园区等场景都已有成功实践的案例。

结语

AI、5G、云计算、大数据等技术都在快速发展,华为也一直未停下创新的步伐。在为千行百业打造技术底座这件事上,华为无疑是最用心的企业之一。现在,基于这 10 大技术,华为势必能为开发者以及各行业构建出更强大、高效的技术产品与解决方案矩阵,为万物互联的智能世界持续赋能。


9 月 18-20 日,华为面向 ICT 产业的全球年度旗舰级大会——2019华为全联接大会(HUAWEI CONNECT 2019)在上海世博中心开幕。9 月 20 日,以开发者为主角的 Keynote 演讲及百场 Session,都提到了上述华为面向开发者的十大技术,技术大咖们全方位的解读,让现场开发者们更多的了解到了华为关于前沿技术的最新理论与实践。


2019-09-24 17:362492

评论

发布
暂无评论
发现更多内容

区块链技术为版权保护与运营提供科技支撑

CECBC

【译】JavaScript 代码整洁之道-注释篇

KooFE

JavaScript 大前端 代码注释 6月日更 整洁代码

【Vue2.x 源码学习】第四篇 - 对象的深层劫持

Brave

源码 vue2 6月日更

架构实战营模块5作业

En wei

架构实战营

从天而降的AI“青云梯”,开发者们准备好了吗?

白洞计划

区块链作为“信任的机器”,将改变社会价值的传递方式

CECBC

网络攻防学习笔记 Day35

穿过生命散发芬芳

网络攻防 6月日更

python——格式化输入输出与截取字符串

在即

6月日更

Nacos-- docker搭建

是老郭啊

Docker nacos

Kubernetes手记(1)- Kubernetes概述

雪雷

k8s 6月日更

理解【Apache Zookeeper】

awen

zookeeper

拍乐云运维专家受邀QECon大会,畅谈多云环境伸缩实践

拍乐云Pano

【得物技术】JS资源分包

得物技术

CSS 大前端 js 版本 页面

聊聊MySQL全局锁

架构精进之路

MySQL 6月日更

区块链—重构新商业体系和全新商业生态环境

CECBC

机器通用运行框架抽象

型火🔥

架构 微服务 抽象 中间件 机器

“微博评论”高性能高可用计算架构

白发青年

架构实战营

《原则》(四)

Changing Lin

博睿数据重塑APM,引领IT运维新标杆

博睿数据

博睿数据 数据链DNA 服务可达

全栈程序员这个月写了啥代码?

程序员鱼皮

Java JavaScript 大前端 后端 全栈

极光开发者周刊【No.0604】

极光JIGUANG

程序员 开发者 IT行业

浅析「扣减库存」的方案设计

悟空聊架构

分布式 秒杀 电商 6月日更 库存

算法如何促成亿级别扶持曝光视频?爱奇艺Budget Pacing智能扶植系统实践

爱奇艺技术产品团队

架构 推荐 算法 广告 扶植

Nacos--简介

是老郭啊

微服务 nacos 服务注册与发现

模块五- 课后作业

Presley

架构实战营 #架构实战营

MySQL基础之二:SQL语句介绍与使用

打工人!

MySQL sql查询 6月日更

你有没有 996 ?你要不要 955 ?

escray

学习 极客时间 朱赟的技术管理课 6月日更

【立刻报名】加速开发 Perforce on Tour China 2021-龙智

龙智—DevSecOps解决方案

深入理解iOS图文混排原理并自定义图文控件

Geen练

图文混排 iOS Developer iOS 知识体系

【环球网】博睿数据CEO冯云彪:做好生态链企业的适配工作

博睿数据

博睿数据 博睿数据数据链DNA 生态链

数字中国的视觉进阶:ISP的来处与归途

脑极体

硬核盘点,华为面向开发者的十大技术_AI&大模型_荼白_InfoQ精选文章