Use the API provided functions for clear, copy, and update operations, and refrain from implementing your own versions. Drivers have been optimized and tuned to ensure that these operations work with the best possible performance.
Enable hardware ‘fast clear’ values as defined per API:
In DirectX 12, clear values are defined at resource creation as an argument with ID3D12Device::CreateCommittedResource.
For Vulkan, use VK_ATTACHMENT_LOAD_OP_CLEAR and avoid using vkCmdClearColorImage.
Ensure horizontal alignment = 128b and vertical alignment = 64b.
Copy depth and stencil surfaces only as needed instead of copying both unconditionally; they are stored separately on Xᵉ-LP.
Batch blit and copy operations.