You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Shine uses a very coarse dependency analysis: memory accesses are tracked for entire allocations. By contrast, Lift tries to reason about data sharing based on the functional patterns used in the program.
Lift generates less barriers in multiple tests for this reason. However, a more precise dependency analysis could easily be integrated into Shine's algorithm. I observed that finer-grained tracking of accessed intervals would even enable Shine to generate less
barriers than Lift in a couple of tests. This would be achieved by adjusting the analysis data to include the intervals accessed by each thread as a symbolic natural number for each thread.
The text was updated successfully, but these errors were encountered:
Issue related to #18 and remaining after #80.
Shine uses a very coarse dependency analysis: memory accesses are tracked for entire allocations. By contrast, Lift tries to reason about data sharing based on the functional patterns used in the program.
Lift generates less barriers in multiple tests for this reason. However, a more precise dependency analysis could easily be integrated into Shine's algorithm. I observed that finer-grained tracking of accessed intervals would even enable Shine to generate less
barriers than Lift in a couple of tests. This would be achieved by adjusting the analysis data to include the intervals accessed by each thread as a symbolic natural number for each thread.
The text was updated successfully, but these errors were encountered: