[Patch, fortran, RFC] PR 40958 Reduce size of module files

Salvatore Filippone filippone.salvatore@gmail.com
Mon Nov 28 15:51:00 GMT 2011


On Mon, Nov 28, 2011 at 4:00 PM, Paul Richard Thomas
<paul.richard.thomas@gmail.com> wrote:
> Dear All,
>
>
> If the quoted ratio between gfortran and NAG module file sizes are
> typical, this would be a very high return exercise.
>

I would say it is typical of any code which uses inheritance and
complex USE chains.
Besides my PSBLAS/MLD2P4, there is also ForTrilinos, in which I have a
hand but is mostly Damian's. Consider these listings:

CRAY 7.4.4

  -rw------- 1 sfilippo sfilippo 849948 Nov 16 00:57 FEPETRA_BLOCKMAP.mod
  -rw------- 1 sfilippo sfilippo 835192 Nov 16 00:57 FEPETRA_COMM.mod
  -rw------- 1 sfilippo sfilippo 855076 Nov 16 00:58 FEPETRA_CRSGRAPH.mod
  -rw------- 1 sfilippo sfilippo 889004 Nov 16 00:58 FEPETRA_DISTOBJECT.mod
  -rw------- 1 sfilippo sfilippo 858436 Nov 16 00:57 FEPETRA_EXPORT.mod
  -rw------- 1 sfilippo sfilippo 858960 Nov 16 00:58 FEPETRA_IMPORT.mod
  -rw------- 1 sfilippo sfilippo 857780 Nov 16 00:57 FEPETRA_MAP.mod
  -rw------- 1 sfilippo sfilippo 862604 Nov 16 00:57 FEPETRA_MPICOMM.mod
  -rw------- 1 sfilippo sfilippo 924624 Nov 16 00:58 FEPETRA_MULTIVECTOR.mod
  -rw------- 1 sfilippo sfilippo 875256 Nov 16 00:58 FEPETRA_OFFSETINDEX.mod
  -rw------- 1 sfilippo sfilippo 861212 Nov 16 00:57 FEPETRA_SERIALCOMM.mod
  -rw------- 1 sfilippo sfilippo 854124 Nov 16 00:58 FEPETRA_SRCDISTOBJECT.mod
  -rw------- 1 sfilippo sfilippo 842448 Nov 16 00:56 FOREPETRA.mod
  -rw------- 1 sfilippo sfilippo   4336 Nov 16 00:56
FORTRILINOS_ASSERTION_UTILITY.mod
  -rw------- 1 sfilippo sfilippo  43500 Nov 16 00:56 FORTRILINOS_ENUMS.mod
  -rw------- 1 sfilippo sfilippo  15644 Nov 16 00:56
FORTRILINOS_ENUM_WRAPPERS.mod
  -rw------- 1 sfilippo sfilippo   6876 Nov 16 00:56 FORTRILINOS_ERROR.mod
  -rw------- 1 sfilippo sfilippo  44620 Nov 16 00:57
FORTRILINOS_EXTERNAL_UTILS.mod
  -rw------- 1 sfilippo sfilippo   1496 Nov 16 00:56 FORTRILINOS_HERMETIC.mod
  -rw------- 1 sfilippo sfilippo  11172 Nov 16 00:56 FORTRILINOS_REF_COUNTER.mod
  -rw------- 1 sfilippo sfilippo  45436 Nov 16 00:56 FORTRILINOS_TABLE_MAN.mod
  -rw------- 1 sfilippo sfilippo   7296 Nov 16 00:56 FORTRILINOS_UNIVERSAL.mod
  -rw------- 1 sfilippo sfilippo   3624 Nov 16 00:56 FORTRILINOS_UTILS.mod


NAG:
  -rw-rw-r-- 1 sfilippo sfilippo   6875 28 nov 16.40 fepetra_blockmap.mod
  -rw-rw-r-- 1 sfilippo sfilippo  11298 28 nov 16.40 fepetra_comm.mod
  -rw-rw-r-- 1 sfilippo sfilippo   3706 28 nov 16.40 fepetra_crsgraph.mod
  -rw-rw-r-- 1 sfilippo sfilippo   9503 28 nov 16.41 fepetra_crsmatrix.mod
  -rw-rw-r-- 1 sfilippo sfilippo   4938 28 nov 16.40 fepetra_distobject.mod
  -rw-rw-r-- 1 sfilippo sfilippo   4234 28 nov 16.40 fepetra_export.mod
  -rw-rw-r-- 1 sfilippo sfilippo   4764 28 nov 16.40 fepetra_import.mod
  -rw-rw-r-- 1 sfilippo sfilippo   3826 28 nov 16.40 fepetra_map.mod
  -rw-rw-r-- 1 sfilippo sfilippo  10041 28 nov 16.40 fepetra_mpicomm.mod
  -rw-rw-r-- 1 sfilippo sfilippo  17976 28 nov 16.40 fepetra_multivector.mod
  -rw-rw-r-- 1 sfilippo sfilippo   3583 28 nov 16.40 fepetra_offsetindex.mod
  -rw-rw-r-- 1 sfilippo sfilippo  10184 28 nov 16.40 fepetra_serialcomm.mod
  -rw-rw-r-- 1 sfilippo sfilippo   2682 28 nov 16.40 fepetra_srcdistobject.mod
  -rw-rw-r-- 1 sfilippo sfilippo 343852 28 nov 16.40 forepetra.mod
  -rw-rw-r-- 1 sfilippo sfilippo   1086 28 nov 16.40
fortrilinos_assertion_utility.mod
  -rw-rw-r-- 1 sfilippo sfilippo   9904 28 nov 16.40 fortrilinos_enums.mod
  -rw-rw-r-- 1 sfilippo sfilippo   5488 28 nov 16.40
fortrilinos_enum_wrappers.mod
  -rw-rw-r-- 1 sfilippo sfilippo    843 28 nov 16.40 fortrilinos_error.mod
  -rw-rw-r-- 1 sfilippo sfilippo    478 28 nov 16.40
fortrilinos_external_utils.mod
  -rw-rw-r-- 1 sfilippo sfilippo    314 28 nov 16.40 fortrilinos_hermetic.mod
  -rw-rw-r-- 1 sfilippo sfilippo   1314 28 nov 16.40 fortrilinos_ref_counter.mod
  -rw-rw-r-- 1 sfilippo sfilippo    837 28 nov 16.40 fortrilinos_table_man.mod
  -rw-rw-r-- 1 sfilippo sfilippo   1110 28 nov 16.40 fortrilinos_universal.mod
  -rw-rw-r-- 1 sfilippo sfilippo   1125 28 nov 16.40 fortrilinos_utils.mod



Notice that CRAY module file format is binary.
IBM's XLF has a similar behaviour.

Salvatore



More information about the Fortran mailing list