Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge CSE and CDE , thus improving detection of redundancies #2306

Open
FabioLuporini opened this issue Feb 10, 2024 · 0 comments
Open

Merge CSE and CDE , thus improving detection of redundancies #2306

FabioLuporini opened this issue Feb 10, 2024 · 0 comments

Comments

@FabioLuporini
Copy link
Contributor

The CDE sub-pass detects lowered index derivatives and can operate across Clusters (using a clusters.Queue), whereas CSE is applied to individual Clusters.

We should enhance CSE to be as smart as CDE and tweak things such that we can get rid of CDE and use CSE everywhere instead

Why is this needed? consider:

// Cluster 0
B = ... A ... 

// Cluster 1 
for i = 0 to N
    r += ... B ...

// Cluster 2
C = ... r ... A ...

First of all, we observe that the data dependencies here prevent any sort of topological reordering. Then, we see that A appears twice -- in both Cluster 0 and Cluster 2. We want to improve CSE such that it can catch A across these Clusters.

@FabioLuporini FabioLuporini changed the title Merge CSE and CDE Merge CSE and CDE , thus improving detection effectiveness Feb 10, 2024
@FabioLuporini FabioLuporini changed the title Merge CSE and CDE , thus improving detection effectiveness Merge CSE and CDE , thus improving detection of redundancies Feb 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant