WebGL/OpenGL 纹理渲染和 GPU 带宽的不够的问题

2019-06-22 16:13:05 +08:00
 MinonHeart

前提:

问题 1:用 GPU0 的 GL 中渲染动画(纹理),一帧所需要的数据量为 1GB(数据量(GB) = 纹理的宽 x 高 x 4 / Math.pow(1024,3) x 纹理的数量 ),那么此时的显卡带宽是不是不够用的?( 1GB/fps x 60fps > 25.6GB/s )

问题 2:用 GPU0 时,集显和显存(也就是内存)、显存和显示器之间的数据传输,带宽是否是纹理数据量的两倍?( 1GB/fps x 60fps x 2 )

问题 3:用 GPU0 时,渲染动画所需带宽为 20GB/s,小于 25.6GB/s,此时 CPU Bus Speed 是否会成为性能瓶颈?

问题 4:用 GPU0 测试时,Windows 10 任务管理器中 3D 占用约为 85%,共享 GPU 内存利用率约为 85%,内存占用约为 15GB/16GB,此时浏览器切换 Tab 再切回就会重载页面,这是由于内存带宽不足还是内存容量不足造成的?

问题 5:改用 GPU1 时,带宽是否够用?此时 CPU Bus Speed一定不会成为性能的瓶颈?

问题 6:GPU 的 Pixel Rate、Texture Rate、Bandwidth 之间有什么关系?

问题 7:GL 首次把纹理渲染后,后续执行动画(位移、旋转)时,纹理是重复渲染,还是会使用缓存的 frameBuffer?(实际上 frameBuffer 一直为 null )

以上如有错误之处,烦请指正。另外问问这方面的资料哪里可以找到

1114 次点击
所在节点    问与答
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/576456

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX