ue /metal texture memory management// Occupancy

https://developer.apple.com/documentation/metal/setting_resource_storage_modes/choosing_a_resource_storage_mode_in_macos

https://developer.apple.com/documentation/metal/setting_resource_storage_modes/choosing_a_resource_storage_mode_in_ios_and_tvos

GMetalForceIOSTexturesShared

StorageModeShared

StorageModePrivate

rt用private

可以硬件开启lossless compression

xcode可以查看

可以降低带宽和footprint

 

 你要是不改 ue就是 默认都是shared 不知道他是出于什么考虑

 

还有metal fp32那件事。。。真是尴尬 目测要ue5才能改好  一半的alu呢

 

 

有些情况的低occupancy是不好的 可能因为资源被耗尽的一种 wait 

occupancy是对thread数量的统计

latency长的要switch thread来hide这种开销 所以在某些情况下  occupancy高意味着并行thread高 是可取的

在某些情况下occupancy 低 但是 gpu 各部分 utilization很高 所以不是资源exaust 也是ok的

 https://developer.apple.com/documentation/metal/optimizing_performance_with_the_gpu_counters_instrument/finding_your_app_s_gpu_shader_occupancy?language=objc

优化应该取决于counter和测试结果的验证

posted on 2021-01-14 21:32  minggoddess  阅读(138)  评论(0编辑  收藏  举报