[gem5-users] Re: Load dependency in gem5

2022-10-07 Thread Eliot Moss
On 10/7/2022 1:30 PM, Aritra Bagchi wrote: Hi Eliot, Thanks for the response. The unrolled loop, despite having the same dependency across "j", can send multiple loads simultaneously. So the limitation might not be due to that dependency across "j" of different iterations. But in the

[gem5-users] Re: Load dependency in gem5

2022-10-07 Thread Aritra Bagchi
Hi Eliot, Thanks for the response. The unrolled loop, despite having the same dependency across "j", can send multiple loads simultaneously. So the limitation might not be due to that dependency across "j" of different iterations. But in the non-unrolled loop, the control dependency is there,

[gem5-users] Re: Load dependency in gem5

2022-10-07 Thread Eliot Moss
On 10/7/2022 1:13 PM, Eliot Moss wrote: On 10/7/2022 1:03 PM, Aritra Bagchi wrote: Hi all, Any suggestions on this are most helpful. Thanks and regards, Aritra My guess is that it is because the non-unrolled loop has a test of i against 1000 before each access to A[i]. That test guards the

[gem5-users] Re: Load dependency in gem5

2022-10-07 Thread Eliot Moss
On 10/7/2022 1:03 PM, Aritra Bagchi wrote: Hi all, Any suggestions on this are most helpful. Thanks and regards, Aritra My guess is that is is because the non-unrolled loop has a test of i against 1000 before each access to A[i]. That test guards the load, so must be completed before the

[gem5-users] Re: Load dependency in gem5

2022-10-07 Thread Aritra Bagchi
Hi all, Any suggestions on this are most helpful. Thanks and regards, Aritra On Thu, Oct 6, 2022 at 6:01 PM Aritra Bagchi wrote: > Hi all, > > *for (i = 0; i < 1000; i++) {* > * j = j + A[ i ]* > *}* > > Suppose such a loop program is executed on gem5 (single-core execution, > with O3