Q100313:计算 Mari 中虚拟纹理的 GPU 内存使用量

关注

概括

Mari是一款 GPU 极其密集的软件,这意味着在大多数情况下,您的显卡可以处理的内存量将与应用程序的性能直接相关。

运行Mari所需的内存量始终取决于您所创建的项目的大小。

本文将解释您可以使用的公式来确定计算不同项目大小的虚拟纹理所需的 GPU 内存(通常称为 VRAM)。

更多信息

取决于项目大小的内存计算可以简化为以下公式,以找出Mari将用于虚拟纹理计算的消耗量:

Pixel Size x Width x Height x Depth


例如,如果您有一个具有 4K 纹理的 32 位通道,您可以通过以下方式计算将使用多少内存:

32 bit x 4     = 128 bit              ## Where 4 represents R, G, B, A and 32 bits per pixel 
128 bit / 8 = 16 Bytes   ## Convert 128 bits into bytes = 16 Bytes
16 x 4096 = 65536 Bytes   ## Multiplied by the width of the texture layer
65536 x 4096 = 268435456 Bytes ## Multiplied by the height of the texture layer
268435456 x 8 = 2147483648 Bytes ## Multiplied by the number of layers in your layerstack
 Total: 2.147483648 Gigabytes


在上面的示例中,如果您的显卡上有大约 4 GB 的内存, Mari仅在计算虚拟纹理时就已经使用了一半以上的专用内存。

当您开始考虑Mari中发生的用于计算其他功能和着色器的附加进程,以及考虑您可能打开的任何其他可能使用 GPU 的应用程序(包括 Web 浏览器)时,很容易理解为什么一些用户可能会发现自己很容易耗尽内存。

注意:虚拟纹理也称为虚拟纹理图集或稀疏虚拟纹理 (SVT)。

注意:可用的 RAM 越多越好,您可能还想了解其他硬件组件的使用方式以及如何影响Mari的性能,请查看这篇文章: Q100078: Mari的硬件组件使用情况

进一步的帮助

如果您需要有关 SVT 以及不同硬件如何影响Mari性能的更多信息,请查看以下文章: 文档: Mari使用哪些硬件

如果您仍然遇到性能问题,请创建支持票并向我们提供本文中要求的信息: Q100090:报告Mari问题

有关如何提出支持请求的更多信息,请参阅本文: Q100064:如何提出支持请求

    我们很遗憾听到

    请告诉我们