================================================================================ ================================================================================ ======= INSTRUCCIONES DE UTILIZACIÓN DE LA SUBRUTINA SRV$Get_CpuTime() ======== ================================================================================ ================================================================================ Archivos que componen el Kit: modcpu.txt --------> Estas instrucciones modcpu_openvms.for --------> El código de la subrutina para OpenVMS con Fortran 77 modcpu_true64unix.for --------> El código de la subrutina para True64Unix con f90 modcpu_gfortran.for --------> El código de la subrutina para WXP-Linux con Gfortran UTILIZACIÓN DE LA SUBRUTINA DESDE UN PROGRAMA FORTRAN ===================================================== c------------------------------------------------------------------------------ c------------------------------------------------------------------------------ c MI_PROGRAMA.FOR c------------------------------------------------------------------------------ c------------------------------------------------------------------------------ implicit real*8 (a-h,o-z) call SRV$Get_CpuTime(itim1) ... ... ... ... ... call SRV$Get_CpuTime(itim2) timed=dfloat(itim2-itim1)/.1d+03 write(6,'(a,d,a)') ' Tiempo de CPU consumido =',timed,' segundos' end COMPILACIÓN Y LINKADO CON DIGITAL FORTRAN 77 EN OpenVMS ======================================================= Se recomienda a cada estudiante que abra en su cuenta un subdirectorio nuevo (por ejemplo [.CPU]) y que copie allí el código de la subrutina y los ficheros adicionales. Esto es: ... entrar en ZEUS ... $ create/dir [.cpu] $ set def [.cpu] $ copy disk$alu:[m_master.soft.cpu]*.* [] El programa mi_programa.for que usa esta subrutina, se compila y linka en la forma: $ for mi_programa $ for modcpu_openvms/object=modcpu.obj $ link mi_programa+modcpu Existe una versión de esta subrutina en una librería en ZEUS que puede ser utilizada directamente por todos los usuarios, "linkando" en la forma: $ link mi_programa+'LMNAD Observaciones (OpenVMS) ----------------------- 1) OpenVMS no distingue entre mayúsculas y minúsculas en el nombre de los archivos (en realidad sólo utiliza mayúsculas, pero acepta las minúsculas como equivalentes). COMPILACIÓN Y LINKADO CON COMPAQ FORTRAN 90 EN True64Unix ========================================================= Los archivos deben copiarse desde la página web de la asignatura. La subrutina y el programa mi_programa.for se pueden compilar por separado y linkar conjuntamente en la forma: > f90 mi_programa.for -d_lines -O4 -c -o mi_programa.o > f90 modcpu_true64unix.for -d_lines -O4 -c -o modcpu.o > f90 mi_programa.o modcpu.o -O4 -o mi_programa La subrutina y el programa mi_programa.for también se pueden compilar y linkar conjuntamente en la forma: > f90 mi_programa.for modcpu_true64unix.for -d_lines -O4 -o mi_programa Observaciones (True64Unix) -------------------------- 1) El sistema operativo distinga entre mayúsculas y minúsculas en el nombre de los archivos. COMPILACIÓN Y LINKADO CON GFORTRAN EN WINDOWS O EN LINUX ======================================================== Los archivos deben copiarse desde la página web de la asignatura. La subrutina y el programa mi_programa.for se pueden compilar por separado y linkar conjuntamente en la forma: > gfortran mi_programa.f -fdollar-ok -O2 -c -o mi_programa.o > gfortran modcpu_gfortran.f -fdollar-ok -O2 -c -o modcpu.o > gfortran mi_programa.o modcpu.o -O2 -o mi_programa La subrutina y el programa mi_programa.for también se pueden compilar y linkar conjuntamente en la forma: > gfortran mi_programa.f modcpu_fgortran.f -fdollar-ok -O2 -o mi_programa Observaciones (WXP o Linux) -------------------------- 1) Es posible que el sistema operativo distinga entre mayúsculas y minúsculas en el nombre de los archivos.