4 Python机器学习性能优化Python机器学习性能优化 以BERT服务为例例,从1到1000 刘欣 ⽬目录 CONTENTS 1. 优化的哲学 2. 了解你的资源 3. 定位性能瓶颈 4. 动⼿优化 1. 优化的哲学 "There ain't no such thing as a free lunch" Ahmdal’s Law • 系统整体的优化,取决于热点部分的占⽐比和该部分的加速程度 No Free Free Lunch • 定位热点 & 热点加速 • 对于项⽬目开发周期: 1. 先做出效果 2. 确定整体pipeline 3. 再考虑优化 • 对于⼈人⼯工智能项⽬目:迭代周期更更⻓长,更更是如此 以BERT服务为例 • BERT: TODO: ⼀一句句话解释 • 横扫多项NLP任务的SOTA榜 • 惊⼈人的3亿参数 以BERT服务为例 • Self Attention机制 's=Happy birthday to [MASK].' [“you"] 以BERT服务为例 • 我们现在上线了了这样⼀一个服务,每秒钟只能处理理10个请求 • Q: ⼤大家⼀一开始如何着⼿手优化 • Profile before Optimizing • 建⽴立闭环 2 了解你的资源 cpu/内存/io/gpu GPU为什么“快”? 计算⼒对⽐ • GFLOPS/s0 码力 | 38 页 | 2.25 MB | 1 年前3
PyConChina2022-上海-在浏览器中运行 Python-韩骏在浏览器中运行 Python 主讲人: 韩骏 – Code Runner 作者 自我介绍 • 高级软件工程师 @ 微软开发平台事业部 • 《Visual Studio Code 权威指南》作者 • 20 多款 VS Code 插件(比如 Code Runner) • “玩转VS Code”知乎专栏 & 微信公众号 • VS Code 中文社区创始人 • https://github.com/formulahendry/955 https://github.com/microsoft/vscode-python-web-wasm One More Thing! Debug Python in browser? 在浏览器中调试 Python! https://code.visualstudio.com/updates/v1_74#_python-execution-in-the-web • Setting breakpoints0 码力 | 13 页 | 1.79 MB | 1 年前3
PyConChina2022-杭州-ARM芯片的Python+AI算力优化-朱宏林ARM 芯片的 Python + AI 算力优化 主讲人: 朱宏林 – 阿里云程序语言与编译器团队 简介 • 当今开发者们大量使用 Python 语言编写的 AI 程序。过去这些程序总跑在 GPU 或者 x86 架构的 CPU 上。然而综合考虑到功耗、成本、性能等因素,云厂商们开始建设 ARM 架构的服务平台,如 何整合 Python + AI 的相关软件并使其在该平台上发挥最高的性能成为了工程师们关注的焦点。 用 ARM 架构新提供的矩阵扩展对 bf16 类型的 矩阵乘法计算进行优化,该优化将纯矩阵乘法的运算速度提升 3 倍以上,对深度学习推理任务性能 提升明显。目前,该成果已经被集成进 OpenBLAS 和 PyTorch 中。 • 本次演讲,将向大家介绍我们在倚天 710 ARM 芯片上开展的 Python + AI 优化工作,以及在 ARM 云平台上部署 Python + AI 任务的最佳实践。 • GEMM 通过优化内存局部性和向量指令,比朴素实现快 10 倍以上 GEMM • 优化 GEMM • 内存布局:矩阵分块;重排 • 向量化指令:AVX、NEON V0 V1 ✕ ✕ ✕ ✕ V2 GEMM 例子 • 优化 GEMM • 内存布局:矩阵分块;重排 • 向量化指令:AVX、NEON 原始算法 展开4x1 向量化 GEMM 例子 • 优化 GEMM • 内存布局:矩阵分块;重排0 码力 | 24 页 | 4.00 MB | 1 年前3
PyConChina2022-北京-用Python给Kubernetes写个自定义控制器-张晋涛用 Python 给 Kubernetes 写个控制器 主讲人: 张晋涛 个人介绍 Apache APISIX PMC Kubernetes Ingress NGINX maintainer Microsoft MVP 『 K8S 生态周报』发起人和维护者 GitHub:tao12345666333 Mail: zhangjintao@apache.org Agenda Agenda Kubernetes 中请求处理流程 什么是准入控制器 用 Python 实现准入控制器 与其他方案对比 Kubernetes 架构 kube-apiserver Kubernetes 集群的核心组件 处理集群内外的所有请求 Kubernetes 请求处理流程 API Handler 匹配处理链路( /apis ) 认证 / 授权 Mutating Validating Admission :可进行验证操作 etcd :持久化 什么是准入控制器 在 Mutating Admission 或 Validating Admission 执行相 关操作的代码逻辑或者组件 (静态)准入控制器: Kubernetes 代码中携带,不可动 态调整的 动态准入控制器:利用 Kubernetes 提供的 MutatingAdmissionWebhook0 码力 | 17 页 | 1.76 MB | 1 年前3
07 FPGA 助力Python加速计算 陈志勇工程师开发嵌入式产品的时候哪些地方可能会遇到性能瓶颈? Ø 传统的计算平台:基于通用处理器的架构,Intel x86 Ø 新的嵌入式计算平台:MCU,DSP,FPGA,GPU、ASSP等 Ø 嵌入式计算: Ø 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统对功能、可靠 性、成本、体积、功耗有严格要求的专用计算机系统,它一般由嵌入式微处理器、外围硬件设备、 嵌入 式操作系统以及用户的应用程序等四个部分组成。 信号处理:数据可以并行处理 Ø 主要实现功能: Ø 组合逻辑 -》计数器 -》算法实现 -》SOC 设计 Ø 新一代FPGA器件:高速接口、ARM SOC、多个 IP 硬核、大容量存储器等 Ø 新一代PCIE加速卡:人工智能、金融计算、数据库、高性能计算、视频转码等。 Ø 主要应用: Ø 通信设备:路由器、交换机、5G 设备 Ø 工业市场:工业伺服、控制器、安防相机、机器视觉、超声设备等。 Ø 消费类和广播设备:电视台演播设备、电视墙 消费类和广播设备:电视台演播设备、电视墙 Ø 测量测试仪器:示波器、信号发生器、逻辑分析仪等 FPGA 介绍 5 串行计算和并行计算 1 GHz 126 clock cycles = 8 MSPS / MAC unit 传统的基于 DSP 计算 - Serial 基于 FPGA 计算 - Parallelism 250 MHz 1 clock cycle = 250 MSPS0 码力 | 34 页 | 6.89 MB | 1 年前3
FPGA助力Python加速计算 陈志勇 工程师开发嵌入式产品的时候哪些地方可能会遇到性能瓶颈? ➢ 传统的计算平台:基于通用处理器的架构,Intel x86 ➢ 新的嵌入式计算平台:MCU,DSP,FPGA,GPU、ASSP等 ➢ 嵌入式计算: ➢ 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统对功能、可靠 性、成本、体积、功耗有严格要求的专用计算机系统,它一般由嵌入式微处理器、外围硬件设备、 嵌入 式操作系统以及用户的应用程序等四个部分组成。 信号处理:数据可以并行处理 ➢ 主要实现功能: ➢ 组合逻辑 -》计数器 -》算法实现 -》SOC 设计 ➢ 新一代FPGA器件:高速接口、ARM SOC、多个 IP 硬核、大容量存储器等 ➢ 新一代PCIE加速卡:人工智能、金融计算、数据库、高性能计算、视频转码等。 ➢ 主要应用: ➢ 通信设备:路由器、交换机、5G 设备 ➢ 工业市场:工业伺服、控制器、安防相机、机器视觉、超声设备等。 ➢ 消费类和广播设备:电视台演播设备、电视墙 消费类和广播设备:电视台演播设备、电视墙 ➢ 测量测试仪器:示波器、信号发生器、逻辑分析仪等 FPGA 介绍 5 串行计算和并行计算 1 GHz 126 clock cycles = 8 MSPS / MAC unit 传统的基于 DSP 计算 - Serial 基于 FPGA 计算 - Parallelism 250 MHz 1 clock cycle = 250 MSPS 6000 码力 | 34 页 | 4.19 MB | 1 年前3
2_FPGA助力Python加速计算_陈志勇工程师开发嵌入式产品的时候哪些地方可能会遇到性能瓶颈? Ø 传统的计算平台:基于通用处理器的架构,Intel x86 Ø 新的嵌入式计算平台:MCU,DSP,FPGA,GPU、ASSP等 Ø 嵌入式计算: Ø 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统对功能、可靠 性、成本、体积、功耗有严格要求的专用计算机系统,它一般由嵌入式微处理器、外围硬件设备、 嵌入 式操作系统以及用户的应用程序等四个部分组成。 信号处理:数据可以并行处理 Ø 主要实现功能: Ø 组合逻辑 -》计数器 -》算法实现 -》SOC 设计 Ø 新一代FPGA器件:高速接口、ARM SOC、多个 IP 硬核、大容量存储器等 Ø 新一代PCIE加速卡:人工智能、金融计算、数据库、高性能计算、视频转码等。 Ø 主要应用: Ø 通信设备:路由器、交换机、5G 设备 Ø 工业市场:工业伺服、控制器、安防相机、机器视觉、超声设备等。 Ø 消费类和广播设备:电视台演播设备、电视墙 消费类和广播设备:电视台演播设备、电视墙 Ø 测量测试仪器:示波器、信号发生器、逻辑分析仪等 FPGA 介绍 5 串行计算和并行计算 1 GHz 126 clock cycles = 8 MSPS / MAC unit 传统的基于 DSP 计算 - Serial 基于 FPGA 计算 - Parallelism 250 MHz 1 clock cycle = 250 MSPS 6000 码力 | 33 页 | 8.99 MB | 1 年前3
Python3 基础教程 - 廖雪峰.................................................................................... 12 Python 解释器 ................................................................................................... ....................................................................................... 18 使用文本编辑器 ................................................................................................... .......................................................................................... 111 迭代器 ...................................................................................................0 码力 | 531 页 | 5.15 MB | 1 年前3
8 4 Deep Learning with Python 费良宏 7 年 Windows/ Internet/ Cloud @ 3 年 iOS/ Mobile App @ 1.5 年 Cloud Computing @ 技术关注: 云计算:架构、大数据、计算优化 机器学习:深度学习、自然语言处理 语言:Python、Go、Scala、Lua Web:爬虫 2016的目标:Web爬虫+深度学习+自然语言处理 = ? Microso� Apple AWS 像素、主题、部分、轮廓、边缘等等 视频– 图像帧、每帧的像素、每一帧的deltas 值等等 文本– 字符、词、从句、句子等等 语音– 音频、频段、波长、调制等等 ... 深度学习的优势 特性自动推导和预期结果的优化调整 可变的自动学习的健壮性 重用性-相同的神经网络的方法可用于许多应用和数据 类型 通过利用GPU的大规模并行计算-可扩展的大容量数据 深度学习的开发框架 Torch (NYU,2002), Facebook 深度学习的应用环境- THEANO 我的第一个Theano 程序 深度学习的应用环境- THEANO GPU vs. CPU TENSORFLOW 的新进展 分布式的深度学习框架 TENSORFLOW 的新进展 分布式的深度学习框架 工程化思维 VS. 科学化思维 THINK GREAT THOUGHTS AND YOU WILL BE GREAT. 心怀伟大,你将会变得伟大!0 码力 | 49 页 | 9.06 MB | 1 年前3
Python 标准库参考指南 3.13 bool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 4.6 迭代器类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 4.6 字典视图对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 i 4.12 上下文管理器类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4.13 类型注解的类型 . . . . . . . . . . . . . . . . . 173 7.2 codecs --- 编解码器注册和相关基类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 7.2.1 编解码器基类 . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 2246 页 | 11.74 MB | 9 月前3
共 185 条
- 1
- 2
- 3
- 4
- 5
- 6
- 19













