Forum Discussion
I have tried this a few times for my complex kernels and every time, without exception, it resulted in lower performance. The only case I could achieve higher performance by disabling the burst interleaving and performing manual buffer placement was for the stream benchmark which is a very simple kernel. It is possible that in certain cases, if the read and write rate are equal, you might be able to get higher performance by disabling burst interleaving. However, for cases where the read and write rate are NOT identical, it is probably best to use interleaving since if you don't, the access with higher rate might fully saturate the bandwidth the bank it is assigned to, while the one with lower rate might under-utilize the bandwidth of its own bank, while with interleaving, the total bandwidth will be shared between them. With respect to your 3rd scenario, I don't think the effect of burst interleaving on it will be any different from the first scenario.
At the end of the day, you should probably test this on a case by case basis; there is probably no rule of thumb for when to disable burst interleaving and when to keep it.