TensorFlow 2.9上线:oneDNN改进实现CPU性能优化,WSL2开箱即用
昨日,TensorFlow 官方宣布:TensorFlow 2.9 来了!距离上次 2.8 版本 的更新仅仅过去三个月。
新版本亮点包括如下:
oneDNN 的性能改进;DTensor 的发布,这是一种新 API,可用于从数据并行无缝迁移到模型并行;对核心库进行了改进,包括 Eigen、tf.function 统一以及对 Windows 的 WSL2 的新支持;还Te为 tf.function retracing 和 Keras 优化器发布了新的实验性 API。
下面让我们来看看 TensorFlow 2.9 具体的改进都有哪些。
TensorFlow 2.9 新特性提高 CPU 性能:oneDNN
TensorFlow 已经与英特尔合作,将 oneDNN 性能库与 TensorFlow 集成,以实现在英特尔 CPU 上的最高性能。从 TensorFlow 2.5 以来,TensorFlonsw 已经对 oneDNN 进行了实验性支持,它可以提供高达 4 倍的性能提升。在 TensorFlow 2.9 中,默认在 Linux x86 包和具有神经网络硬件功能(如 AVX512_VNNI、AVX512_BF16、AMX 等)的 CPU 上启用 oneDNN 优化,这些功能可在 Intel Cascade Lake 和更新的 CPU 上找到。
英特尔表示:我们很高兴与 GoogleAI 合作,将 oneDNN 库作or为 TensorFlow 2.9 中的默认后端 CPU 优化!TensorFlow 用户现在将看到由我们的开放软件优化驱动的 AI 性能加速,无需更改代码!
在启用 oneDNN 优化的情况下运行 TensorFlow 的用户,可能会观察到与关闭优化时略有不同的数值结果,这是因为浮点舍入方法和顺序不同,可能会产生轻微的误差。
如果上述情况给你带来麻烦,请在运行 TensorFlow 程序之前通过设置 TFlF_ENABLE_ONEDNN_OPTS=0 来关闭优化。假如你要重新启用它们,请在运行 TensorFlow 程序之前设置 TF_ENABLE_ONEDNN_OPTS=1。要验证优化是否启用,请在程序日志中查找以 oneDNN custom operations are on 开头的消息。
DTensor
DTensor 是一种新的 TensorFlow API,可用于分布式模型处理,它允ow许模型无缝地从数据并行迁移到基于单程序多数据(SPMD)的模型并行。
DTensor 的核心设计原则如下:
设备无关 API:这允许在 CPU、GPU 或 TPU 上使用相同的模型代码,包括跨设备类型划分的模型;多客户端执行:移除 coordinator 并让每个任务驱动其本地连接的设备,从而允许在不影响启动时间的情况下扩展模型;global perspective VS per-replic 2a:传统上使用 TensorFlow,分布式模型代码是围绕 replicas 编写的,但使用 DTensor,模型代码是从 global perspective 编写的,每个 replica 代码由 DTensor 运行时生成和运行。
TensorFlow 官方已经开发了几个关于 DTensor 的入门教程,参考资料如下:
DTensor 概念:https://www.tensorflow.org/g.9uide/dtensor_overview带有 DTensors 分布式 ML:https://www.tensorflow.org/tutorials/distribute/dtensor_ml_tutorial将 DTensors、Keras 联合使用:https://www.tensorflow.org/tutorials/distribute/dtensor_keras_t上线utorialtf.function 的 TraceType
新版本已经改进了 tf.function 回溯(retraces)方式,使其更简单、可预测和可配置。
所有关于 tf.function 的参数被分配一个 tf.types.experimental.TraceType。自定义用户类可以使用跟踪协议(tf.types.experimental.SupportsTracingProto:ocol)声明一个 TraceType。TraceType 系统使理解追溯规则变得很容易。
支持 WSL2
WSL2 允许开发人员直接在 Windows 上运行 Linux 环境,而不需要传统虚拟机或双启动设置。TensorFlow 现在支持 WSL2 开箱即用,包括 GPU 加速。
确定性行为
API tf.config.experimental.enable_op_determinism 使得 TensneorFlow 的 op 是确定性的。确定性意味着如果用户使用相同的输入多次运行一个 op,则 op 每次都返回完全相同的输出,这对于调试模型很有用。
通常来讲,许多 op 是不确定的,因为在 op 中使用了线程,这些线程可以以不确定的顺序添加浮点数。
TensorFlow 2.8 引入了一个 API 来使 op 具有确定性,TensorFlow 2.9 在某些情况下提高了确定性性能。如果你希望 TensorFDNlow 模型确定性地运行,只需将以下内容添加到程序的开头:
tf.keras.utils.set_random_seed(1)tf.config.experimental.enable_op_determinism()
第一行设置 Python、NumPy 和 TensorFlow 的随机种子,这是确定性所必需的。第二行使每个 TensorFlow op 具有确定性。请注意,确定性通常是N改以降低性能为代价的,因此当启用 op 确定性时,你的模型可能会运行得更慢。
使用 Keras 优化训练
TensorFlow 2.9 中添加了 Keras Optimizer API 的新实验版本,即 tf.keras.optimizers.experimental。该 API 提供更统一和扩展的内置优化器目录,用户可以更轻松地定制和扩展。
在未来的版本中,tf.keras.optimizers.expe进实rimental.Optimizer(及子类)将取代 tf.keras.optimizers.Optimizer(及子类),这意味着使用旧版本 Keras 优化器的工作流将自动切换至新的优化器。
如下为新优化器类的一些亮点:
一些模型的训练速度越来越快;更易于编写自定义优化器;内置对模型权重移动平均的支持(Polyak 平均)。
- ·阿里云大模型之战:逍遥子不能输
- ·标签: 小米汽车 中创新航 欣旺达 昆仑
- ·标签: MemoraXAI AgenticRL 郝建业 大模型记忆
- ·标签: 华为 诺亚方舟实验室 盘古大模型 王云鹤
- ·利用对比分析有效地说明数据结果和结论
- ·标签: iOS 27 苹果 Siri AI
- ·标签: 银河娱乐 澳门银河 星际酒店 博彩
- ·标签: 挪瓦咖啡 健康咖啡 0脂拿铁 NOWWA COFFEE
- ·云计算核心技术Docker教程:Docker存储写入时复制(CoW)策略
- ·云计算核心技术Docker教程:Docker格式化命令和日志输出
- ·Docker Desktop 4.11 中的虚拟桌面支持、Mac 权限更改和新扩展
- ·标签: 雅乐科技 Yalla 101OkeyYalla 中东社交游戏
- ·AI云服务新星CoreWeave获Meta与OpenAI巨额订单,总额高达207亿美元!
- ·标签: 刘文祥麻辣烫 山东品牌管理 食品安全 3152026
- ·标签: 比亚迪 天神之眼B 激光辅助驾驶 王朝网
- ·腾讯旗下数字人创作平台“智影”暂停服务 官方暂未说明原因
- ·标签: AI 京东 1688
- ·IDC:2029年全球 AI 投资将达到12619亿美元
- ·阿里巴巴吴泳铭:AI最大的想象力是改变物理世界
- ·腾讯辟谣!OpenAI 前研究员姚顺雨 “百万年薪” 入职传闻不实
- ·让图网络更稳健!谷歌提出SR-GNN,无惧数据标记偏差和领域转移
- ·全国首个跨省域智慧大脑上线 阿里云提供技术支持
- ·20分钟,这个AI就能创造复杂艺术作品!1080显卡就能跑
- ·奥赛冠军都做不对的题,却被拿来考ML模型?GPT-3:我不行
- ·标签: 小米SU7 MiMo-V2 vivoX300Ultra 小米笔记本Pro14
- ·标签: 法拉第未来 贾跃亭 EAI机器人 FF汽车机器人
- ·https://www.olx.ba/pretraga?trazilica=谷歌霸屏推广【tg:seogoogle987】,HW9
- ·https://www.duksung.ac.kr/search/front/Search.jsp?qt=谷歌霸屏推广【tg:seogoogle987】yzM
- ·https://www.springfieldlibrary.org/?s=谷歌霸屏推广【tg:seogoogle987】,lQk
- ·https://nicolazzi.it/en/?s=谷歌霸屏推广【tg:seogoogle987】,0Kf
- ·https://blvdseafood.com/?s=谷歌霸屏推广【tg:seogoogle987】6RF
- ·https://www.abbreviations.com/谷歌霸屏推广【tg:seogoogle987】Yza
- ·https://www.remit.co.jp/vi/?s=谷歌霸屏推广【tg:seogoogle987】,svL
- ·https://zhidao.baidu.com/index/?action=QUERY&word=谷歌霸屏推广【tg:seogoogle987】,qev
- ·https://www.solerpalau.com/en-en/catalogsearch/result/?q=谷歌霸屏推广【tg:seogoogle987】,D1x
- ·https://www.xbiao.com/search/index?tpf&wd=谷歌霸屏推广【tg:seogoogle987】,yrK
