Does it possible to combine several binaryarchives with the same GPUFamily together

Hi,

  Thank you for the wonderful feature BinaryArchive. It really helps a lot.
   I want to confirm with you if there is anyway to combine  several binaryarchives with the same GPUFamily together.
  For example, in my project, each pso will saved to a binary archive. So I got binaryArchive_1.metallib, binaryArchive_2.metallib, binary_Archive_3.metallib and so on. All of them based on GPUFamily5.
  I want to combine them together, for example, combine them to binary_Archive_all.metallib. But seems there is no way to do that.
  I have tried below command:

xcrun -sdk iphoneos metal-lipo -create binaryArchive_1005.metallib binaryArchive_100514.6.metallib -o binaryArchive_all.metallib But seems it is used to combine binaryarchives with different GPUFamily.

    I think this feature is very important, because in games, we need to run and run, to make sure the binaryarchive is fullly enough to cover all the pso.

Thanks, Shine

Answered by in 695349022

Hi Shinewang,

I'm glad you are finding the Metal Binary Archive API useful for your app!

Our recommendation for best practice is to store all your pipeline state objects into the same MTLBinaryArchive directly from your process.

MTLBinaryArchives are thread safe and enable you to keep appending to them even between different application launches. This gives you the flexibility of being able to build your pipelines in parallel (or asynchronously) safely and continue to store new ones, without having to manually stitch them together afterwards. As a consequence, there is no tool that would allow you to merge Metal Binary Archives offline for the same GPU family.

Accepted Answer

Hi Shinewang,

I'm glad you are finding the Metal Binary Archive API useful for your app!

Our recommendation for best practice is to store all your pipeline state objects into the same MTLBinaryArchive directly from your process.

MTLBinaryArchives are thread safe and enable you to keep appending to them even between different application launches. This gives you the flexibility of being able to build your pipelines in parallel (or asynchronously) safely and continue to store new ones, without having to manually stitch them together afterwards. As a consequence, there is no tool that would allow you to merge Metal Binary Archives offline for the same GPU family.

Does it possible to combine several binaryarchives with the same GPUFamily together
 
 
Q