0

I have a kernel that writes results to a global buffer; these results are never read back into the kernel (they are processed by another kernel at a later time).

So, I don't want this data sitting in the L1 cache if I can help it. Is there a way of ensuring that it is not cached? I need L1 for another array that is frequently read from and written to. This array is around 4kb, so it should stay in the L1 cache.

Jacko
  • 12,665
  • 18
  • 75
  • 126
  • Maybe you can try atomic increment with zero of integer representation of data or just wish for the driver to see the dependency between kernels and optimize the writes. Atomics are slow, even with totally parallel write/read. – huseyin tugrul buyukisik Sep 20 '17 at 09:06
  • For the Array that you want to ENSURE remains local, it seems like a better idea to just allocate that into LDS. EDIT: It seems like GCN's LDS is both larger AND faster than L1. – Dragontamer5788 Sep 21 '17 at 22:24

0 Answers0