FPGA助力Python加速计算 陈志勇FPGA 助力 Python 加速计算 陈志勇 高级技术市场经理 安富利电子科技 2019年10月19日,北京 2 ➢ Python 语言:易学易读易用、可扩展性、可移植性等。 ➢ Python 开发工具:库丰富、效率高、调试方便 ➢ Python 的应用: 人工智能、数据分析等 ➢ Python 的生态环境:软件平台、硬件平台、方案合作伙伴等 ➢ 用 Python 如何开发嵌入式产品?如何实现 工程师开发嵌入式产品的时候哪些地方可能会遇到性能瓶颈? ➢ 传统的计算平台:基于通用处理器的架构,Intel x86 ➢ 新的嵌入式计算平台:MCU,DSP,FPGA,GPU、ASSP等 ➢ 嵌入式计算: ➢ 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统对功能、可靠 性、成本、体积、功耗有严格要求的专用计算机系统,它一般由嵌入式微处理器、外围硬件设备、 嵌入 式操作系统以及用户的应用程序等四个部分组成。 式操作系统以及用户的应用程序等四个部分组成。 ➢ 嵌入式系统促使计算机的形态和性能更加小型化,多功能,低功耗. ➢ 加速计算: ➢ 如何提高计算效率,提高计算性能 ➢ 加速计算框架的考虑 ➢ 加速计算平台的考虑 ➢ FPGA 是如何作为加速平台的?在边缘和云端 Python 与嵌入式计算 4 ➢ FPGA(Field Programmable Gate Array)是在PAL、GAL等可编程器件的基础上进一步发展的0 码力 | 34 页 | 4.19 MB | 1 年前3
07 FPGA 助力Python加速计算 陈志勇FPGA 助力 Python 加速计算 陈志勇 高级技术市场经理 安富利电子科技 2019年10月20日,深圳 2 Ø Python 语言:易学易读易用、可扩展性、可移植性等。 Ø Python 开发工具:库丰富、效率高、调试方便 Ø Python 的应用: 人工智能、数据分析等 Ø Python 的生态环境:软件平台、硬件平台、方案合作伙伴 等 Ø 用 Python 如何开发嵌入式产品?如何实现 工程师开发嵌入式产品的时候哪些地方可能会遇到性能瓶颈? Ø 传统的计算平台:基于通用处理器的架构,Intel x86 Ø 新的嵌入式计算平台:MCU,DSP,FPGA,GPU、ASSP等 Ø 嵌入式计算: Ø 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统对功能、可靠 性、成本、体积、功耗有严格要求的专用计算机系统,它一般由嵌入式微处理器、外围硬件设备、 嵌入 式操作系统以及用户的应用程序等四个部分组成。 式操作系统以及用户的应用程序等四个部分组成。 Ø 嵌入式系统促使计算机的形态和性能更加小型化,多功能,低功耗. Ø 加速计算: Ø 如何提高计算效率,提高计算性能 Ø 加速计算框架的考虑 Ø 加速计算平台的考虑 Ø FPGA 是如何作为加速平台的?在边缘和云端 Python 与嵌入式计算 4 Ø FPGA(Field Programmable Gate Array)是在PAL、GAL等可编程器件的基础上进一步发展的0 码力 | 34 页 | 6.89 MB | 1 年前3
2_FPGA助力Python加速计算_陈志勇FPGA 助力 Python 加速计算 陈志勇 高级技术市场经理 安富利电子科技 2019年9月21日, 上海 2 Ø Python 语言:易学易读易用、可扩展性、可移植性等。 Ø Python 开发工具:库丰富、效率高、调试方便 Ø Python 的应用: 人工智能、数据分析等 Ø Python 的生态环境:软件平台、硬件平台、方案合作伙伴等 Ø 用 Python 如何开发嵌入式产品?如何实现 工程师开发嵌入式产品的时候哪些地方可能会遇到性能瓶颈? Ø 传统的计算平台:基于通用处理器的架构,Intel x86 Ø 新的嵌入式计算平台:MCU,DSP,FPGA,GPU、ASSP等 Ø 嵌入式计算: Ø 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统对功能、可靠 性、成本、体积、功耗有严格要求的专用计算机系统,它一般由嵌入式微处理器、外围硬件设备、 嵌入 式操作系统以及用户的应用程序等四个部分组成。 式操作系统以及用户的应用程序等四个部分组成。 Ø 嵌入式系统促使计算机的形态和性能更加小型化,多功能,低功耗. Ø 加速计算: Ø 如何提高计算效率,提高计算性能 Ø 加速计算框架的考虑 Ø 加速计算平台的考虑 Ø FPGA 是如何作为加速平台的?在边缘和云端 Python 与嵌入式计算 4 Ø FPGA(Field Programmable Gate Array)是在PAL、GAL等可编程器件的基础上进一步发展的0 码力 | 33 页 | 8.99 MB | 1 年前3
Python3 基础教程 - 廖雪峰........................................................................................... 285 分布式进程 ................................................................................................ 3 版本。 Python 是一种计算机程序设计语言。你可能已经听说过很多种流行的编 程语言,比如非常难学的 C 语言,非常流行的 Java 语言,适合初学者 的 Basic 语言,适合网页编程的 JavaScript 语言等等。 那 Python 是一种什么语言? 首先,我们普及一下编程语言的基础知识。用任何编程语言来开发程序, 都是为了让计算机干活,比如下载一个 MP3,编写一个文档等等,而计 Python3 基础教程【完整版】 http://www.yeayee.com/ 6/531 那是不是越低级的程序越难学,越高级的程序越简单?表面上来说,是 的,但是,在非常高的抽象计算中,高级的 Python 程序设计也是非常 难学的,所以,高级程序语言不等于简单。 但是,对于初学者和完成普通任务,Python 语言是非常简单易用的。连 Google 都在大规模使用 Python,你就不用担心学了会没用。0 码力 | 531 页 | 5.15 MB | 1 年前3
8 4 Deep Learning with Python 费良宏 Evangelist 7 年 Windows/ Internet/ Cloud @ 3 年 iOS/ Mobile App @ 1.5 年 Cloud Computing @ 技术关注: 云计算:架构、大数据、计算优化 机器学习:深度学习、自然语言处理 语言:Python、Go、Scala、Lua Web:爬虫 2016的目标:Web爬虫+深度学习+自然语言处理 = ? Microso� Apple Hinton, Yoshua Bengio, Andrew Ng 机器学习 机器学习是一门人工智能的科学。机器学习算法是一类从 数据中自动分析获得规律,并利用规律对未知数据进行预 测的算法 机器学习 计算机能够分辨出来他/她是谁吗? 机器学习 机器学习 基于过去的事实和数据,用来发现趋势和模式 机器学习模型提供了对于结果的洞察力,机器学习帮助 揭示未来的一个结果的概 率而不仅仅是过去发生的事情 机器学习- 举例 如何让机器分辨出来他/她是谁 ? 图像分析 – 输入特征选择 ->面部特征、发型、裙子、身高、手势… 机器学习- 何时使用 你不需要机器学习,如果 - 使用简单的规则和计算,你可以预测答案 你能够预先了解到所需要的步骤不需要任何数据驱动的 学习 你需要机器学习,如果 - 简单的聚类规则是不充分的 面对大量的数据集的可伸缩性的问题 机器学习 - 总结 由已知答案的数据开始0 码力 | 49 页 | 9.06 MB | 1 年前3
4 Python机器学习性能优化了解你的资源 cpu/内存/io/gpu GPU为什么“快”? 计算⼒对⽐ • GFLOPS/s 每秒浮点数计算次数 摩尔定律的限制 • “集成电路路上可容纳的晶体管数⽬目,约每⼗十⼋八个⽉月便便会增加⼀一倍” CPU更更多⽤用在了了Cache(L1/L2/L3)和Control GPU绝⼤大部分⽤用来在了了ALU计算单元 GPU特性 • SIMD • 显存分级 • service-streamer • 请求排队组装成batch,再⼀一起送进GPU • ⼀一个GPU worker只会有⼀一条队列列,最⼤大batch size可控 • 多个GPU worker分布式处理理 • todo:补图 batch predict profile • 有了了service-streamer: ⽹网络服务性能 等价与 本地batch predict的性能 •0 码力 | 38 页 | 2.25 MB | 1 年前3
Python 标准库参考指南 3.9.20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 6.3 difflib --- 计算差异的辅助工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 6.3.1 SequenceMatcher pow(38, -1, mod=97) 23 >>> 23 * 38 % 97 == 1 True 在 3.8 版更改: 对于int 操作数,三参数形式的 pow 现在允许第二个参数为负值,即可以计算倒数的余 数。 在 3.8 版更改: 允许关键字参数。之前只支持位置参数。 print(*objects, sep=’ ’, end=’\n’, file=sys.stdout, flush=False) 的最大Integral math.ceil(x) >= x 的最小Integral 有关更多的数字运算请参阅math 和cmath 模块。 4.4.1 整数类型的按位运算 按位运算只对整数有意义。计算按位运算的结果,就相当于使用无穷多个二进制符号位对二的补码执行操 作。 二进制按位运算的优先级全都低于数字运算,但又高于比较运算;一元运算 ~ 具有与其他一元算术运算 (+ and -) 相同的优先级。0 码力 | 2146 页 | 10.17 MB | 9 月前3
Python 标准库参考指南 3.13 正则表达式例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 6.3 difflib --- 计算差异的辅助工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 6.3.1 SequenceMatcher 的最大Integral math.ceil(x) >= x 的最小Integral 有关更多的数字运算请参阅math 和cmath 模块。 4.4.1 整数类型的按位运算 按位运算只对整数有意义。计算按位运算的结果,就相当于使用无穷多个二进制符号位对二的补码执行 操作。 二进制按位运算的优先级全都低于数字运算,但又高于比较运算;一元运算 ~ 具有与其他一元算术运算 (+ and -) 相同的优先级。 n) ,作向下取整除法。 (4) 使用带有至少一个额外符号扩展位的有限个二进制补码表示(有效位宽度为 1 + max(x. bit_length(), y.bit_length()) 或以上)执行这些计算就足以获得相当于有无数个符号位 时的同样结果。 4.4.2 整数类型的附加方法 int 类型实现了numbers.Integral abstract base class。此外,它还提供了其他几个方法:0 码力 | 2246 页 | 11.74 MB | 9 月前3
Python 标准库参考指南 3.13 正则表达式例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 6.3 difflib --- 计算差异的辅助工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 6.3.1 SequenceMatcher 的最大Integral math.ceil(x) >= x 的最小Integral 有关更多的数字运算请参阅math 和cmath 模块。 4.4.1 整数类型的按位运算 按位运算只对整数有意义。计算按位运算的结果,就相当于使用无穷多个二进制符号位对二的补码执行 操作。 二进制按位运算的优先级全都低于数字运算,但又高于比较运算;一元运算 ~ 具有与其他一元算术运算 (+ and -) 相同的优先级。 n) ,作向下取整除法。 (4) 使用带有至少一个额外符号扩展位的有限个二进制补码表示(有效位宽度为 1 + max(x. bit_length(), y.bit_length()) 或以上)执行这些计算就足以获得相当于有无数个符号位 时的同样结果。 4.4.2 整数类型的附加方法 int 类型实现了numbers.Integral abstract base class。此外,它还提供了其他几个方法:0 码力 | 2242 页 | 11.73 MB | 9 月前3
Python 标准库参考指南 3.12 正则表达式例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 6.3 difflib --- 计算差异的辅助工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 6.3.1 SequenceMatcher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2002 36.9.10 预计算的表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2003 36.10 nis 的最大Integral math.ceil(x) >= x 的最小Integral 有关更多的数字运算请参阅math 和cmath 模块。 4.4.1 整数类型的按位运算 按位运算只对整数有意义。计算按位运算的结果,就相当于使用无穷多个二进制符号位对二的补码执行 操作。 二进制按位运算的优先级全都低于数字运算,但又高于比较运算;一元运算 ~ 具有与其他一元算术运算 (+ and -) 相同的优先级。0 码力 | 2253 页 | 11.81 MB | 9 月前3
共 125 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13













