tugas3-openMP/tugas3.f90
2022-11-14 18:24:44 +07:00

29 lines
728 B
Fortran

program sample3
use omp_lib
implicit real(8)(a-h,o-z)
parameter (n=4096)
real(8) a(n,n), c(n,n)
real(4) b(n,n)
real*8 t1, t2
a=0.0d0
call random_number(b)
call random_number(c)
write(6,50) ' Matrix Size = ', n
50 format(1x,a,i5)
t1 = omp_get_wtime()
!$OMP PARALLEL DO
do j=1,n
do k=1,n
do i=1,n
a(i,j)=a(i,j)+b(i,k)*c(k,j)
end do
end do
end do
!$OMP END PARALLEL DO
t2 = omp_get_wtime()
write(6, 60) ' Execution Time = ',t2-t1,' sec',' A(n,n) = ',a(n,n)
60 format(1x,a,f10.3,a,1x,a,d24.15)
stop
end