v++
Папка для загрузок, и пропущенный баг с настройками визуализатора.
This commit is contained in:
894
Downloads/bugreport_1733152707/acrred21/v3/acrred21.for
Normal file
894
Downloads/bugreport_1733152707/acrred21/v3/acrred21.for
Normal file
@@ -0,0 +1,894 @@
|
||||
|
||||
! *** generated by SAPFOR with version 2373 and build date: Nov 22 2024 12:15:43
|
||||
! *** Enabled options ***:
|
||||
! *** shadow optimization
|
||||
! *** save SPF directives
|
||||
! *** maximum shadow width is 100 percent
|
||||
! *** generated by SAPFOR
|
||||
program acrred21
|
||||
|
||||
! TESTING OF THE acrredOSS CLAUSE.
|
||||
! DISTRIBUTED ARRAY A(N,M) IS TO HAVE DIFFERENT
|
||||
! FLOW-DEP-LENGTH ON BOTH SIDES
|
||||
print *, '===START OF acrred21========================'
|
||||
|
||||
! --------------------------------------------------
|
||||
call acrred2101()
|
||||
|
||||
! --------------------------------------------------
|
||||
call acrred2102()
|
||||
|
||||
! --------------------------------------------------
|
||||
call acrred2103()
|
||||
|
||||
! -------------------------------------------------
|
||||
call acrred2104()
|
||||
|
||||
! -------------------------------------------------
|
||||
call acrred2105()
|
||||
|
||||
! -------------------------------------------------
|
||||
! call acrred2106()
|
||||
!
|
||||
! --------------------------------------------------
|
||||
! call acrred2107()
|
||||
!
|
||||
! --------------------------------------------------
|
||||
! call acrred2108()
|
||||
!
|
||||
! --------------------------------------------------
|
||||
! call acrred2109()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2110()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2111()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2112()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2113()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2114()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2115()
|
||||
! -------------------------------------------------
|
||||
print *, '=== END OF acrred21 ========================= '
|
||||
end
|
||||
|
||||
|
||||
! ---------------------------------------------acrred2101
|
||||
subroutine acrred2101 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*10 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj,isumc,isuma
|
||||
intrinsic min
|
||||
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2101'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
isumc = 0
|
||||
isuma = 0
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i + 1,j) + c(i,j + 1) + c(i - 1,j) + c(i,j - 1)
|
||||
isumc = isumc + c(i,j)
|
||||
enddo
|
||||
enddo
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
do j = 2,15
|
||||
do i = 2,15
|
||||
a(i,j) = a(i + 1,j) + a(i,j + 1) + a(i - 1,j) + a(i,j - 1)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
isuma = isuma + a(i,j)
|
||||
enddo
|
||||
enddo
|
||||
if (nloopi .eq. 1000 .and. isuma .eq. isumc) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! ---------------------------------------------acrred2102
|
||||
subroutine acrred2102 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*10 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj,iproda,iprodc
|
||||
intrinsic min
|
||||
tname = 'acrred2102'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
iproda = 1
|
||||
iprodc = 1
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i + 1,j)
|
||||
iprodc = iprodc * c(i,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
do j = 2,15
|
||||
do i = 2,15
|
||||
a(i,j) = a(i + 1,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
iproda = iproda * a(i,j)
|
||||
enddo
|
||||
enddo
|
||||
if (nloopi .eq. 1000 .and. iproda .eq. iprodc) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -----------------------------------------acrred2103
|
||||
subroutine acrred2103 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*10 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: imaxc,imaxa
|
||||
intrinsic max
|
||||
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2103'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
imaxc = c(1,1)
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i - 1,j) + c(i,j + 1)
|
||||
imaxc = max (c(i,j),imaxc)
|
||||
enddo
|
||||
enddo
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
imaxa = a(1,1)
|
||||
do j = 2,15
|
||||
do i = 2,15
|
||||
a(i,j) = a(i - 1,j) + a(i,j + 1)
|
||||
imaxa = max (a(i,j),imaxa)
|
||||
enddo
|
||||
enddo
|
||||
if (imaxa .eq. imaxc) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! ------------------------------------------acrred2104
|
||||
subroutine acrred2104 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*10 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: iminc,imina
|
||||
intrinsic min
|
||||
tname = 'acrred2103'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
iminc = c(1,1)
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i - 1,j) + c(i,j + 1)
|
||||
iminc = min (c(i,j),iminc)
|
||||
enddo
|
||||
enddo
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
imina = a(1,1)
|
||||
do j = 2,15
|
||||
do i = 2,15
|
||||
a(i,j) = a(i - 1,j) + a(i,j + 1)
|
||||
imina = min (a(i,j),imina)
|
||||
enddo
|
||||
enddo
|
||||
if (imina .eq. iminc) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! ------------------------------------------acrred2105
|
||||
subroutine acrred2105 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*10 :: tname
|
||||
integer :: coorc(2),coora(2),imaxc,imaxa,nnl
|
||||
|
||||
!$SPF ANALYSIS(PROCESS_PRIVATE(coorc_io_l0))
|
||||
integer :: coorc_io_l0(2)
|
||||
|
||||
! DVM$ SHADOW A( 0:1,1:1 )
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2105'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
imaxc = c(1,1)
|
||||
lcoor = 2
|
||||
coorc(1) = 1
|
||||
coorc(2) = 1
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i,j - 1) + c(i + 1,j)
|
||||
if (c(i,j) .gt. imaxc) then
|
||||
imaxc = c(i,j)
|
||||
coorc(1) = i
|
||||
coorc(2) = j
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(0:1,1:0))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
imaxa = a(1,1)
|
||||
lcoor = 2
|
||||
coora(1) = 1
|
||||
coora(2) = 1
|
||||
!$SPF ANALYSIS (REDUCTION (maxloc(imaxa,coora,2)))
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
a(i,j) = a(i,j - 1) + a(i + 1,j)
|
||||
if (a(i,j) .gt. imaxa) then
|
||||
imaxa = a(i,j)
|
||||
coora(1) = i
|
||||
coora(2) = j
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
coorc_io_l0 = coorc
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
print *, imaxc,imaxa,coorc_io_l0(1),coorc_io_l0(2),coora(1),coora(
|
||||
&2)
|
||||
if (imaxc .eq. imaxa .and. coora(1) .eq. coorc_io_l0(1) .and. coor
|
||||
&c_io_l0(2) .eq. coora(2)) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2106
|
||||
subroutine acrred2106 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*7 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (2:2,2:2):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2106'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i + 2,j) + c(i,j + 2) + c(i + 2,j) + c(i - 2,j) +
|
||||
& c(i,j - 2)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(2:2,2:2))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i + 2,j) + a(i,j + 2) + a(i + 2,j) + a(i - 2,j) +
|
||||
& a(i,j - 2)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2107
|
||||
subroutine acrred2107 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (2:2,2:2):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2107'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i + 2,j) + c(i,j + 2) + c(i,j - 2)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(0:2,2:2))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i + 2,j) + a(i,j + 2) + a(i,j - 2)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2108
|
||||
subroutine acrred2108 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*7 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (2:2,2:2):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2108'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i - 1,j) + c(i,j - 1) + c(i - 2,j) + c(i + 2,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(2:2,2:0))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i - 1,j) + a(i,j - 1) + a(i - 2,j) + a(i + 2,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2109
|
||||
subroutine acrred2109 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (2:2,0:2):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2109'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i,j + 2) + c(i + 1,j) + c(i + 2,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(2:2,0:2))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i,j + 2) + a(i + 1,j) + a(i + 2,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2110
|
||||
subroutine acrred2110 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (3:3,3:3):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2110'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 4,13
|
||||
do j = 4,13
|
||||
c(i,j) = c(i + 1,j) + c(i,j + 2) + c(i + 3,j) + c(i,j - 3) +
|
||||
& c(i - 2,j) + c(i,j - 1)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(3:3,3:3))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 4,13
|
||||
do i = 4,13
|
||||
a(i,j) = a(i + 1,j) + a(i,j + 2) + a(i + 3,j) + a(i,j - 3) +
|
||||
& a(i - 2,j) + a(i,j - 1)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2111
|
||||
subroutine acrred2111 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (3:3,0:3):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2111'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i,j) + c(i,j + 1)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(0:0,0:1))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i,j) + a(i,j + 1)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! --------------------------------------------acrred2112
|
||||
subroutine acrred2112 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*7 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (0:3,3:3):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2112'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i,j) + c(i + 1,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(0:1,0:0))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i,j) + a(i + 1,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! --------------------------------------------acrred2113
|
||||
subroutine acrred2113 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (3:3,3:0):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2113'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 4,13
|
||||
do j = 4,13
|
||||
c(i,j) = c(i,j - 3) + c(i + 3,j) + c(i - 3,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(3:3,3:0))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 4,13
|
||||
do i = 4,13
|
||||
a(i,j) = a(i,j - 3) + a(i + 3,j) + a(i - 3,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! --------------------------------------------acrred2114
|
||||
subroutine acrred2114 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (3:0,3:3):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2114'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 4,13
|
||||
do j = 4,13
|
||||
c(i,j) = c(i - 3,j) + c(i,j + 3)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(3:0,3:3))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 4,13
|
||||
do i = 4,13
|
||||
a(i,j) = a(i - 3,j) + a(i,j + 3)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! --------------------------------------------acrred2115
|
||||
subroutine acrred2115 ()
|
||||
integer ,parameter:: n = 59,m = 59,nl = 1000
|
||||
character*7 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (11:11,11:11):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2115'
|
||||
allocate(a(59,59),c(59,59))
|
||||
nnl = 1000
|
||||
call serial2(c,59,59,1000)
|
||||
do i = 12,48
|
||||
do j = 12,48
|
||||
c(i,j) = c(i + 11,j) + c(i,j + 10) + c(i + 9,j) + c(i,j - 11
|
||||
&) + c(i - 10,j) + c(i,j - 9)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,59
|
||||
do i = 1,59
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(11:11,11:11))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 12,48
|
||||
do i = 12,48
|
||||
a(i,j) = a(i + 11,j) + a(i,j + 10) + a(i + 9,j) + a(i,j - 11
|
||||
&) + a(i - 10,j) + a(i,j - 9)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -----------------------------------------------
|
||||
subroutine serial2 (ar, n, m, nl)
|
||||
integer :: ar(n,m)
|
||||
integer :: nl
|
||||
intent(in) m,n,nl
|
||||
intent(out) ar
|
||||
do i = 1,n
|
||||
do j = 1,m
|
||||
ar(i,j) = nl + i + j
|
||||
enddo
|
||||
enddo
|
||||
end
|
||||
|
||||
subroutine ansyes (name)
|
||||
character*7 :: name
|
||||
intent(in) name
|
||||
print *, name,' - complete'
|
||||
end
|
||||
|
||||
subroutine ansno (name)
|
||||
character*7 :: name
|
||||
intent(in) name
|
||||
print *, name,' - ***error'
|
||||
end
|
||||
|
||||
894
Downloads/bugreport_1733152707/acrred21/v3/m1/acrred21.for
Normal file
894
Downloads/bugreport_1733152707/acrred21/v3/m1/acrred21.for
Normal file
@@ -0,0 +1,894 @@
|
||||
|
||||
! *** generated by SAPFOR with version 2373 and build date: Nov 22 2024 12:15:43
|
||||
! *** Enabled options ***:
|
||||
! *** shadow optimization
|
||||
! *** save SPF directives
|
||||
! *** maximum shadow width is 100 percent
|
||||
! *** generated by SAPFOR
|
||||
program acrred21
|
||||
|
||||
! TESTING OF THE acrredOSS CLAUSE.
|
||||
! DISTRIBUTED ARRAY A(N,M) IS TO HAVE DIFFERENT
|
||||
! FLOW-DEP-LENGTH ON BOTH SIDES
|
||||
print *, '===START OF acrred21========================'
|
||||
|
||||
! --------------------------------------------------
|
||||
call acrred2101()
|
||||
|
||||
! --------------------------------------------------
|
||||
call acrred2102()
|
||||
|
||||
! --------------------------------------------------
|
||||
call acrred2103()
|
||||
|
||||
! -------------------------------------------------
|
||||
call acrred2104()
|
||||
|
||||
! -------------------------------------------------
|
||||
call acrred2105()
|
||||
|
||||
! -------------------------------------------------
|
||||
! call acrred2106()
|
||||
!
|
||||
! --------------------------------------------------
|
||||
! call acrred2107()
|
||||
!
|
||||
! --------------------------------------------------
|
||||
! call acrred2108()
|
||||
!
|
||||
! --------------------------------------------------
|
||||
! call acrred2109()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2110()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2111()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2112()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2113()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2114()
|
||||
!
|
||||
! -------------------------------------------------
|
||||
! call acrred2115()
|
||||
! -------------------------------------------------
|
||||
print *, '=== END OF acrred21 ========================= '
|
||||
end
|
||||
|
||||
|
||||
! ---------------------------------------------acrred2101
|
||||
subroutine acrred2101 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*10 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj,isumc,isuma
|
||||
intrinsic min
|
||||
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2101'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
isumc = 0
|
||||
isuma = 0
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i + 1,j) + c(i,j + 1) + c(i - 1,j) + c(i,j - 1)
|
||||
isumc = isumc + c(i,j)
|
||||
enddo
|
||||
enddo
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
do j = 2,15
|
||||
do i = 2,15
|
||||
a(i,j) = a(i + 1,j) + a(i,j + 1) + a(i - 1,j) + a(i,j - 1)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
isuma = isuma + a(i,j)
|
||||
enddo
|
||||
enddo
|
||||
if (nloopi .eq. 1000 .and. isuma .eq. isumc) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! ---------------------------------------------acrred2102
|
||||
subroutine acrred2102 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*10 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj,iproda,iprodc
|
||||
intrinsic min
|
||||
tname = 'acrred2102'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
iproda = 1
|
||||
iprodc = 1
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i + 1,j)
|
||||
iprodc = iprodc * c(i,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
do j = 2,15
|
||||
do i = 2,15
|
||||
a(i,j) = a(i + 1,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
iproda = iproda * a(i,j)
|
||||
enddo
|
||||
enddo
|
||||
if (nloopi .eq. 1000 .and. iproda .eq. iprodc) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -----------------------------------------acrred2103
|
||||
subroutine acrred2103 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*10 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: imaxc,imaxa
|
||||
intrinsic max
|
||||
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2103'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
imaxc = c(1,1)
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i - 1,j) + c(i,j + 1)
|
||||
imaxc = max (c(i,j),imaxc)
|
||||
enddo
|
||||
enddo
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
imaxa = a(1,1)
|
||||
do j = 2,15
|
||||
do i = 2,15
|
||||
a(i,j) = a(i - 1,j) + a(i,j + 1)
|
||||
imaxa = max (a(i,j),imaxa)
|
||||
enddo
|
||||
enddo
|
||||
if (imaxa .eq. imaxc) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! ------------------------------------------acrred2104
|
||||
subroutine acrred2104 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*10 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: iminc,imina
|
||||
intrinsic min
|
||||
tname = 'acrred2103'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
iminc = c(1,1)
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i - 1,j) + c(i,j + 1)
|
||||
iminc = min (c(i,j),iminc)
|
||||
enddo
|
||||
enddo
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
imina = a(1,1)
|
||||
do j = 2,15
|
||||
do i = 2,15
|
||||
a(i,j) = a(i - 1,j) + a(i,j + 1)
|
||||
imina = min (a(i,j),imina)
|
||||
enddo
|
||||
enddo
|
||||
if (imina .eq. iminc) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! ------------------------------------------acrred2105
|
||||
subroutine acrred2105 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*10 :: tname
|
||||
integer :: coorc(2),coora(2),imaxc,imaxa,nnl
|
||||
|
||||
!$SPF ANALYSIS(PROCESS_PRIVATE(coorc_io_l0))
|
||||
integer :: coorc_io_l0(2)
|
||||
|
||||
! DVM$ SHADOW A( 0:1,1:1 )
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2105'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
imaxc = c(1,1)
|
||||
lcoor = 2
|
||||
coorc(1) = 1
|
||||
coorc(2) = 1
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
c(i,j) = c(i,j - 1) + c(i + 1,j)
|
||||
if (c(i,j) .gt. imaxc) then
|
||||
imaxc = c(i,j)
|
||||
coorc(1) = i
|
||||
coorc(2) = j
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(0:1,1:0))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
imaxa = a(1,1)
|
||||
lcoor = 2
|
||||
coora(1) = 1
|
||||
coora(2) = 1
|
||||
!$SPF ANALYSIS (REDUCTION (maxloc(imaxa,coora,2)))
|
||||
do i = 2,15
|
||||
do j = 2,15
|
||||
a(i,j) = a(i,j - 1) + a(i + 1,j)
|
||||
if (a(i,j) .gt. imaxa) then
|
||||
imaxa = a(i,j)
|
||||
coora(1) = i
|
||||
coora(2) = j
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
coorc_io_l0 = coorc
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
print *, imaxc,imaxa,coorc_io_l0(1),coorc_io_l0(2),coora(1),coora(
|
||||
&2)
|
||||
if (imaxc .eq. imaxa .and. coora(1) .eq. coorc_io_l0(1) .and. coor
|
||||
&c_io_l0(2) .eq. coora(2)) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2106
|
||||
subroutine acrred2106 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*7 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (2:2,2:2):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2106'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i + 2,j) + c(i,j + 2) + c(i + 2,j) + c(i - 2,j) +
|
||||
& c(i,j - 2)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(2:2,2:2))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i + 2,j) + a(i,j + 2) + a(i + 2,j) + a(i - 2,j) +
|
||||
& a(i,j - 2)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2107
|
||||
subroutine acrred2107 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (2:2,2:2):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2107'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i + 2,j) + c(i,j + 2) + c(i,j - 2)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(0:2,2:2))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i + 2,j) + a(i,j + 2) + a(i,j - 2)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2108
|
||||
subroutine acrred2108 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*7 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (2:2,2:2):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2108'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i - 1,j) + c(i,j - 1) + c(i - 2,j) + c(i + 2,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(2:2,2:0))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i - 1,j) + a(i,j - 1) + a(i - 2,j) + a(i + 2,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2109
|
||||
subroutine acrred2109 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (2:2,0:2):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2109'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i,j + 2) + c(i + 1,j) + c(i + 2,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(2:2,0:2))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i,j + 2) + a(i + 1,j) + a(i + 2,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2110
|
||||
subroutine acrred2110 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (3:3,3:3):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2110'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 4,13
|
||||
do j = 4,13
|
||||
c(i,j) = c(i + 1,j) + c(i,j + 2) + c(i + 3,j) + c(i,j - 3) +
|
||||
& c(i - 2,j) + c(i,j - 1)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(3:3,3:3))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 4,13
|
||||
do i = 4,13
|
||||
a(i,j) = a(i + 1,j) + a(i,j + 2) + a(i + 3,j) + a(i,j - 3) +
|
||||
& a(i - 2,j) + a(i,j - 1)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -------------------------------------------acrred2111
|
||||
subroutine acrred2111 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (3:3,0:3):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2111'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i,j) + c(i,j + 1)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(0:0,0:1))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i,j) + a(i,j + 1)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! --------------------------------------------acrred2112
|
||||
subroutine acrred2112 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
character*7 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (0:3,3:3):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2112'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 3,14
|
||||
do j = 3,14
|
||||
c(i,j) = c(i,j) + c(i + 1,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(0:1,0:0))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 3,14
|
||||
do i = 3,14
|
||||
a(i,j) = a(i,j) + a(i + 1,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! --------------------------------------------acrred2113
|
||||
subroutine acrred2113 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (3:3,3:0):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2113'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 4,13
|
||||
do j = 4,13
|
||||
c(i,j) = c(i,j - 3) + c(i + 3,j) + c(i - 3,j)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(3:3,3:0))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 4,13
|
||||
do i = 4,13
|
||||
a(i,j) = a(i,j - 3) + a(i + 3,j) + a(i - 3,j)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! --------------------------------------------acrred2114
|
||||
subroutine acrred2114 ()
|
||||
integer ,parameter:: n = 16,m = 16,nl = 1000
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
character*7 :: tname
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (3:0,3:3):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2114'
|
||||
allocate(a(16,16),c(16,16))
|
||||
nnl = 1000
|
||||
call serial2(c,16,16,1000)
|
||||
do i = 4,13
|
||||
do j = 4,13
|
||||
c(i,j) = c(i - 3,j) + c(i,j + 3)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,16
|
||||
do i = 1,16
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(3:0,3:3))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 4,13
|
||||
do i = 4,13
|
||||
a(i,j) = a(i - 3,j) + a(i,j + 3)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! --------------------------------------------acrred2115
|
||||
subroutine acrred2115 ()
|
||||
integer ,parameter:: n = 59,m = 59,nl = 1000
|
||||
character*7 :: tname
|
||||
!$SPF ANALYSIS (PROCESS_PRIVATE (c))
|
||||
integer ,allocatable:: a(:,:),c(:,:)
|
||||
integer :: nloopi,nloopj
|
||||
intrinsic min
|
||||
|
||||
! DVM$ SHADOW (11:11,11:11):: A
|
||||
! DVM$ DISTRIBUTE (BLOCK,BLOCK) :: A
|
||||
tname = 'acrred2115'
|
||||
allocate(a(59,59),c(59,59))
|
||||
nnl = 1000
|
||||
call serial2(c,59,59,1000)
|
||||
do i = 12,48
|
||||
do j = 12,48
|
||||
c(i,j) = c(i + 11,j) + c(i,j + 10) + c(i + 9,j) + c(i,j - 11
|
||||
&) + c(i - 10,j) + c(i,j - 9)
|
||||
enddo
|
||||
enddo
|
||||
nloopi = 1000
|
||||
nloopj = 1000
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J)
|
||||
! DVM$ REGION
|
||||
! DVM$ ACTUAL (NLOOPI,NLOOPJ)
|
||||
do j = 1,59
|
||||
do i = 1,59
|
||||
a(i,j) = 1000 + i + j
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), acrredOSS (A(11:11,11:11))
|
||||
! DVM$ PARALLEL (J,I) ON A(I,J), REDUCTION (MIN(NLOOPI),MIN(NLOOPJ))
|
||||
do j = 12,48
|
||||
do i = 12,48
|
||||
a(i,j) = a(i + 11,j) + a(i,j + 10) + a(i + 9,j) + a(i,j - 11
|
||||
&) + a(i - 10,j) + a(i,j - 9)
|
||||
if (a(i,j) .ne. c(i,j)) then
|
||||
nloopi = min (nloopi,i)
|
||||
nloopj = min (nloopj,j)
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! DVM$ GET_ACTUAL (NLOOPI)
|
||||
! DVM$ END REGION
|
||||
if (nloopi .eq. 1000) then
|
||||
call ansyes(tname)
|
||||
else
|
||||
call ansno(tname)
|
||||
endif
|
||||
deallocate(a,c)
|
||||
end
|
||||
|
||||
|
||||
! -----------------------------------------------
|
||||
subroutine serial2 (ar, n, m, nl)
|
||||
integer :: ar(n,m)
|
||||
integer :: nl
|
||||
intent(in) m,n,nl
|
||||
intent(out) ar
|
||||
do i = 1,n
|
||||
do j = 1,m
|
||||
ar(i,j) = nl + i + j
|
||||
enddo
|
||||
enddo
|
||||
end
|
||||
|
||||
subroutine ansyes (name)
|
||||
character*7 :: name
|
||||
intent(in) name
|
||||
print *, name,' - complete'
|
||||
end
|
||||
|
||||
subroutine ansno (name)
|
||||
character*7 :: name
|
||||
intent(in) name
|
||||
print *, name,' - ***error'
|
||||
end
|
||||
|
||||
1010
Downloads/bugreport_1733152707/acrred21/v3/p1/acrred21.for
Normal file
1010
Downloads/bugreport_1733152707/acrred21/v3/p1/acrred21.for
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,34 @@
|
||||
Mon Dec 2 18:10:40 2024: create and connect to server socket with port 14733
|
||||
Mon Dec 2 18:10:40 2024: done
|
||||
Mon Dec 2 18:10:40 2024: start main communications
|
||||
Mon Dec 2 18:10:40 2024: wait for command from server
|
||||
Mon Dec 2 18:10:40 2024: done with message size 37
|
||||
Mon Dec 2 18:10:40 2024: decode message as analysis
|
||||
Mon Dec 2 18:10:40 2024: send results to server
|
||||
Mon Dec 2 18:10:40 2024: done with code 0
|
||||
Mon Dec 2 18:10:40 2024: wait for command from server
|
||||
Mon Dec 2 18:10:40 2024: done with message size 108
|
||||
Mon Dec 2 18:10:40 2024: decode message as analysis
|
||||
Mon Dec 2 18:10:40 2024: send results to server
|
||||
Mon Dec 2 18:10:40 2024: done with code 0
|
||||
Mon Dec 2 18:10:40 2024: wait for command from server
|
||||
Mon Dec 2 18:11:05 2024: done with message size 261
|
||||
Mon Dec 2 18:11:05 2024: decode message as analysis
|
||||
Mon Dec 2 18:11:07 2024: send results to server
|
||||
Mon Dec 2 18:11:07 2024: done with code 0
|
||||
Mon Dec 2 18:11:07 2024: wait for command from server
|
||||
Mon Dec 2 18:13:36 2024: done with message size 84
|
||||
Mon Dec 2 18:13:36 2024: decode message as analysis
|
||||
Mon Dec 2 18:13:36 2024: send results to server
|
||||
Mon Dec 2 18:13:36 2024: done with code 0
|
||||
Mon Dec 2 18:13:36 2024: wait for command from server
|
||||
Mon Dec 2 18:15:35 2024: done with message size 84
|
||||
Mon Dec 2 18:15:35 2024: decode message as analysis
|
||||
Mon Dec 2 18:15:35 2024: send results to server
|
||||
Mon Dec 2 18:15:35 2024: done with code 0
|
||||
Mon Dec 2 18:15:35 2024: wait for command from server
|
||||
Mon Dec 2 18:17:45 2024: done with message size 84
|
||||
Mon Dec 2 18:17:45 2024: decode message as analysis
|
||||
Mon Dec 2 18:17:45 2024: send results to server
|
||||
Mon Dec 2 18:17:45 2024: done with code 0
|
||||
Mon Dec 2 18:17:45 2024: wait for command from server
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"STATIC_SHADOW_ANALYSIS": true,
|
||||
"STATIC_PRIVATE_ANALYSIS": true,
|
||||
"FREE_FORM": false,
|
||||
"KEEP_DVM_DIRECTIVES": false,
|
||||
"KEEP_SPF_DIRECTIVES": true,
|
||||
"PARALLELIZE_FREE_LOOPS": false,
|
||||
"MAX_SHADOW_WIDTH": 100,
|
||||
"OUTPUT_UPPER": false,
|
||||
"TRANSLATE_MESSAGES": true,
|
||||
"KEEP_LOOPS_CLOSE_NESTING": false,
|
||||
"KEEP_GCOV": false,
|
||||
"ANALYSIS_OPTIONS": "",
|
||||
"DEBUG_PRINT_ON": false,
|
||||
"MPI_PROGRAM": false,
|
||||
"IGNORE_IO_SAPFOR": false,
|
||||
"KEEP_SPF_DIRECTIVES_AMONG_TRANSFORMATIONS": true,
|
||||
"PARSE_FOR_INLINE": false,
|
||||
"Precompilation": false,
|
||||
"SaveModifications": true,
|
||||
"GCOVLimit": 10,
|
||||
"DVMConvertationOptions": ""
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
E:/USERS/Olga/WORK/VISUAL_prj/VISUAL_ACROSS_REDUCTION/acrred21/v3/p1/visualiser_data/options/acrred21.for.dep
|
||||
@@ -0,0 +1 @@
|
||||
E:/USERS/Olga/WORK/VISUAL_prj/VISUAL_ACROSS_REDUCTION/acrred21/v3/visualiser_data/options/acrred21.for.dep
|
||||
Reference in New Issue
Block a user