Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

terminat0r



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Код:
 
program test
implicit none
 
REAL time_begin, time_end
integer, parameter :: n=2000;
REAL(8) :: a(n,n), b(n,n), c(n,n),as(n,n), bs(n,n)
integer, parameter :: m = 1
integer :: i, j, k, l
 
call RANDOM_NUMBER(as)
call RANDOM_NUMBER(bs)
 
 c=0.d0
 a=as
 b=bs
 
call cpu_time(time_begin)
 
do i = 1,m
    a(1,1) = a(1,1) + 0.1d0
    c = MATMUL(a,b)
enddo
call cpu_time(time_end)
PRINT *, 'Time, MATMUL: ',time_end-time_begin, c(1,1)
 
 
 c=0.d0
 a=as
 b=bs
 
call cpu_time(time_begin)
 
do i = 1,m
    a(1,1) = a(1,1) + 0.1d0
     c=0.d0
    do j=1,n
      do k=1,n
        do l=1,n
          c(l,k) =c(l,k)+ a(l,j)*b(j,k)
        enddo
      enddo
    enddo
 
enddo
call cpu_time(time_end)
PRINT *, 'Time, MAT MUL custom: ',time_end-time_begin, c(1,1)
 
 
 c=0.d0
 a=as
 b=bs
 
call cpu_time(time_begin)
do i = 1,m
    a(1,1) = a(1,1) + 0.1d0
    call dgemm('n','n',n, n, n, 1.0d0, a, n, b, n, 0.0d0, c, n)
enddo
call cpu_time(time_end)
PRINT *, 'dgemm: ',time_end-time_begin, c(1,1)
 
end program  
 

 
>ifort -c -O3 -march=native  -mcmodel=medium test1.f90
>ifort -o test1.x test1.o -Wl,--start-group $MKLROOT/lib/intel64/libmkl_intel_lp64.a $MKLROOT/lib/intel64/libmkl_sequential.a $MKLROOT/lib/intel64/libmkl_core.a -Wl,--end-group -mcmodel=medium
 

Всего записей: 2084 | Зарегистр. 31-03-2002 | Отправлено: 15:29 25-11-2011 | Исправлено: terminat0r, 17:37 25-11-2011
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru