четверг, 7 апреля 2011 г.

Время работы программы

Задача: узнать сколько точно требуется времени для выполнения программы

Решение: подпрограмма CPU_TIME

Иногда полезно знать сколько времени занимает выполнение всех операторов в программе. Для этого (и не только, конечно) в фортране есть встроенная подпрограмма CPU_TIME.

"Подпрограмма CPU_TIME(time) возвращает процессорное время time, тип которого - REAL(4). Единицы измерения времени - секунды; после десятичной точки time содержит две значащих цифры."  
О. В. Бартеньев, Современный ФОРТРАН, стр.202
Размещаем вызов подпрограммы в начале программы после блока неисполняемых операторов (блока объявления переменных) и в конце, перед end. Печатаем на экран (или в файл) разницу результатов вызовов подпрограмм, используя разные переменны. В коде выглядит примерно так:

real(4) :: start_time, finish_time
call cpu_time(start_time)
<Вычисления>
call cpu_time(finish_time)
print *, 'Время вычислений = ', finish_time - start_time

end
О. В. Бартеньев, Современный ФОРТРАН, стр.202

Комментариев нет:

Отправить комментарий

Как перевести UV в направление и скорость ветра? How to convert wind UV-components to direction and velocity?

 Всё просто.  def uv2dir(u, v):     '''     Источник:     https://github.com/blaylockbk/Ute_WRF/blob/master/functions/wind_calc...