Do managed texture in Apple silicon essentially function as shared textures?

MTLStorageModeManaged textures requires blit passes to synchronize the CPU and GPU according to the doc here.

Since in Apple Silicon macs, there is just a single unified memory architecture, do we still need to synchronize? does the texture really exist in two copies in the memory? or is it just in order to provide code compatibility with Intel mac? (and the texture are essentially shared texture under the hood?)

answering myself - according to the documentation here: https://developer.apple.com/documentation/metal/resource_fundamentals/synchronizing_a_managed_resource

In a unified memory model, Metal may ignore synchronization calls completely because it only creates a single memory allocation for the resource.

also according to https://developer.apple.com/documentation/metal/resource_fundamentals/choosing_a_resource_storage_mode_for_intel_and_amd_gpus

In a unified memory model, a resource with an MTLStorageMode.managed mode resides in system memory accessible to both the CPU and the GPU.

Still, looking here: Choosing a Resource Storage Mode for Apple GPUs it is not clear what is the distinction between shared and managed textures on Apple GPUs (in fact managed textures are not even mentioned in the documentation, despite being used by some system APIs). It is still not clear for me for instance, why it is impossible to create an IOSurface backed shared texture, but it is possible to create a managed one.

Do managed texture in Apple silicon essentially function as shared textures?
 
 
Q