сделать запись (...., позиция = добавить) быстрее в Фортране - PullRequest
0 голосов
/ 14 ноября 2018

Я знаю, что на вопросы по оптимизации сложно ответить.Однако я постараюсь получить ответ здесь:

Я пытаюсь записать некоторые значения в файл в довольно сложной программе трассировки лучей (более 100+ подпрограмм). Это происходит внутри подпрограммы, как показано ниже.

Сама программа очень быстрая, но как только я достигаю аппенди, она резко замедляется.Есть ли способ, которым я могу сделать это быстрее?

subroutine iterate_e_ring(i, k)
use otherfile, only: other_subroutine;
implicit none
integer(I2B), intent(in) :: i, k   ! element number and iteration counter
real(BW), dimension(3) :: converge  !Convergence check by Ole Müller
character*150 :: filename

call other_subroutine(x,y,z)
converge(1)= ...
converge(2)= ...
converge(3)= ...


   open(unit=120,file='converge.txt',action='write',position="append")
            write(120, *) real(converge(:))
   close(unit=120)

end subroutine iterate_e_ring; 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...