profiler - memory coalescing question

hi,

Currently i’m trying to improve memory coalescence in my code.

i have the following output line repeat multiple times for Global Memory access pattern:

line 25   Global Memory Access Pattern' as 'Global Load L2 Transactions/Access = <b>5</b>, Ideal Transactions/Access = <b>4</b>[ 3520 L2 transactions for 704 total executions ]
line 25   Global Memory Access Pattern' as 'Global Load L2 Transactions/Access = <b>32</b>, Ideal Transactions/Access = <b>4</b>[ 22528 L2 transactions for 704 total executions ]
line 25   Global Memory Access Pattern' as 'Global Load L2 Transactions/Access = <b>32</b>, Ideal Transactions/Access = <b>8</b>[ 22528 L2 transactions for 704 total executions ]

line 25:

int mode = mData.Mode[loopIndex][threadId];

before i changed to line to coalescing design the profiler had only one output

line 25   Global Memory Access Pattern' as 'Global Load L2 Transactions/Access = <b>32</b>, Ideal Transactions/Access = <b>4</b>[ 22528 L2 transactions for 704 total executions ]-=

i have known to have repetitions when templates are involved, but this line is not used in templates at all.
why there there are multiple outputs in the profiler for the line?

and why it is not fully coalesced?
while other line in the same function are coalesced ( ‘Global Load L2 Transactions/Access = 4.3, ideal 4’) , while using the same design of [loopId][threadId]