5. Otros

5.1. Coarrays

Varias instancias de ejecución en paralelo

program pi_sum
    integer, parameter:: limit = 1000
    integer:: i
    real:: pi[*]

    do i = this_image(), limit, num_images()
        pi = pi + (-1)**(i+1) / real( 2*i-1)
    end do
    sync all

    ! global barrier
    if (this_image() == 1) then
        do i = 2, num_images()
            pi = pi + pi[i]
        end do
        pi = pi * 4.0
        print *, "Result", pi
    end if

end program pi_sum

5.2. Medida del tiempo en ejecución cpu_time

real(REAL64):: t(2)

call cpu_time(t(1))
call test
call cpu_time(t(2))
print '("time iamax: ",G0)', t2-t1

5.3. Resources

5.3.1. OpenBlas

Para instalar OpenBlas debes seguir los siguientes pasos

Descargar fuente de Mpich y después

  1. ./configure

  2. make

  3. sudo make install

5.3.2. Plugin de identación para VIM

Tiene algunas teclas asignadas como son:

  • \= para identar todo el fichero fuente.

  • \c comentar la línea

  • \f cambiar flags del plugin de identado

  • \w cambiar (toggle) identación de línea o fichero completo

Note Para más instrucciones puedes hacer '$ findent --vim_help'

He seguido las instrucciones de Source Forge que es el proyecto de Willem Vermin, pero parece que también existe otro proyecto del mismo autor en Identación con FIndent

vimroot=$HOME/.vim
mkdir -p $vimroot/plugin
findent --vim_findent > $vimroot/plugin/findent.vim
mkdir -p $vimroot/after/indent
findent --vim_fortran > $vimroot/after/indent/fortran.vim