Skip to content

Instantly share code, notes, and snippets.

@chockenberry
Last active June 14, 2021 08:42
Show Gist options
  • Save chockenberry/2afe4d0f1f9caddc81de to your computer and use it in GitHub Desktop.
Save chockenberry/2afe4d0f1f9caddc81de to your computer and use it in GitHub Desktop.
In the next version of iPulse, I'd like to show GPU statistics. Unfortunately, the format
for these statistics is vendor specfic (see the "Performance Statistics" dictionary below.)
In order to cover as many devices as possible, I'd like you to run the following commands
from your Terminal:
$ sysctl hw.model
$ ioreg -r -d 1 -w 0 -c "IOAccelerator"
You can help me read the results by putting them in a code block (triple backticks).
I'll add a few of my Macs to get this list started. Thanks for your help!
@coofdy
Copy link

coofdy commented Nov 7, 2015

hw.model: iMac15,1

+-o AMDTongaGraphicsAccelerator  <class AMDTongaGraphicsAccelerator, id 0x100000434, registered, matched, active, busy 0 (0 ms), retain 305>
    {
      "IOClass" = "AMDTongaGraphicsAccelerator"
      "dpm" = 1
      "IOKitDebug" = 0
      "AccelNativeDMARowByteAlignment" = 256
      "IOVARendererID" = 16908290
      "IODVDBundleName" = "AMDRadeonVADriver"
      "AccelCaps" = 15
      "IOGLBundleName" = "AMDRadeonX4000GLDriver"
      "IOProviderClass" = "IOPCIDevice"
      "ATIEnableWideBlitSupport" = Yes
      "MetalPluginName" = "AMDMTLBronzeDriver"
      "IOProbeScore" = 200
      "SurfaceList" = ({"surfaceType"="ctx","width"=2036,"height"=1756,"pid"=27628},{"surfaceType"="ctx","width"=644,"height"=50,"pid"=27635},{"surfaceType"="ctx","width"=1524,"height"=1940,"pid"=1823},{"surfaceType"="ctx","width"=654,"height"=50,"pid"=1847},{"surfaceType"="ctx","width"=5120,"height"=2880,"pid"=196})
      "IOOCDBundleName" = "AMDRadeonX4000GLDriver"
      "IOSourceVersion" = "0.0.0.0.0"
      "PerformanceStatisticsAccum" = {"iosurfaceTextureCreationBytes"=0,"Device Utilization %"=0,"orphanedNonReusableSysMemoryCount"=0,"swapCompleteVideoWaitTime"=0,"orphanedReusableSysMemoryHitRate"=0,"oolTextureCreationCount"=0,"surfaceCount"=2707,"HWChannel KIQ | Commands Submitted"=0,"HWChannel VCE | Commands Submitted"=0,"context2DCount"=4,"surfaceReadLockIdleWaitTime"=0,"surfaceCopyOutWaitTime"=0,"HWChannel C0 | Commands Completed"=0,"swapBytesPerSample"=0,"gartCacheBytes"=33554432,"stdTexturePageInBytes"=0,"finishCLWaitTime"=0,"agpTextureCreationCount"=0,"textureCount"=5857,"HWChannel sDMA0 | Commands Completed"=0,"stdTextureCreationBytes"=0,"HWChannel VCELLQ | Commands Completed"=0,"surfaceTextureCreationCount"=0,"HWChannel VCELLQ | Commands Submitted"=0,"finish2DWaitTime"=0,"agprefTextureCreationBytes"=0,"contextVideoCount"=0,"HWChannel SAMU GPCOM | Commands Submitted"=0,"orphanedNonReusableSysMemoryBytes"=0,"surfaceBufferPageOutBytes"=0,"swapComplete2DWaitTime"=0,"orphanedReusableSysMemoryBytes"=0,"contextGLCount"=24,"HWChannel SAMU RBI | Commands Completed"=0,"orphanedNonReusableVidMemoryCount"=0,"HWChannel UVD | Commands Completed"=0,"HWChannel GFX | Commands Completed"=4,"clientGLWaitTime"=0,"freeSurfaceSwapBufferWaitTime"=0,"surfaceBufferReadOutBytes"=0,"volatileSurfaceCount"=0,"HWChannel C1 | Commands Completed"=0,"hardwareSubmitWaitTime"=0,"inUseVidMemoryBytes"=3220078592,"vramFreeBytes"=14775401152,"ioSurfacePageInBytes"=0,"finishAll2DWaitTime"=0,"orphanedReusableVidMemoryCount"=373,"recoveryCount"=0,"orphanedNonReusableVidMemoryBytes"=0,"vramEvictionWaitTime"=0,"stdTextureCreationCount"=0,"HWChannel SAMU RBI | Commands Submitted"=0,"gartSizeBytes"=6442450944,"HWChannel SAMU GPCOM | Commands Completed"=0,"HWChannel C0 | Commands Submitted"=0,"texturePageOutBytes"=0,"oolTexturePageInBytes"=0,"freeToAllocGPUAddressWaitTime"=0,"gartMapInBytesPerSample"=0,"oolTextureCreationBytes"=0,"finishGLWaitTime"=0,"HWChannel KIQ | Commands Completed"=0,"freeDataBufferWaitTime"=0,"orphanedReusableVidMemoryHitRate"=87,"HWChannel UVD | Commands Submitted"=0,"HWChannel GFX | Commands Submitted"=0,"inUseSysMemoryBytes"=4056358912,"bufferSwapCount"=0,"HWChannel sDMA1 | Commands Submitted"=0,"agprefTextureCreationCount"=0,"swapCompleteGLWaitTime"=0,"dataBytesPerSample"=0,"agpTextureCreationBytes"=0,"HWChannel C1 | Commands Submitted"=0,"iosurfaceTextureCreationCount"=0,"bufferFlipCount"=0,"gartMapOutBytesPerSample"=0,"hardwareWaitTime"=0,"contextCLCount"=0,"surfaceBufferPageInBytes"=0,"freeSurfaceBackingWaitTime"=0,"textureVolunteerUnloadBytes"=0,"ioSurfaceReadOutBytes"=0,"finishVideoWaitTime"=0,"HWChannel VCE | Commands Completed"=0,"gartUsedBytes"=21827584,"orphanedReusableSysMemoryCount"=0,"textureReadOutBytes"=0,"gartFreeBytes"=6420623360,"dataBufferCount"=0,"ioSurfacePageOutBytes"=0,"orphanedReusableVidMemoryBytes"=836280320,"HWChannel sDMA0 | Commands Submitted"=0,"surfaceSetShapeIdleWaitTime"=0,"surfaceWriteLockIdleWaitTime"=0,"surfaceCopyInWaitTime"=0,"HWChannel sDMA1 | Commands Completed"=0}
      "ATY,cbits" = 16842752
      "ATY,intrev" = 21
      "cail_properties" = {"CAIL_DisableAcpPowerGating"=0,"CAIL_DisableSAMUPowerGating"=0,"CAIL_DisableSysClockGating"=1,"CAIL_DisableUVDPowerGating"=0,"CAIL_DisableJpegEngine"=1,"CAIL_DisableVCEPowerGating"=0}
      "IOAccelRevision" = 2
      "InternalStatisticsAccm" = {}
      "IOCFPlugInTypes" = {"ACCF0000-0000-0000-0000-000a2789904e"="IOAccelerator2D.plugin"}
      "IOMatchCategory" = "IOAccelerator"
      "CFBundleIdentifier" = "com.apple.AMDRadeonX4000"
      "ATIUseTearingWideBlit" = No
      "PerformanceStatistics" = {"iosurfaceTextureCreationBytes"=0,"Device Utilization %"=0,"orphanedNonReusableSysMemoryCount"=0,"swapCompleteVideoWaitTime"=0,"orphanedReusableSysMemoryHitRate"=0,"oolTextureCreationCount"=0,"surfaceCount"=2707,"HWChannel KIQ | Commands Submitted"=0,"HWChannel VCE | Commands Submitted"=0,"context2DCount"=4,"surfaceReadLockIdleWaitTime"=0,"surfaceCopyOutWaitTime"=0,"HWChannel C0 | Commands Completed"=0,"swapBytesPerSample"=0,"gartCacheBytes"=33554432,"stdTexturePageInBytes"=0,"finishCLWaitTime"=0,"agpTextureCreationCount"=0,"textureCount"=5857,"HWChannel sDMA0 | Commands Completed"=0,"stdTextureCreationBytes"=0,"HWChannel VCELLQ | Commands Completed"=0,"surfaceTextureCreationCount"=1,"HWChannel VCELLQ | Commands Submitted"=0,"finish2DWaitTime"=0,"agprefTextureCreationBytes"=0,"contextVideoCount"=0,"HWChannel SAMU GPCOM | Commands Submitted"=0,"orphanedNonReusableSysMemoryBytes"=0,"surfaceBufferPageOutBytes"=0,"swapComplete2DWaitTime"=0,"orphanedReusableSysMemoryBytes"=0,"contextGLCount"=24,"HWChannel SAMU RBI | Commands Completed"=0,"orphanedNonReusableVidMemoryCount"=0,"HWChannel UVD | Commands Completed"=0,"HWChannel GFX | Commands Completed"=74,"clientGLWaitTime"=0,"freeSurfaceSwapBufferWaitTime"=0,"surfaceBufferReadOutBytes"=0,"volatileSurfaceCount"=0,"HWChannel C1 | Commands Completed"=0,"hardwareSubmitWaitTime"=0,"inUseVidMemoryBytes"=3220078592,"vramFreeBytes"=14775401152,"ioSurfacePageInBytes"=0,"finishAll2DWaitTime"=0,"orphanedReusableVidMemoryCount"=373,"recoveryCount"=0,"orphanedNonReusableVidMemoryBytes"=0,"vramEvictionWaitTime"=0,"stdTextureCreationCount"=0,"HWChannel SAMU RBI | Commands Submitted"=0,"gartSizeBytes"=6442450944,"HWChannel SAMU GPCOM | Commands Completed"=0,"HWChannel C0 | Commands Submitted"=0,"texturePageOutBytes"=0,"oolTexturePageInBytes"=7471104,"freeToAllocGPUAddressWaitTime"=0,"gartMapInBytesPerSample"=0,"oolTextureCreationBytes"=0,"finishGLWaitTime"=0,"HWChannel KIQ | Commands Completed"=0,"freeDataBufferWaitTime"=0,"orphanedReusableVidMemoryHitRate"=87,"HWChannel UVD | Commands Submitted"=0,"HWChannel GFX | Commands Submitted"=82,"inUseSysMemoryBytes"=4056358912,"bufferSwapCount"=0,"HWChannel sDMA1 | Commands Submitted"=0,"agprefTextureCreationCount"=0,"swapCompleteGLWaitTime"=0,"dataBytesPerSample"=0,"agpTextureCreationBytes"=0,"HWChannel C1 | Commands Submitted"=0,"iosurfaceTextureCreationCount"=0,"bufferFlipCount"=0,"gartMapOutBytesPerSample"=0,"hardwareWaitTime"=251094,"contextCLCount"=0,"surfaceBufferPageInBytes"=0,"freeSurfaceBackingWaitTime"=0,"textureVolunteerUnloadBytes"=0,"ioSurfaceReadOutBytes"=98304,"finishVideoWaitTime"=0,"HWChannel VCE | Commands Completed"=0,"gartUsedBytes"=21827584,"orphanedReusableSysMemoryCount"=0,"textureReadOutBytes"=0,"gartFreeBytes"=6420623360,"dataBufferCount"=0,"ioSurfacePageOutBytes"=0,"orphanedReusableVidMemoryBytes"=836280320,"HWChannel sDMA0 | Commands Submitted"=0,"surfaceSetShapeIdleWaitTime"=0,"surfaceWriteLockIdleWaitTime"=0,"surfaceCopyInWaitTime"=0,"HWChannel sDMA1 | Commands Completed"=0}
      "InternalStatistics" = {}
      "MetalPluginClassName" = "AMDMTLVIDevice"
      "IOPCIMatch" = "0x69201002 0x69211002 0x69301002 0x69381002 0x69391002"
      "GpuDebugPolicy" = 0
    }


+-o IntelAccelerator  <class IntelAccelerator, id 0x10000043e, registered, matched, active, busy 0 (0 ms), retain 112>
    {
      "IOClass" = "IntelAccelerator"
      "IOVARendererID" = 17301508
      "AccelCaps" = 15
      "IODVDBundleName" = "AppleIntelHD5000GraphicsVADriver"
      "IOGLBundleName" = "AppleIntelHD5000GraphicsGLDriver"
      "IOProviderClass" = "IOPCIDevice"
      "CompactVRAM" = 1
      "ForceDisableEDRAM" = 0
      "IOProbeScore" = 1000
      "SurfaceList" = ()
      "IOSourceVersion" = "0.0.0.0.0"
      "PerformanceStatisticsAccum" = {"orphanedReusableVidMemoryHitRate"=0,"texturePageOutBytes"=0,"swapCompleteVideoWaitTime"=0,"orphanedReusableSysMemoryHitRate"=5,"dataBufferCount"=0,"oolTexturePageInBytes"=0,"textureCount"=55,"iosurfaceTextureCreationCount"=0,"surfaceReadLockIdleWaitTime"=0,"freeDataBufferWaitTime"=0,"orphanedReusableSysMemoryBytes"=0,"ioSurfaceReadOutBytes"=0,"agprefTextureCreationCount"=0,"orphanedReusableSysMemoryCount"=0,"finishAll2DWaitTime"=0,"orphanedNonReusableSysMemoryCount"=0,"surfaceTextureCreationCount"=0,"ioSurfacePageOutBytes"=0,"surfaceBufferReadOutBytes"=0,"textureReadOutBytes"=0,"gartMapInBytesPerSample"=0,"dataBytesPerSample"=0,"swapBytesPerSample"=0,"surfaceCount"=0,"Device Unit 0 Utilization %"=0,"clientGLWaitTime"=0,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=0,"gartMapOutBytesPerSample"=0,"ioSurfacePageInBytes"=0,"gartCacheBytes"=33554432,"volatileSurfaceCount"=0,"vramEvictionWaitTime"=0,"oolTextureCreationBytes"=0,"freeToAllocGPUAddressWaitTime"=0,"oolTextureCreationCount"=0,"Device Unit 1 Utilization %"=0,"orphanedReusableVidMemoryCount"=0,"orphanedReusableVidMemoryBytes"=0,"context2DCount"=0,"inUseSysMemoryBytes"=0,"bufferSwapCount"=0,"orphanedNonReusableVidMemoryBytes"=0,"contextGLCount"=0,"finish2DWaitTime"=0,"Device Unit 2 Utilization %"=0,"gartSizeBytes"=1610612736,"recoveryCount"=0,"stdTexturePageInBytes"=0,"agprefTextureCreationBytes"=0,"gartUsedBytes"=89722880,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=0,"surfaceBufferPageInBytes"=0,"iosurfaceTextureCreationBytes"=0,"finishCLWaitTime"=0,"finishVideoWaitTime"=0,"contextCLCount"=0,"freeSurfaceBackingWaitTime"=0,"Device Unit 3 Utilization %"=0,"swapCompleteGLWaitTime"=0,"orphanedNonReusableSysMemoryBytes"=0,"inUseVidMemoryBytes"=0,"agpTextureCreationBytes"=0,"stdTextureCreationBytes"=0,"agpTextureCreationCount"=0,"stdTextureCreationCount"=0,"surfaceSetShapeIdleWaitTime"=0,"gartFreeBytes"=1520889856,"hardwareSubmitWaitTime"=0,"bufferFlipCount"=0,"textureVolunteerUnloadBytes"=0,"swapComplete2DWaitTime"=0,"surfaceBufferPageOutBytes"=0,"contextVideoCount"=3,"hardwareWaitTime"=0,"freeSurfaceSwapBufferWaitTime"=0,"orphanedNonReusableVidMemoryCount"=0}
      "IOAccelRevision" = 2
      "IOCFPlugInTypes" = {"ACCF0000-0000-0000-0000-000a2789904e"="IOAccelerator2D.plugin"}
      "IOPCIPrimaryMatch" = "0x0d268086 0x0a268086 0x0a2e8086 0x0d228086 0x04128086"
      "InternalStatisticsAccm" = {}
      "IOMatchCategory" = "IOAccelerator"
      "CFBundleIdentifier" = "com.apple.driver.AppleIntelHD5000Graphics"
      "IOGVAScaler" = "Gen75"
      "PanicOnGPUHang" = 0
      "IOGVABGRAEnc" = "Gen75"
      "PerformanceStatistics" = {"orphanedReusableVidMemoryHitRate"=0,"texturePageOutBytes"=0,"swapCompleteVideoWaitTime"=0,"orphanedReusableSysMemoryHitRate"=5,"dataBufferCount"=7,"oolTexturePageInBytes"=0,"Device Utilization % at cur p-state"=0,"iosurfaceTextureCreationCount"=2008,"textureCount"=55,"freeDataBufferWaitTime"=0,"surfaceReadLockIdleWaitTime"=0,"orphanedReusableSysMemoryBytes"=0,"ioSurfaceReadOutBytes"=18446744072552108032,"agprefTextureCreationCount"=1147,"orphanedReusableSysMemoryCount"=0,"finishAll2DWaitTime"=0,"orphanedNonReusableSysMemoryCount"=0,"surfaceTextureCreationCount"=0,"ioSurfacePageOutBytes"=0,"surfaceBufferReadOutBytes"=0,"textureReadOutBytes"=0,"gartMapInBytesPerSample"=0,"dataBytesPerSample"=0,"swapBytesPerSample"=0,"surfaceCount"=0,"Device Unit 0 Utilization %"=0,"clientGLWaitTime"=18446744072846729950,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=0,"gartMapOutBytesPerSample"=0,"ioSurfacePageInBytes"=3133440,"gartCacheBytes"=33554432,"volatileSurfaceCount"=0,"vramEvictionWaitTime"=0,"oolTextureCreationBytes"=0,"freeToAllocGPUAddressWaitTime"=0,"oolTextureCreationCount"=0,"Device Unit 1 Utilization %"=0,"orphanedReusableVidMemoryCount"=0,"orphanedReusableVidMemoryBytes"=0,"context2DCount"=0,"inUseSysMemoryBytes"=0,"bufferSwapCount"=0,"orphanedNonReusableVidMemoryBytes"=0,"contextGLCount"=0,"finish2DWaitTime"=0,"Device Unit 2 Utilization %"=0,"gartSizeBytes"=1610612736,"recoveryCount"=0,"stdTexturePageInBytes"=0,"agprefTextureCreationBytes"=149131264,"gartUsedBytes"=89722880,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=0,"surfaceBufferPageInBytes"=0,"iosurfaceTextureCreationBytes"=1686585344,"finishCLWaitTime"=0,"finishVideoWaitTime"=76578,"contextCLCount"=0,"Device Unit 3 Utilization %"=0,"freeSurfaceBackingWaitTime"=0,"swapCompleteGLWaitTime"=0,"orphanedNonReusableSysMemoryBytes"=0,"inUseVidMemoryBytes"=0,"agpTextureCreationBytes"=26886144,"stdTextureCreationBytes"=0,"agpTextureCreationCount"=200,"stdTextureCreationCount"=0,"surfaceSetShapeIdleWaitTime"=0,"gartFreeBytes"=1520889856,"hardwareSubmitWaitTime"=0,"bufferFlipCount"=0,"textureVolunteerUnloadBytes"=0,"swapComplete2DWaitTime"=0,"surfaceBufferPageOutBytes"=0,"Device Utilization %"=0,"hardwareWaitTime"=1908693730,"contextVideoCount"=3,"freeSurfaceSwapBufferWaitTime"=0,"orphanedNonReusableVidMemoryCount"=0}
      "InternalStatistics" = {}
      "VRAM,totalMB" = 1536
      "MetalCoalesce" = 0
      "IOGVACodec" = "Gen75"
      "IOPCIClassMatch" = "0x03000000&0xff000000"
    }


+-o com_kairos_driver_DuetDisplayAccelerator  <class com_kairos_driver_DuetDisplayAccelerator, id 0x100000496, !registered, !matched, active, busy 0, retain 5>
    {
      "IOClass" = "com_kairos_driver_DuetDisplayAccelerator"
      "IOVABundleName" = "AppleVADriver"
      "IOVARendererID" = 18446744072182956033
      "IOGLBundleName" = ""
      "AccelCaps" = 3
      "IOAccelRevision" = 2
      "IODVDBundleName" = "AppleVADriver"
    }

@svenatkins
Copy link

hw.model: Macmini2,1

+-o Intel915  <class Intel915, id 0x100000289, registered, matched, active, busy 0 (1 ms), retain 27>
    {
      "IOClass" = "Intel915"
      "CFBundleIdentifier" = "com.apple.driver.AppleIntelGMA950"
      "IOProviderClass" = "IOPCIDevice"
      "IOCFPlugInTypes" = {"ACCF0000-0000-0000-0000-000a2789904e"="AppleIntelGMA950GA.plugin"}
      "IOPCIClassMatch" = "0x03000000&0xff000000"
      "IOSourceVersion" = "0.0.0.0.0"
      "AccelCaps" = 3
      "IOProbeScore" = 100
      "PerformanceStatistics" = {"removeFromGARTWaitTime"=0,"command2DBytesPerSample"=456,"commandBytesPerSample"=19267888,"surfacePageOutBytesPerSample"=0,"dataBufferCount"=0,"freeContextBufferCLWaitTime"=0,"textureCount"=692,"surfaceReadLockIdleWaitTime"=0,"freeDataBufferWaitTime"=0,"freeCommandBuffer2DWaitTime"=0,"contextDVDSwitchCount"=0,"finishAll2DWaitTime"=18446744072002287327,"textureWaitTime"=0,"IOSurfacePageOutBytesPerSample"=0,"gartMapInBytesPerSample"=223305728,"dataBytesPerSample"=0,"swapBytesPerSample"=859992,"surfaceCount"=6,"clientGLWaitTime"=0,"texturePageOutWaitTime"=0,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=10079964,"gartMapOutBytesPerSample"=219074560,"finishDVDWaitTime"=0,"texturePageInBytesPerSample"=18446744071714938880,"gartCacheBytes"=33554432,"freeContextBuffer2DWaitTime"=0,"volatileSurfaceCount"=0,"contextGLSwitchCount"=8113,"freeCommandBufferGLWaitTime"=0,"context2DCount"=1,"commandDVDBytesPerSample"=0,"bufferSwapCount"=7781,"vramFreeBytes"=31797248,"finish2DWaitTime"=0,"contextGLCount"=11,"gartSizeBytes"=268435456,"context2DSwitchCount"=15,"gartUsedBytes"=27697152,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=3095388,"texturePageInWaitTime"=0,"finishCLWaitTime"=0,"submitStamp"=33691045,"freeContextBufferGLWaitTime"=4494,"contextCLCount"=0,"swapCompleteGLWaitTime"=965050,"freeContextBufferDVDWaitTime"=0,"freeSurfaceBackingWaitTime"=0,"surfacePageInBytesPerSample"=0,"contextDVDCount"=0,"freeCommandBufferDVDWaitTime"=0,"surfaceSetShapeIdleWaitTime"=0,"freeCommandBufferCLWaitTime"=0,"gartFreeBytes"=240738304,"hardwareSubmitWaitTime"=0,"commandGLBytesPerSample"=12531336,"swapComplete2DWaitTime"=0,"swapCompleteDVDWaitTime"=0,"hardwareWaitTime"=1589431295,"lastReadStamp"=33691042,"freeSurfaceSwapBufferWaitTime"=0,"IOSurfacePageInBytesPerSample"=0,"contextCLSwitchCount"=0,"texturePageOutBytesPerSample"=0}
      "IOMatchCategory" = "IOAccelerator"
      "IOPCIPrimaryMatch" = "0x25828086 0x25928086 0x27728086 0x27A28086"
      "IODVDBundleName" = "AppleIntelGMA950VADriver"
      "SurfaceList" = ({"surfaceType"="2d","width"=992,"height"=40,"pid"=108},{"surfaceType"="gl","width"=1440,"height"=900,"pid"=88212},{"surfaceType"="gl","width"=784,"height"=608,"pid"=202},{"surfaceType"="gl","width"=1,"height"=1,"pid"=108})
      "IOAccelRevision" = 2
      "IOGLBundleName" = "AppleIntelGMA950GLDriver"
      "IOVARendererID" = 17301504
    }

@svenatkins
Copy link

hw.model: MacPro3,1

+-o AMDJuniperGraphicsAccelerator  <class AMDJuniperGraphicsAccelerator, id 0x100000326, registered, matched, active, busy 0 (0 ms), retain 22>
    {
      "IOClass" = "AMDJuniperGraphicsAccelerator"
      "dpm" = 1
      "IOKitDebug" = 0
      "AccelNativeDMARowByteAlignment" = 256
      "IOVARendererID" = 16908290
      "IODVDBundleName" = "AMDRadeonVADriver"
      "AccelCaps" = 15
      "IOGLBundleName" = "AMDRadeonX3000GLDriver"
      "IOProviderClass" = "IOPCIDevice"
      "ATIEnableWideBlitSupport" = Yes
      "IOProbeScore" = 200
      "SurfaceList" = ({"surfaceType"="ctx","width"=736,"height"=29,"pid"=137})
      "IOSourceVersion" = "0.0.0.0.0"
      "PerformanceStatisticsAccum" = {"removeFromGARTWaitTime"=0,"command2DBytesPerSample"=0,"swapCompleteVideoWaitTime"=0,"commandBytesPerSample"=0,"surfacePageOutBytesPerSample"=0,"HWChannel DMA | Commands Submitted"=0,"freeDataBufferGLWaitTime"=0,"freeCommandBufferVideoWaitTime"=0,"dataBufferCount"=0,"freeContextBufferCLWaitTime"=0,"textureCount"=18446744073709551594,"surfaceReadLockIdleWaitTime"=0,"freeDataBufferWaitTime"=0,"freeCommandBuffer2DWaitTime"=0,"HWChannel PM4 | Commands Completed"=0,"textureWaitTime"=0,"finishAll2DWaitTime"=0,"IOSurfacePageOutBytesPerSample"=0,"gartMapInBytesPerSample"=0,"HWChannel UVD | Commands Completed"=0,"dataBytesPerSample"=0,"swapBytesPerSample"=0,"surfaceCount"=31,"clientGLWaitTime"=0,"texturePageOutWaitTime"=0,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=0,"gartMapOutBytesPerSample"=0,"texturePageInBytesPerSample"=0,"gartCacheBytes"=33554432,"freeContextBuffer2DWaitTime"=0,"volatileSurfaceCount"=1,"contextGLSwitchCount"=0,"freeCommandBufferGLWaitTime"=0,"HWChannel PM4 | Commands Submitted"=0,"freeContextBufferVideoWaitTime"=0,"context2DCount"=3,"bufferSwapCount"=0,"vramFreeBytes"=1011082752,"contextGLCount"=2,"commandVideoBytesPerSample"=0,"finish2DWaitTime"=0,"gartSizeBytes"=18446744071562067968,"context2DSwitchCount"=0,"recoveryCount"=0,"HWChannel DMA | Commands Completed"=0,"gartUsedBytes"=23363584,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=0,"HWChannel UVD | Commands Submitted"=0,"texturePageInWaitTime"=0,"finishCLWaitTime"=0,"finishVideoWaitTime"=0,"freeContextBufferGLWaitTime"=0,"contextCLCount"=1,"swapCompleteGLWaitTime"=0,"freeSurfaceBackingWaitTime"=0,"contextVideoSwitchCount"=0,"surfacePageInBytesPerSample"=0,"surfaceSetShapeIdleWaitTime"=0,"freeCommandBufferCLWaitTime"=0,"gartFreeBytes"=2124120064,"hardwareSubmitWaitTime"=0,"bufferFlipCount"=0,"commandGLBytesPerSample"=0,"swapComplete2DWaitTime"=0,"contextVideoCount"=0,"hardwareWaitTime"=0,"freeSurfaceSwapBufferWaitTime"=0,"IOSurfacePageInBytesPerSample"=0,"contextCLSwitchCount"=0,"texturePageOutBytesPerSample"=0}
      "ATY,cbits" = 1114112
      "ATY,intrev" = 21
      "IOAccelRevision" = 2
      "IOCFPlugInTypes" = {"ACCF0000-0000-0000-0000-000a2789904e"="IOAccelerator2D.plugin"}
      "InternalStatisticsAccm" = {}
      "IOMatchCategory" = "IOAccelerator"
      "CFBundleIdentifier" = "com.apple.AMDRadeonX3000"
      "ATIUseTearingWideBlit" = No
      "PerformanceStatistics" = {"removeFromGARTWaitTime"=0,"command2DBytesPerSample"=0,"swapCompleteVideoWaitTime"=0,"commandBytesPerSample"=0,"surfacePageOutBytesPerSample"=517816320,"HWChannel DMA | Commands Submitted"=147,"freeDataBufferGLWaitTime"=0,"freeCommandBufferVideoWaitTime"=0,"dataBufferCount"=9,"freeContextBufferCLWaitTime"=0,"textureCount"=18446744073709551594,"surfaceReadLockIdleWaitTime"=0,"freeDataBufferWaitTime"=0,"freeCommandBuffer2DWaitTime"=0,"HWChannel PM4 | Commands Completed"=8134,"textureWaitTime"=0,"finishAll2DWaitTime"=0,"IOSurfacePageOutBytesPerSample"=0,"gartMapInBytesPerSample"=0,"HWChannel UVD | Commands Completed"=0,"dataBytesPerSample"=0,"swapBytesPerSample"=0,"surfaceCount"=31,"clientGLWaitTime"=544704,"texturePageOutWaitTime"=0,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=0,"gartMapOutBytesPerSample"=0,"texturePageInBytesPerSample"=159018496,"gartCacheBytes"=33554432,"freeContextBuffer2DWaitTime"=0,"volatileSurfaceCount"=1,"contextGLSwitchCount"=0,"freeCommandBufferGLWaitTime"=0,"HWChannel PM4 | Commands Submitted"=8134,"freeContextBufferVideoWaitTime"=0,"context2DCount"=3,"bufferSwapCount"=192,"vramFreeBytes"=1011082752,"contextGLCount"=2,"commandVideoBytesPerSample"=0,"finish2DWaitTime"=0,"gartSizeBytes"=18446744071562067968,"context2DSwitchCount"=0,"recoveryCount"=0,"HWChannel DMA | Commands Completed"=147,"gartUsedBytes"=23363584,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=0,"HWChannel UVD | Commands Submitted"=0,"texturePageInWaitTime"=0,"finishCLWaitTime"=0,"finishVideoWaitTime"=0,"freeContextBufferGLWaitTime"=0,"contextCLCount"=1,"swapCompleteGLWaitTime"=0,"freeSurfaceBackingWaitTime"=0,"contextVideoSwitchCount"=0,"surfacePageInBytesPerSample"=0,"surfaceSetShapeIdleWaitTime"=0,"freeCommandBufferCLWaitTime"=0,"gartFreeBytes"=2124120064,"hardwareSubmitWaitTime"=0,"bufferFlipCount"=0,"commandGLBytesPerSample"=0,"swapComplete2DWaitTime"=0,"contextVideoCount"=0,"hardwareWaitTime"=463202261,"freeSurfaceSwapBufferWaitTime"=0,"IOSurfacePageInBytesPerSample"=0,"contextCLSwitchCount"=0,"texturePageOutBytesPerSample"=517816320}
      "InternalStatistics" = {}
      "sensor-properties" = ({"zone"=<00000002>,"location"="GPU","name"="gpu-sensor","polling-period"=<0000000100000000>,"version"=<00000002>,"sample-period"=<0000000000989800>,"sensor-id"=<00000006>,"device_type"=<"gpu-sensor">,"reg"=<00000002>})
      "IOPCIMatch" = "0x68B81002 0x68B01002 0x68B11002 0x68A01002 0x68A11002"
      "GpuDebugPolicy" = 0
    }

@cgarman
Copy link

cgarman commented Nov 8, 2015

hw.model: MacPro5,1

+-o AMDCypressGraphicsAccelerator  <class AMDCypressGraphicsAccelerator, id 0x10000038d, registered, matched, active, busy 0 (0 ms), retain 698>
    {
      "IOClass" = "AMDCypressGraphicsAccelerator"
      "dpm" = 1
      "IOKitDebug" = 0
      "AccelNativeDMARowByteAlignment" = 256
      "IOVARendererID" = 16908290
      "IODVDBundleName" = "AMDRadeonVADriver"
      "AccelCaps" = 15
      "IOGLBundleName" = "AMDRadeonX3000GLDriver"
      "IOProviderClass" = "IOPCIDevice"
      "ATIEnableWideBlitSupport" = Yes
      "IOProbeScore" = 200
      "SurfaceList" = ({"surfaceType"="ctx","width"=1254,"height"=1344,"pid"=373},{"surfaceType"="ctx","width"=325,"height"=23,"pid"=3984},{"surfaceType"="ctx","width"=1543,"height"=1300,"pid"=2734},{"surfaceType"="ctx","width"=370,"height"=1289,"pid"=373},{"surfaceType"="ctx","width"=1010,"height"=663,"pid"=2734},{"surfaceType"="ctx","width"=1543,"height"=1278,"pid"=2734},{"surfaceType"="ctx","width"=449,"height"=430,"pid"=395},{"surfaceType"="ctx","width"=1543,"height"=1278,"pid"=2734},{"surfaceType"="ctx","width"=1543,"height"=1300,"pid"=2734},{"surfaceType"="ctx","width"=370,"height"=1214,"pid"=373})
      "IOSourceVersion" = "0.0.0.0.0"
      "PerformanceStatisticsAccum" = {"removeFromGARTWaitTime"=0,"orphanedNonReusableVidMemoryCount"=0,"orphanedReusableVidMemoryHitRate"=53,"command2DBytesPerSample"=0,"swapCompleteVideoWaitTime"=0,"commandBytesPerSample"=0,"surfacePageOutBytesPerSample"=0,"orphanedReusableSysMemoryHitRate"=0,"HWChannel DMA | Commands Submitted"=0,"freeDataBufferGLWaitTime"=0,"freeCommandBufferVideoWaitTime"=0,"dataBufferCount"=0,"freeContextBufferCLWaitTime"=0,"textureCount"=18446744073703748386,"surfaceReadLockIdleWaitTime"=0,"freeDataBufferWaitTime"=0,"freeCommandBuffer2DWaitTime"=0,"orphanedReusableSysMemoryBytes"=0,"orphanedReusableSysMemoryCount"=0,"HWChannel PM4 | Commands Completed"=3,"textureWaitTime"=0,"finishAll2DWaitTime"=0,"orphanedNonReusableSysMemoryCount"=0,"IOSurfacePageOutBytesPerSample"=0,"gartMapInBytesPerSample"=0,"HWChannel UVD | Commands Completed"=0,"dataBytesPerSample"=0,"swapBytesPerSample"=0,"surfaceCount"=999303,"clientGLWaitTime"=0,"texturePageOutWaitTime"=0,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=0,"gartMapOutBytesPerSample"=0,"texturePageInBytesPerSample"=0,"gartCacheBytes"=33554432,"freeContextBuffer2DWaitTime"=0,"volatileSurfaceCount"=112,"orphanedReusableVidMemoryBytes"=108134400,"contextGLSwitchCount"=0,"orphanedReusableVidMemoryCount"=6,"freeCommandBufferGLWaitTime"=0,"HWChannel PM4 | Commands Submitted"=4,"freeContextBufferVideoWaitTime"=0,"context2DCount"=3,"bufferSwapCount"=0,"orphanedNonReusableVidMemoryBytes"=0,"vramFreeBytes"=193261504,"contextGLCount"=132,"commandVideoBytesPerSample"=0,"finish2DWaitTime"=0,"gartSizeBytes"=2147483648,"context2DSwitchCount"=0,"recoveryCount"=0,"HWChannel DMA | Commands Completed"=0,"gartUsedBytes"=8650752,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=0,"HWChannel UVD | Commands Submitted"=0,"texturePageInWaitTime"=0,"finishCLWaitTime"=0,"finishVideoWaitTime"=0,"freeContextBufferGLWaitTime"=0,"contextCLCount"=2,"swapCompleteGLWaitTime"=0,"freeSurfaceBackingWaitTime"=0,"orphanedNonReusableSysMemoryBytes"=0,"contextVideoSwitchCount"=0,"surfacePageInBytesPerSample"=0,"surfaceSetShapeIdleWaitTime"=0,"freeCommandBufferCLWaitTime"=0,"gartFreeBytes"=2138832896,"hardwareSubmitWaitTime"=0,"bufferFlipCount"=0,"commandGLBytesPerSample"=0,"swapComplete2DWaitTime"=0,"contextVideoCount"=0,"hardwareWaitTime"=0,"freeSurfaceSwapBufferWaitTime"=0,"IOSurfacePageInBytesPerSample"=0,"contextCLSwitchCount"=0,"texturePageOutBytesPerSample"=0}
      "ATY,cbits" = 589824
      "ATY,intrev" = 2
      "IOAccelRevision" = 2
      "IOCFPlugInTypes" = {"ACCF0000-0000-0000-0000-000a2789904e"="IOAccelerator2D.plugin"}
      "InternalStatisticsAccm" = {}
      "IOMatchCategory" = "IOAccelerator"
      "CFBundleIdentifier" = "com.apple.AMDRadeonX3000"
      "ATIUseTearingWideBlit" = No
      "PerformanceStatistics" = {"removeFromGARTWaitTime"=0,"orphanedNonReusableVidMemoryCount"=0,"orphanedReusableVidMemoryHitRate"=53,"command2DBytesPerSample"=0,"swapCompleteVideoWaitTime"=0,"commandBytesPerSample"=0,"surfacePageOutBytesPerSample"=0,"orphanedReusableSysMemoryHitRate"=0,"HWChannel DMA | Commands Submitted"=0,"freeDataBufferGLWaitTime"=1606798306,"freeCommandBufferVideoWaitTime"=0,"dataBufferCount"=6,"freeContextBufferCLWaitTime"=0,"textureCount"=18446744073703748386,"surfaceReadLockIdleWaitTime"=0,"freeDataBufferWaitTime"=0,"freeCommandBuffer2DWaitTime"=0,"orphanedReusableSysMemoryBytes"=0,"orphanedReusableSysMemoryCount"=0,"HWChannel PM4 | Commands Completed"=6363563,"textureWaitTime"=0,"finishAll2DWaitTime"=0,"orphanedNonReusableSysMemoryCount"=0,"IOSurfacePageOutBytesPerSample"=18446744072909164544,"gartMapInBytesPerSample"=0,"HWChannel UVD | Commands Completed"=0,"dataBytesPerSample"=0,"swapBytesPerSample"=0,"surfaceCount"=999303,"clientGLWaitTime"=18446744072348514661,"texturePageOutWaitTime"=0,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=315298347,"gartMapOutBytesPerSample"=0,"texturePageInBytesPerSample"=1626288128,"gartCacheBytes"=33554432,"freeContextBuffer2DWaitTime"=0,"volatileSurfaceCount"=139,"orphanedReusableVidMemoryBytes"=108134400,"contextGLSwitchCount"=0,"orphanedReusableVidMemoryCount"=6,"freeCommandBufferGLWaitTime"=0,"HWChannel PM4 | Commands Submitted"=6363563,"freeContextBufferVideoWaitTime"=0,"context2DCount"=3,"bufferSwapCount"=27659,"orphanedNonReusableVidMemoryBytes"=0,"vramFreeBytes"=193261504,"contextGLCount"=132,"commandVideoBytesPerSample"=0,"finish2DWaitTime"=0,"gartSizeBytes"=2147483648,"context2DSwitchCount"=0,"recoveryCount"=0,"HWChannel DMA | Commands Completed"=0,"gartUsedBytes"=8646656,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=1408654,"HWChannel UVD | Commands Submitted"=0,"texturePageInWaitTime"=0,"finishCLWaitTime"=0,"finishVideoWaitTime"=0,"freeContextBufferGLWaitTime"=0,"contextCLCount"=2,"swapCompleteGLWaitTime"=6305163,"freeSurfaceBackingWaitTime"=0,"orphanedNonReusableSysMemoryBytes"=0,"contextVideoSwitchCount"=0,"surfacePageInBytesPerSample"=0,"surfaceSetShapeIdleWaitTime"=0,"freeCommandBufferCLWaitTime"=0,"gartFreeBytes"=2138836992,"hardwareSubmitWaitTime"=0,"bufferFlipCount"=0,"commandGLBytesPerSample"=0,"swapComplete2DWaitTime"=0,"contextVideoCount"=0,"hardwareWaitTime"=18446744073346533459,"freeSurfaceSwapBufferWaitTime"=0,"IOSurfacePageInBytesPerSample"=2122207232,"contextCLSwitchCount"=0,"texturePageOutBytesPerSample"=1417490432}
      "InternalStatistics" = {}
      "sensor-properties" = ({"zone"=<00000002>,"location"="GPU","name"="gpu-sensor","polling-period"=<0000000100000000>,"version"=<00000002>,"sample-period"=<0000000000989800>,"sensor-id"=<00000006>,"device_type"=<"gpu-sensor">,"reg"=<00000002>})
      "IOPCIMatch" = "0x68981002 0x68991002"
      "GpuDebugPolicy" = 0
    }

@adamkmccarthy
Copy link

hw.model: MacBookPro11,1

+-o IntelAccelerator  <class IntelAccelerator, id 0x1000003b4, registered, matched, active, busy 0 (0 ms), retain 111>
    {
      "IOClass" = "IntelAccelerator"
      "IOPCIClassMatch" = "0x03000000&0xff000000"
      "AccelCaps" = 15
      "IODVDBundleName" = "AppleIntelHD5000GraphicsVADriver"
      "IOGLBundleName" = "AppleIntelHD5000GraphicsGLDriver"
      "IOProviderClass" = "IOPCIDevice"
      "CompactVRAM" = 1
      "ForceDisableEDRAM" = 0
      "MetalPluginName" = "AppleIntelHD5000GraphicsMTLDriver"
      "IOProbeScore" = 1000
      "SurfaceList" = ({"surfaceType"="ctx","width"=2560,"height"=1600,"pid"=192})
      "IOSourceVersion" = "0.0.0.0.0"
      "PerformanceStatisticsAccum" = {"orphanedReusableVidMemoryHitRate"=0,"texturePageOutBytes"=0,"swapCompleteVideoWaitTime"=0,"orphanedReusableSysMemoryHitRate"=52,"dataBufferCount"=0,"oolTexturePageInBytes"=0,"textureCount"=2300,"iosurfaceTextureCreationCount"=0,"surfaceReadLockIdleWaitTime"=0,"freeDataBufferWaitTime"=0,"orphanedReusableSysMemoryBytes"=995348480,"ioSurfaceReadOutBytes"=0,"agprefTextureCreationCount"=0,"orphanedReusableSysMemoryCount"=791,"finishAll2DWaitTime"=0,"orphanedNonReusableSysMemoryCount"=0,"surfaceTextureCreationCount"=0,"ioSurfacePageOutBytes"=0,"surfaceBufferReadOutBytes"=0,"textureReadOutBytes"=0,"gartMapInBytesPerSample"=0,"dataBytesPerSample"=0,"swapBytesPerSample"=0,"surfaceCount"=9082,"Device Unit 0 Utilization %"=0,"clientGLWaitTime"=0,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=0,"gartMapOutBytesPerSample"=0,"ioSurfacePageInBytes"=0,"gartCacheBytes"=134217728,"volatileSurfaceCount"=0,"vramEvictionWaitTime"=0,"oolTextureCreationBytes"=0,"freeToAllocGPUAddressWaitTime"=0,"oolTextureCreationCount"=0,"Device Unit 1 Utilization %"=0,"orphanedReusableVidMemoryCount"=0,"orphanedReusableVidMemoryBytes"=0,"context2DCount"=3,"inUseSysMemoryBytes"=18446744072714203136,"bufferSwapCount"=0,"orphanedNonReusableVidMemoryBytes"=0,"contextGLCount"=12,"finish2DWaitTime"=0,"Device Unit 2 Utilization %"=0,"gartSizeBytes"=1610612736,"recoveryCount"=0,"stdTexturePageInBytes"=0,"agprefTextureCreationBytes"=0,"gartUsedBytes"=565760000,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=0,"surfaceBufferPageInBytes"=0,"iosurfaceTextureCreationBytes"=0,"finishCLWaitTime"=0,"finishVideoWaitTime"=0,"contextCLCount"=0,"freeSurfaceBackingWaitTime"=0,"Device Unit 3 Utilization %"=0,"swapCompleteGLWaitTime"=0,"orphanedNonReusableSysMemoryBytes"=0,"inUseVidMemoryBytes"=0,"agpTextureCreationBytes"=0,"stdTextureCreationBytes"=0,"agpTextureCreationCount"=0,"stdTextureCreationCount"=0,"surfaceSetShapeIdleWaitTime"=0,"gartFreeBytes"=1044852736,"hardwareSubmitWaitTime"=0,"bufferFlipCount"=0,"textureVolunteerUnloadBytes"=0,"swapComplete2DWaitTime"=0,"surfaceBufferPageOutBytes"=0,"contextVideoCount"=0,"hardwareWaitTime"=0,"freeSurfaceSwapBufferWaitTime"=0,"orphanedNonReusableVidMemoryCount"=0}
      "IOAccelRevision" = 2
      "IOCFPlugInTypes" = {"ACCF0000-0000-0000-0000-000a2789904e"="IOAccelerator2D.plugin"}
      "IOPCIPrimaryMatch" = "0x0d268086 0x0a268086 0x0a2e8086 0x0d228086 0x04128086"
      "InternalStatisticsAccm" = {}
      "IOMatchCategory" = "IOAccelerator"
      "CFBundleIdentifier" = "com.apple.driver.AppleIntelHD5000Graphics"
      "IOGVAScaler" = "Gen75"
      "PanicOnGPUHang" = 0
      "IOGVABGRAEnc" = "Gen75"
      "PerformanceStatistics" = {"orphanedReusableVidMemoryHitRate"=0,"texturePageOutBytes"=0,"swapCompleteVideoWaitTime"=0,"orphanedReusableSysMemoryHitRate"=52,"dataBufferCount"=18446744073709551612,"oolTexturePageInBytes"=18446744071704637440,"Device Utilization % at cur p-state"=2,"iosurfaceTextureCreationCount"=1792,"textureCount"=2300,"freeDataBufferWaitTime"=0,"surfaceReadLockIdleWaitTime"=0,"orphanedReusableSysMemoryBytes"=995348480,"ioSurfaceReadOutBytes"=182710272,"agprefTextureCreationCount"=9,"orphanedReusableSysMemoryCount"=791,"finishAll2DWaitTime"=0,"orphanedNonReusableSysMemoryCount"=0,"surfaceTextureCreationCount"=877,"ioSurfacePageOutBytes"=0,"surfaceBufferReadOutBytes"=7512064,"textureReadOutBytes"=0,"gartMapInBytesPerSample"=0,"dataBytesPerSample"=0,"swapBytesPerSample"=0,"surfaceCount"=9082,"Device Unit 0 Utilization %"=2,"clientGLWaitTime"=8304587,"surfaceCopyInWaitTime"=0,"surfaceCopyOutWaitTime"=0,"gartMapOutBytesPerSample"=0,"ioSurfacePageInBytes"=1723707392,"gartCacheBytes"=134217728,"volatileSurfaceCount"=0,"vramEvictionWaitTime"=0,"oolTextureCreationBytes"=986947584,"freeToAllocGPUAddressWaitTime"=0,"oolTextureCreationCount"=3942,"Device Unit 1 Utilization %"=0,"orphanedReusableVidMemoryCount"=0,"orphanedReusableVidMemoryBytes"=0,"context2DCount"=3,"inUseSysMemoryBytes"=18446744072714203136,"bufferSwapCount"=793,"orphanedNonReusableVidMemoryBytes"=0,"contextGLCount"=12,"finish2DWaitTime"=0,"Device Unit 2 Utilization %"=0,"gartSizeBytes"=1610612736,"recoveryCount"=0,"stdTexturePageInBytes"=1974272,"agprefTextureCreationBytes"=430080,"gartUsedBytes"=565760000,"surfaceWriteLockIdleWaitTime"=0,"finishGLWaitTime"=0,"surfaceBufferPageInBytes"=50049024,"iosurfaceTextureCreationBytes"=698777600,"finishCLWaitTime"=0,"finishVideoWaitTime"=0,"contextCLCount"=0,"Device Unit 3 Utilization %"=0,"freeSurfaceBackingWaitTime"=0,"swapCompleteGLWaitTime"=0,"orphanedNonReusableSysMemoryBytes"=0,"inUseVidMemoryBytes"=0,"agpTextureCreationBytes"=104022016,"stdTextureCreationBytes"=697712640,"agpTextureCreationCount"=830,"stdTextureCreationCount"=3303,"surfaceSetShapeIdleWaitTime"=0,"gartFreeBytes"=1044852736,"hardwareSubmitWaitTime"=0,"bufferFlipCount"=0,"textureVolunteerUnloadBytes"=0,"swapComplete2DWaitTime"=0,"surfaceBufferPageOutBytes"=0,"Device Utilization %"=1,"hardwareWaitTime"=91213026,"contextVideoCount"=0,"freeSurfaceSwapBufferWaitTime"=0,"orphanedNonReusableVidMemoryCount"=0}
      "InternalStatistics" = {}
      "VRAM,totalMB" = 1536
      "MetalCoalesce" = 0
      "IOGVACodec" = "Gen75"
      "IOVARendererID" = 17301508
    }

@aaronvandoren
Copy link

Were you ever able to calculate GPU processor usage % for GPU drivers that don't have the properties 'Device Utilization %' or 'GPU Core Utilization'?

@chockenberry
Copy link
Author

chockenberry commented Aug 1, 2019

Here is the code I landed on:

NSNumber *gpuUtilization = nil;
if (performanceProperties[@"Device Utilization %"]) {
	// chockenberry
	// iMac15,1 - AMDRadeonX4000
	
	// alanhussey
	// MacBookPro11,3 - GeForce
	// MacBookPro11,3 - AppleIntelHD5000Graphics
	
	// poreed
	// MacBookPro8,2 - AMDRadeonX3000
	
	// tkrajacic
	// MacBookPro10,1 - GeForce
	// MacBookPro10,1 - AppleIntelHD4000Graphics
	
	// therayjay
	// Macmini6,2 - AppleIntelHD4000Graphics
	
	// hotchkiss
	// MacbookPro11,5 - AMDRadeonX4000
	// MacbookPro11,5 - AppleIntelHD5000Graphics

	// owlboy
	// iMac12,2 - AMDRadeonX3000
	
	// bmike
	// MacBook8,1 - AppleIntelBDWGraphics
	
	// chrisbulow
	// MacBookPro11,1 - AppleIntelHD5000Graphics
	
	// eportlance
	// iMac12,2 - AMDRadeonX3000
	
	// bmike
	// Macmini6,2 - AppleIntelHD4000Graphics
	
	// bmike
	// MacPro6,1 - AMDRadeonX4000
	// MacPro6,1 - AMDRadeonX4000
	
	// eportlance
	// MacBookPro12,1 - AppleIntelBDWGraphics
	
	// msealand
	// iMac13,2 - GeForce
	
	// samsonjs
	// iMac15,1 - AMDRadeonX4000
	// iMac15,1 - AppleIntelHD5000Graphics
	
	// bmike
	// MacBookPro10,2
	
	// JackoPlane
	// iMac13,2 - AppleIntelHD4000Graphics
	
	gpuUtilization = performanceProperties[@"Device Utilization %"];
}
else if (performanceProperties[@"GPU Core Utilization"]) {
	// chockenberry
	// MacPro4,1 - GeForceTesla
	// MacPro4,1 - GeForceTesla
	
	// alanhussey
	// MacBookPro11,3 (value = 120000000)
	
	// thejayray
	// Macmini4,1 - GeForceTesla
	
	// samsonjs
	// MacBookPro6,2 - GeForceTesla
	
	// ender3
	// Macmini3,1 - GeForce
	
	// bmike
	// iMac13,2 - GeForce
	
	// msealand
	// iMac13,2 - GeForce (value = 0)
	
	// JackoPLane
	// iMac13,2 - GeForce (value = 60000000)
	
	gpuUtilization = performanceProperties[@"GPU Core Utilization"];
}
else {
	// no GPU statistics
	
	// IntelHD3000
	
	// chockenberry
	// MacBookAir4,2 - AppleIntelHD3000Graphics
	
	// poreed
	// MacBookPro8,2 - AppleIntelHD3000Graphics
	
	// tobiasmboelz
	// iMac11,1 - ATIRadeonX2000
	
	// owlboy
	// iMac12,2 - AppleIntelHD3000Graphics
	
	// commandtab
	// MacBookPro11,2 - AppleIntelHD5000Graphics (???)

	// owlboy
	// Macmini5,1 - AppleIntelHD3000Graphics
	
	// eportelance
	// iMac12,2 - AppleIntelHD3000Graphics
	
	// bmike
	// Macmini5,3 - AppleIntelHD3000Graphics
	
	// samsonjs
	// MacBook1,1 - AppleIntelGMA950
	
	// bmike
	// iMac13,2 - AppleIntelHD4000Graphics
}
if (gpuUtilization) {
	long rawGpuUtilization = gpuUtilization.longValue;
	if (rawGpuUtilization > 100) {
		rawGpuUtilization = rawGpuUtilization / 10000000; // scale down "GPU Core Utilization"
	}
        ...

@aaronvandoren
Copy link

Thank you so much!

This is almost exactly what I've landed on as well. Turns out some newer GPU drivers also have a property called "GPU Activity(%)" which is pretty much the same as "Device Utilization %".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment