2026-01-27 11:40:58
11
由 AK Roy 和 Jianying Lang 发表于 2023 年 11 月 22 日 Amazon EC2、人工智能 和 客户解决方案 永久链接
重点摘要 Amazon EC2 DL2q 实例现已推出,是一种高性价比的深度学习工作负载部署解决方案。 DL2q 实例配备八个 Qualcomm AI 100 加速器,具有极高的处理能力,支持多种 AI 应用,包括生成式 AI 和传统的自然语言处理应用。
生效的 Amazon Elastic Compute Cloud (Amazon EC2) DL2q 实例,搭载 Qualcomm AI 100 标准加速器,可以以成本效益高的方式在云中部署深度学习DL工作负载。这些实例是首次将 Qualcomm 的人工智能AI技术引入云计算。客户可以利用 DL2q 实例快速开发和验证将部署在 Qualcomm 设备上的 DL 工作负载的性能和准确性。
每个 DL2q 实例都配有八个 Qualcomm AI 100 标准加速器,具备超过 28 PetaOps 的 Int8 推理性能及 14 PetaFlops 的 FP16 推理性能,支持常见的生成式 AI 应用,如内容生成、文本摘要以及虚拟助手,同时也可以用于经典的自然语言处理和计算机视觉 AI 应用。
Cloud AI100 加速器系统为特定用途设计的可扩展多核架构,支持从数据中心到边缘的一系列深度学习用例。该 SoC 采用了行业领先的 126 MB 在芯片 SRAM 容量,支持广泛的模型和用例。
模型分类模型数量示例自然语言处理157BERT BART FasterTransformer等生成式 AI 自然语言处理40LLaMA GPT OPT等生成式 AI 图像3稳定扩散 v15 和 v21计算机视觉 图像分类45ViT ResNet等计算机视觉 物体检测23YOLO v2 v3 v4等汽车网络53感知和 LIDAR 行人、车道和交通灯检测总计gt 300DL2q 加速器的大容量 SRAM 使得高效实现先进的性能技术,如 MX6 微指数精度和 MX9 微指数精度成为可能。用户可通过以下策略来最大化性价比:
使用 MX6 微指数精度在加速器 DDR 内存中存储权重,以最大化内存容量和带宽的利用。使用 FP16 计算以实现所需的精准度,同时利用芯片的 SRAM 和额外的 TOPs,实现低延迟的高性能计算。采用优化的批处理策略,利用大容量的 SRAM 充分重用权重。DL2q 实例配备 Qualcomm AI 栈,为开发者提供一致的体验。此工具链使用户能在三个步骤中快速引入已训练的模型,编译并优化模型以适配实例的能力,并将编译的模型部署用于生产推理用途。
要了解更多关于调优模型性能的信息,请查看 Cloud AI 100 关键性能参数的文档。
在本示例中,您将通过使用预构建的 DL2q AMI,将预训练的 BERT 模型 从 Hugging Face 部署到 EC2 DL2q 实例,分为四个步骤。
您可以选择在实例上使用预构建的 Qualcomm DLAMI,或从 Amazon Linux2 AMI 开始,自行构建含有 Cloud AI 100 平台和应用 SDK 的 DL2q AMI。
安装 Python 38: bash sudo amazonlinuxextras install python38
设置 Python 38 虚拟环境: bash python38 m venv /home/ec2user/userA/pyenv
激活虚拟环境: bash source /home/ec2user/userA/pyenv/bin/activate
安装必要的包,详见 requirementstxt 文档: bash pip3 install r requirementstxt
导入所需库: python import transformers from transformers import AutoTokenizer AutoModelForMaskedLM import sys import qaic import os import torch import onnx from onnxsim import simplify import argparse import numpy as np
导入并标记模型: python modelcard = bertbasecased model = AutoModelForMaskedLMfrompretrained(modelcard) tokenizer = AutoTokenizerfrompretrained(modelcard)
定义样本输入并提取 inputIds 和 attentionMask: python sentence = The dog [MASK] on the mat encodings = tokenizer(sentence maxlength=128 truncation=True padding=maxlength returntensors=pt) inputIds = encodings[inputids] attentionMask = encodings[attentionmask]
转换模型为 ONNX 格式: python dynamicdims = {0 batch 1 sequence} dynamicaxes = { inputids dynamicdims attentionmask dynamicdims logits dynamicdims } inputnames = [inputids attentionmask] inputList = [inputIds attentionMask]
torchonnxexport(model args=tuple(inputList) f=f{genmodelspath}/{modelbasename}onnx verbose=False inputnames=inputnames outputnames=[logits] dynamicaxes=dynamicaxes opsetversion=11 )
使用 qaicexec 命令行接口CLI编译工具编译模型。输入为步骤 2 中生成的 ONNX 文件。编译器将生成一个二进制文件QPC,Qualcomm 程序容器:
bash/opt/qtiaic/exec/qaicexec m=bertbasecased/generatedModels/bertbasecasedfixoutofrangefp16onnx aicnumcores=4 converttofp16 onnxdefinesymbol=batch1 onnxdefinesymbol=sequence128 aicbinarydir=bertbasecased/generatedModels/bertbasecasedfixoutofrangefp16qpc aichw aichwversion=20 compileonly
创建会话以在 DL2q 实例中运行推理。利用 Qualcomm qaic Python 库进行推理:
使用 Session API 创建会话实例,加载网络到设备上: python qpcPath = bertbasecased/generatedModels/bertbasecasedfixoutofrangefp16qpc bertsess = qaicSession(modelpath= qpcPath /programqpcbin numactivations=1) bertsesssetup()
准备输入字典并运行推理: python inputdict = {inputids inputIdsnumpy()astype(inputtype) attentionmask attentionMasknumpy()astype(attntype)} output = bertsessrun(inputdict)
处理输出数据: python tokenlogits = npfrombuffer(output[logits] dtype=outputtype)reshape(outputshape)
解码输出: python masktokenlogits = torchfromnumpy(tokenlogits[0 masktokenindex ])unsqueeze(0) top5results = torchtopk(masktokenlogits 5 dim=1)
现在,您可以在美国西部俄勒冈州和欧洲法兰克福AWS 区域启动 DL2q 实例,支持按需计费、预留实例和抢占实例。与 Amazon EC2 一样,您只需为实际使用的资源付费。更多信息请参见 Amazon EC2 定价。
DL2q 实例支持使用 AWS 深度学习 AMIs (DLAMI),并通过 Amazon SageMaker、Amazon Elastic Kubernetes Service (Amazon EKS)、Amazon Elastic Container Service (Amazon ECS) 和 AWS ParallelCluster 提供的管理服务获得容器镜像。

要了解更多信息,请访问 Amazon EC2 DL2q 实例 页面,或通过 AWS rePost for EC2 或常用的 AWS 支持渠道提供反馈。
AK Roy 是 Qualcomm 云及数据中心 AI 产品与解决方案的产品管理总监,拥有 20 多年产品战略与开发经验,专注于为广泛的用例提供最佳性能和性价比的 AI 推理解决方案。
日本加速器下载Jianying Lang 是 AWS 全球专家组织WWSO的首席解决方案架构师,拥有 15 年 HPC 和 AI 领域的工作经验,专注于帮助客户优化和扩展在加速计算实例上的 AI/ML 工作负载。她热衷于将 HPC 和 AI 领域的技术结合,且拥有科罗拉多大学博尔德分校的计算物理博士学位。