gpt4 book ai didi

opengl - opengl 中的 mipmap 生成 - 是硬件加速吗?

转载 作者:行者123 更新时间:2023-12-01 03:50:48 25 4
gpt4 key购买 nike

这里的目的不是渲染,而是 gpgpu;它用于图像模糊:

给定图像,我需要使用固定的给定可分离内核对其进行模糊处理(参见例如 Separable 2D Blur Kernel )。

对于 GPU 处理,一个很好的流行方法是 first filter the lines, then filter the columns; and using the vertex shader and the fragment shader to do so (*)

但是,如果我有一个固定大小的内核,我想我可以使用一个快速计算的接近我想要的级别的mipmap,然后对其进行上采样(as was suggested here) .

因此,问题是:opengl 创建的 mipmap 会比我使用 (*) 的方法创建的 mipmap 更快吗?

换句话说:mipmap 创建是在 GPU 本身上优化的吗?它会永远胜过(速度方面)用户创建的 glsl 代码吗?还是取决于显卡?

编辑:
感谢您的回复(Kahler、Jean-Simon Brochu)。但是,我仍然没有看到任何资源明确说明 gpu 生成的 mipmap 是否比任何用户创建的 mipmap 更快,因为特定的 mipmap-generation-gpu-hardware ...

最佳答案

OpenGL 并不关心函数是如何实现的。

OpenGL是一套规范,其中有glGenerateMipmap .

任何人都可以编写软件渲染器或开发符合规范的视频卡。如果它通过测试,它就是~OpenGL认证~

这意味着没有强制要求在 CPU 或 GPU 或任何地方执行任何功能,它们只需要产生 OpenGL 预期的结果。

现在是实际方面:

现在,您可以假设 mipmap 生成是由视频卡完成的,因为主要供应商采用了这种方法。
如果您真的想知道,则必须专门检查您正在编程的视频卡。

至于性能,假设您无法击败视频卡。

即使你想出一些在一些高科技 CPU 中执行的高度优化的代码,你也必须将你生成的 mipmap 上传到 GPU,并且单独的这个操作可能需要更多的时间,然后让在您上传全分辨率纹理后,GPU 会完成这项工作。

而且,如果您将 mipmaping 编程为着色器,仍然不太可能击败硬编码(甚至可能是硬连线)内置函数。 (以及单独的代码,不包括它可以更好地安排、分开处理等​​的事实)

This site explains the glGenerateMipmap history better =))

关于opengl - opengl 中的 mipmap 生成 - 是硬件加速吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23017317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com