Mudanças entre as edições de "Timing"

De WikiLICC
Ir para: navegação, pesquisa
m
m
Linha 10: Linha 10:
 
  allocate( y(len) ,stat=ierr)
 
  allocate( y(len) ,stat=ierr)
 
  allocate( z(len) ,stat=ierr)
 
  allocate( z(len) ,stat=ierr)
 
+
 
  do j=1,10
 
  do j=1,10
 
  timing = secnds(0.0)
 
  timing = secnds(0.0)

Edição das 21h58min de 19 de junho de 2012

Testando vetorização:

! http://goparallel.sourceforge.net/optimizing-loops-vectorization/
program Vectorization
use portlib
real(4),dimension(:),allocatable  ::  x,y,z
integer                           ::  len=110000000
real(4)                           ::  timing

allocate( x(len) ,stat=ierr)
allocate( y(len) ,stat=ierr)
allocate( z(len) ,stat=ierr)

do j=1,10
timing = secnds(0.0)
do i=1,len
  z(i)=sqrt(x(i))+sqrt(y(i))
end do
timing = secnds(timing)*1000
print *,' Timing =',timing,'/1000 s'
end do
end program