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

OpenMP unroll and tile directive #120

Open
6 tasks
yanyh15 opened this issue Apr 25, 2022 · 1 comment
Open
6 tasks

OpenMP unroll and tile directive #120

yanyh15 opened this issue Apr 25, 2022 · 1 comment
Assignees

Comments

@yanyh15
Copy link
Member

yanyh15 commented Apr 25, 2022

OpenMP unroll directive:

The syntax of the unroll construct is as follows:  

#pragma omp unroll [clause] new-line 
    loop-nest
  
where loop-nest is a canonical loop nest and clause is one of the following:  

full 
partial[(unroll-factor)]
       
where unroll-factor is a positive integer expression that is a compile-time constant.
  • add the directive and clause to the ompparser (Xinyao)
  • add sage nodes for unroll directive, SgOmpUnrollStatement and its clauses (Patrick)
  • Enhance ompConstruction to connect ompparser to REX (Xinyao)
  • Implement the transformation using the unroll function from ROSE sageInterface (Patrick)
  • Create test cases and add to the CI test (Xinyao and Patrick)
  • add tiling support the same time using the same procedure since tile construct is also very simple and similar (Patrick and Xinyao)
@yanyh15 yanyh15 changed the title OpenMP unroll directive OpenMP unroll and tile directive Apr 25, 2022
@pflynn157
Copy link
Contributor

This should be fully working. Changes are in patrick/all

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants