摘要:在异构计算架构CANN的助力下,AI预测性能达到现有产品的1.5+倍,可预测规模较传统方法提升10000+倍,为光伏材料、新能源电池、半导体材料研究带来巨大的商业应用价值。

本文分享自华为云社区《性能达1.5+倍!昇腾AI助力分子动力学模拟研究》,作者:昇腾CANN。

研究背景

分子动力学是一套分子模拟方法,主要依靠牛顿力学来模拟分子体系运动,是研究微观世界的有效手段。但传统研究手段的时间复杂度较高,仅限于研究数千量级原子的小型系统,在应用中存在普遍局限性。而深势科技提出的DeePMD-kit可将AI技术成功应用于分子动力学模拟,并实现了上亿原子体系的模拟,目前该项技术已经发展成为端到端的开源解决方案,以科学智能(AI for Science)为分子动力学的行业应用带来了更多可能。

而昇腾AI凭借超强算力及完整软件栈配套,为科学智能提供了天然土壤,通过昇腾AI硬件及异构计算架构CANN,借助软硬件协同能力充分释放硬件算力,为DeePMD的大规模分子动力学模拟提供了高性能解决方案。

基于CANN自定义DeePMD高性能算子

对诸如DeePMD之类的神经网络模型进行加速的关键之一是对网络中的算子进行深度优化,从而发挥出硬件的澎湃算力,而作为专门面向AI场景的异构计算架构,CANN正是搭起了上层深度学习框架和底层AI硬件的桥梁。

基于CANN的算子编程接口,开发人员在DeePMD网络中开发相关的自定义算子,其中涉及到数据排序、读取与存储等离线操作,也涉及矩阵、标量的计算,这些自定义算子不但对精度有较高的要求,而且也很大程度上决定了模型整体的性能。

CANN能够高效协同昇腾不同异构单元自定义高性能算子,充分释放AI Core、AI CPU和Vector Core的异构算力。比如将离散的距离计算和排序部署在AI CPU上,将可以并行的矩阵、标量的计算部分部署在AI Core上,以发挥出每个计算单元的能力,充分发挥硬件计算性能。

高效协同昇腾不同异构单元自定义高性能算子

基于CANN的DeePMD融合规则及网络优化

算子融合也是网络性能优化重点之一,也是业界常用手段,在DeePMD原生实现中,算子融合就作为性能工程的主要手段之一。

而在DeePMD网络性能优化中,算子开发人员进一步结合网络特点,借助CANN设计新的融合规则,包括PAD算子支持动静合一、Mul支持NZ+ND和ND+NZ、MatMul + Add + TanhGrad支持Buffer融合等,这些融合在整网性能提升中起到了关键作用。同时借助CANN的智能调优工具AOE,自动化完成子图调优、算子调优,以及TransData消除等一系列优化,极大提升了模型调优效率。

DeePMD网络融合示例

此外项目优化了整网混合精度推理流程,将半精度和单精度混合使用,有效减少内存占用,充分释放硬件算力,进一步加速模型执行,在确保分子模拟精度的前提下带来最大性能收益。在不同场景对分子模拟的物理性质与仿真结果对比测试中,以铜拉伸应力应变模拟实验为例可以看到,昇腾AI基础软硬件平台的实验结果已经非常近似实际数据。

昇腾AI基础软硬件平台上铜的拉伸应力应变模拟结果

昇腾AI的整体优化解决方案使DeePMD-kit工具在分子动力学模拟计算上取得1.5+倍现有产品的性能提升成果,助力分子动力学服务成功商用。未来,昇腾AI将继续以超强算力和软硬协同能力助力科学计算进入科学智能新阶段,携手更多伙伴凝心聚力,共同向上发展,构筑科学智能领先格局,全面迈进数智时代。

点击关注,第一时间了解华为云新鲜技术~

性能达1.5+倍!昇腾AI助力分子动力学模拟研究的更多相关文章

  1. 【华为昇腾】 序言:从昇腾AI软硬件平台聊起

    2021年是很值得纪念的一年,从上半年开始跟随导师编写有关华为昇腾软件栈CANN的教材,一年的时间反复迭代 终于快要出版了. 这一系列博客可以视作我从编者的角度,重新梳理的全书思路.明年入职商汤之后要 ...

  2. 昇腾AI新技能,还能预防猪生病?

    摘要:日前,由华为与武汉伯生科技基于昇腾AI合作研发的"思符(SiFold)蛋白质结构预测平台"正式推出,并成功应用于国药集团动物保健股份有限公司的猪圆环病毒疫苗研发中. 本文分享 ...

  3. 昇腾AI计算,618冲动消费也不怕

    摘要:近期大热的图像识别处理核赔技术,可应对剁手党们冲动购物之后汹涌而至的退货场景.那么,这背后运用的技术原理是怎样? AI计算平台又能否重构企业业务引擎呢? 随着AI技术的挖掘与应用落地,也为每一年 ...

  4. 用昇腾AI护航“井下安全”

    摘要:基于CANN(异构计算架构)打造的"智能矿山安全生产管理平台",能够更便捷和更高效地服务于更多矿山安全生产建设. 本文分享自华为云社区<华为携手云话科技助力矿山智能化, ...

  5. 【读一本书】《昇腾AI处理器架构与编程》--神经网络基础知识(2)

    1 卷积神经网络:输入层 之前提到多层感知机的参数太多,导致训练耗时长并且对图像处理也不具有优势,因此大神们 就提出了多层神经网络,其中最经典的是卷积神经网络(Convolution Neural N ...

  6. 昇腾AI 软硬件全栈平台

    昇腾AI 软硬件全栈平台

  7. 我是如何将一个老系统的kafka消费者服务的性能提升近百倍的

    ☞☞☞ 我是如何将一个老系统的kafka消费者服务的性能提升近百倍的 ☜☜☜ ○○○○○○○○○○○○○○○ 大家好,又见面了~ kafka作为一种高吞吐量的分布式发布订阅消息系统,在业务系统中被广泛 ...

  8. 又一重要进展发布!OpenMMLab算法仓支持昇腾AI训练加速

    摘要:上海人工智能实验室的浦视开源算法体系(OpenMMLab)团队基于昇腾AI发布了MMDeploy 0.10.0版本,该版本已支持OpenMMLab算法仓库在昇腾异构计算架构CANN上的推理部署. ...

  9. 腾讯毛华:智能交互,AI助力下的新生态

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 演讲人:毛华 腾讯云语音云总经理 背景:5月23-24日,以"焕启"为主题的腾讯"云+未来"峰会在广 ...

  10. 修改一行SQL代码 性能提升了N倍

    在PostgreSQL中修改了一行不明显的代码,把(ANY(ARRAY[...]) 改成 ANY(VALUES(...))),结果查询时间从20s变为0.2s.最初我们学习使用EXPLAN ANALY ...

随机推荐

  1. Vue之事件冒泡

    1. 原生事件冒泡 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  2. 采药(lgP1048)

    emmm 01 背包模板... 设 f[i] 表示背包容积为 i 时所得的最大价值. 则状态转移方程为 f[j] = f[j - w[i]] + c[i] . #include<bits/std ...

  3. 为什么idea建议使用“+”拼接字符串

    前言 各位小伙伴在字符串拼接时应该都见过下面这种提示: 内容翻译:报告StringBuffer.StringBuilder或StringJoiner的任何用法,这些用法可以用单个java.lang.S ...

  4. python内置模块——logging

    内置模块-logging loging模块是python提供的内置模块,用来做日志处理. 日志等级: 等级 释义 级别数值 CRITICAL(fatal) 致命错误,程序根本跑不起来 50 ERROR ...

  5. 【Javaweb】做一个房产信息管理系统一

    2019级<JAVA语言程序设计>     上机考试试题                                  2020.12.20     考试要求   一.本试卷为2019 ...

  6. MarkdownPad 文件访问权限受限导致软件打开后不久闪退解决方法

    近几天发现MarkdownPad有一些小问题,打开时会弹出以下报错信息,告诉你打开文件的权限不够 解决方法如下: 1.复制报错信息中的文件路径"Access to the path 'C:\ ...

  7. [ARC144E]GCD of Path Weights

    Problem Statement You are given a directed graph $G$ with $N$ vertices and $M$ edges. The vertices a ...

  8. OkHttp3发送http请求

    导入依赖 <!-- https://mvnrepository.com/artifact/com.squareup.okhttp3/okhttp --> <dependency> ...

  9. TensorFlow C++ 初始化 Tensor 内存 到GPU 内存

    最近使用TensorFlow C++版本实现神经网络的部署,我通过GPU 处理得到网络的输入值,因此输入值在GPU内存上保存, TF 输入tensor 的调用语句为 Tensor inputTenso ...

  10. C++ Qt开发:Charts绘图组件概述

    Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QCharts ...