html - HTML5 RequestAnimationFrame 是在 CPU 上运行还是在 GPU 上运行?

标签 html gpu cpu requestanimationframe

这个答案不容易找到。我在 HTML5 中搜索了很多关于 RequestAnimationFrame 的权威文档,似乎从未指定它在 GPU 中运行。 GPU 有时会被推断出来,但引用文献似乎是必然的。

所以我认为 RequestAnimationFrame 是 CPU,只是从未明确说明。

有没有人找到 CPU 或 GPU 的明确分类?

我想如果它是 GPU,它就会无处不在。谢谢。

最佳答案

严格来说,它总是在 CPU 上运行,就像所有 JavaScript 一样。但对动画来说重要的不是“CPU 与 GPU”区别的部分。

重要的是您在回调中启动的操作类型是否会得到 GPU 加速。这与您启动它们的方式无关,因此对于 GPU 加速,requestAnimationFrame 根本不会改变任何东西。如果浏览器能够 GPU 加速操作,它就会(例如,如果您为 opacitytransform 设置动画)。如果它不能(例如,如果您为 widthheight 设置动画),那么它就不会。

仍然,最好使用 requestAnimationFrame 而不是 setTimeout/setInterval,因为它允许浏览器选择回调的最佳时间和频率(例如,通过放慢不可见选项卡中的动画来节省电量)。

关于html - HTML5 RequestAnimationFrame 是在 CPU 上运行还是在 GPU 上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43722834/

相关文章:

graph - Tensorflow:使用 CPU 的特定核心执行操作

parallel-processing - 多核CPU的: Programming techniques to avoid disappointing scalability

html - 选择列表的第一个 child 而不包括孙子

binary - 计算机如何将二进制数转换为 2 的补码形式的十进制数

javascript - 如何在Javascript中动态制作按钮

variables - 在内核调用之前从 CPU 初始化 GPU 的单个变量

node.js - 获取 GPU 温度 NODEJS

opencl - AMD CPU 与 Intel CPU openCL

jquery - 具有独特名称的动态形式

php - 动态生成选项列表以重复的 optgroup 标签结束