Skip to content

OpenMP 5.1 tile construct  #25

Open
@Lyphion

Description

@Lyphion

In OpenMP 5.1 the tile construct for loops was introduced to allow loop tiling. The structure is a bit different from OpenACC and not all compilers support it until now. Some implementation exist.

OpenACC:

!$acc parallel loop tile(BLOCK1,BLOCK2) independent
do j = 1, n
  do i = 1, n
    do k = 1, n
      c(i,j) = c(i,j)+a(i,k)*b(k,j)
    end do
  end do
end do

OpenMP:

!$omp target teams loop 
!$omp tile sizes(BLOCK1,BLOCK2)
do j = 1, n
  do i = 1, n
    do k = 1, n
      c(i,j) = c(i,j)+a(i,k)*b(k,j)
    end do
  end do
end do
!$omp end tile
!$omp end target teams loop

Is it possible to add the functionality for better and easier migration?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions