summaryrefslogtreecommitdiff
path: root/indra/llwindow/llwindowmacosx.cpp
diff options
context:
space:
mode:
authorHoward Stearns <aech@lindenlab.com>2022-06-17 15:17:54 +0000
committerHoward Stearns <aech@lindenlab.com>2022-06-17 15:17:54 +0000
commita42a89001d545548eaf1684e73a918badce2837d (patch)
tree2650993a565233f5995e6abe44f14d48d48619ac /indra/llwindow/llwindowmacosx.cpp
parentc9a48a1cdd23a592eb25454d5e2d6c316ec93445 (diff)
parent9d9c2037e10966bdf4b07ef3fed081c04a4ed30a (diff)
Merged in SL-17485 (pull request #1016)
SL-17485 - MacOS memory accounting Approved-by: Dave Parks
Diffstat (limited to 'indra/llwindow/llwindowmacosx.cpp')
-rw-r--r--indra/llwindow/llwindowmacosx.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/indra/llwindow/llwindowmacosx.cpp b/indra/llwindow/llwindowmacosx.cpp
index bc4f07941b..4bcb9b3aef 100644
--- a/indra/llwindow/llwindowmacosx.cpp
+++ b/indra/llwindow/llwindowmacosx.cpp
@@ -1222,6 +1222,16 @@ F32 LLWindowMacOSX::getPixelAspectRatio()
return 1.f;
}
+U32 LLWindowMacOSX::getAvailableVRAMMegabytes() {
+ // MTL (and MoltenVK) has some additional gpu data, such as recommendedMaxWorkingSetSize and currentAllocatedSize.
+ // But these are not available for OpenGL and/or our current mimimum OS version.
+ // So we will estimate.
+ static const U32 mb = 1024*1024;
+ // We're asked for total available gpu memory, but we only have allocation info on texture usage. So estimate by doubling that.
+ static const U32 total_factor = 2; // estimated total/textures
+ return gGLManager.mVRAM - (LLImageGL::getTextureBytesAllocated() * total_factor/mb);
+}
+
//static SInt32 oldWindowLevel;
// MBW -- XXX -- There's got to be a better way than this. Find it, please...