COBOLD has been used on the SunFire machines``fire1'' and ``fire2'' in Uppsala with compiler version ``Sun WorkShop 6 update 2 Fortran 95 6.2 2001/05/15''. The previous version was not able to compile COBOLD properly. Information about Fortran and the Sun compiler can be found on the Sun Forte page under ``documentation''. Important switches are:
-openmp
: Enable OpenMP.
-fast -xvector=yes/no
: General optimization.
On the Sun the -fast
option switches on more or less all optimization
features of the compiler. That works reasonable well. However, during the
compilation of gasinter_routines.f90
(and only there)
the switch -xvector=no
is needed!
-inline=...
: Optimization: Routines that should be
inlined:
rhd_hyd_module.F90
: rhd_hyd_avg
,
rhd_hyd_upwind
,
rhd_hyd_pred0
,
rhd_hyd_predm
,
rhd_hyd_predp
,
rhd_hyd_alpha
,
rhd_hyd_constanteq
,
rhd_hyd_minmodeq
,
rhd_hyd_minmod
,
rhd_hyd_vanleereq
,
rhd_hyd_vanleer
,
rhd_hyd_superbeeeq
,
rhd_hyd_superbee
,
rhd_hyd_ppeq
,
rhd_hyd_pp
,
rhd_hyd_hdflux
,
rhd_lhdrad_module.F90
:
rhd_rad3d_raylhd
,
rhd_rad3d_solve
,
rhd_rad3d_solveeq
,
rhd_shortrad_module.F90
:
rhd_shortrad_operator
.
-Drhd_shortrad_operator_l01=2
: Optimization:
short characteristics operator with masks (weights).
See Sect. 3.4.
-Drhd_shortrad_formal_l01=1
: Optimization:
split loop for exp(-dtau) computation into two loops.
See Sect. 3.4.
-Drhd_shortrad_dir1_l01=1
: Optimization:
Transpose arrays and use routine rhd_shortrad_dir3
for rays in x1 direction.
See Sect. 3.4.
-Drhd_hyd_entropyfix_p01=1
: Optimization: version with masks (weights).
See Sect. 3.4.