Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update FTG-Frontend #144

Merged
merged 2 commits into from
Apr 17, 2018
Merged

Update FTG-Frontend #144

merged 2 commits into from
Apr 17, 2018

Conversation

chovyy
Copy link
Contributor

@chovyy chovyy commented Apr 5, 2018

This update of the FTG frontend contains the following changes:

  • Added wrapper routines for all metainfo getters and setters
  • Added support for zero-sized arrays
  • Added ftg_allocate_and_read routines which take unallocated pointers and allocatable variables, allocate them according to the stored bounds and read the data afterwards.

I have started to generate m_ser_ftg.f90, because I was tired to copy, paste and modify every routine 30 times. That's why the indentation may have changed a bit.

commit 997b540
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Apr 5 09:22:16 2018 +0200

    [ftg] Replaced internal calls to fs_[get/add]_*_metainfo

commit 0184e51
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Apr 5 01:14:07 2018 +0200

    [ftg] [tests] Tests for metainfo getters & setters

commit e02ef6d
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Apr 5 01:08:39 2018 +0200

    [Fortran] [tests] Removed duplicate fs_destroy_serializer call

commit 8be597f
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Apr 5 01:01:39 2018 +0200

    [ftg] Added wrappers for all metainfo routines

commit 143c189
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Mon Apr 2 22:19:44 2018 +0200

    [ftg] [tests] Test for ftg_allocate_and_read

commit 2338471
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Mon Apr 2 22:11:37 2018 +0200

    [ftg] Added ftg_allocate_and_read

commit 31b74c1
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Sun Apr 1 22:31:55 2018 +0200

    [ftg] Replaced m_ser_ftg.f90 by generated version

commit 0f3f174
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 22 22:22:56 2018 +0100

    [ftg] [tests] Extended zero-size test to all supported data types

commit da16a5e
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Mar 21 22:20:15 2018 +0100

    [ftg] Removed write dummy field when only registered

    => Not longer needed due to updateMetaData call in (C) destroy function

commit 370faa6
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Mar 21 22:16:14 2018 +0100

    [ftg] Cleaned up merge mess

commit c3da0ff
Merge: 8e9ae96 ad0b774
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Mar 21 22:04:05 2018 +0100

    Merge branch 'ftg-zerosize' of github-chovyy:chovyy/serialbox2.git into
    ftg-zerosize

    Conflicts:
    	src/serialbox-fortran/m_ser_ftg.f90

commit 8e9ae96
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 20 22:43:20 2018 +0100

    [ftg] Check for ftg:registered_only = false before reading fields

commit 321a68d
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 20 22:20:04 2018 +0100

    [ftg] Prefix 'ftg:' for all meta-info keys

commit 7d2378a
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Mon Mar 5 22:55:30 2018 +0100

    [ftg] Correct data_type+bytes_per_element for ftg_register_only_internal

commit d5f857e
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Mon Mar 5 17:16:51 2018 +0100

    [Fortran] Export fs_*size functions

commit ae57344
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 13:06:09 2018 +0100

    [ftg] Don't write but register zero-sized arrays

commit b185d6a
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 13:05:36 2018 +0100

    [ftg] [tests] Test for zero-sized arrays

commit 8beae7a
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Mar 21 22:01:26 2018 +0100

    [C] [tests] Test for meta-info without Write

commit c9555d6
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Mar 21 22:00:56 2018 +0100

    [C] Call updateMetaData in serialboxSerializerDestroy

commit 23668a0
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 20 22:56:11 2018 +0100

    [Fortran] [tests] Closed and opened serializer before reading meta-info

commit ad0b774
Merge: df28ace ac13c33
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 20 22:20:43 2018 +0100

    Merge branch 'ftg-zerosize' of github-chovyy:chovyy/serialbox2.git into ftg-zerosize

commit df28ace
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 20 22:20:04 2018 +0100

    [ftg] Prefix 'ftg:' for all meta-info keys

commit 51d833d
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Mon Mar 5 22:55:30 2018 +0100

    [ftg] Correct data_type+bytes_per_element for ftg_register_only_internal

commit 2503384
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Mon Mar 5 17:16:51 2018 +0100

    [Fortran] Export fs_*size functions

commit b64582e
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 13:06:09 2018 +0100

    [ftg] Don't write but register zero-sized arrays

commit 5b8a71f
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 13:05:36 2018 +0100

    [ftg] [tests] Test for zero-sized arrays

commit ac13c33
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 20 22:20:04 2018 +0100

    [ftg] Prefix 'ftg:' for all meta-info keys

commit 81243b8
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 13 23:34:27 2018 +0100

    [Fortran] TODO comments for missing meta-info getters for strings

commit cb4a5bc
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Sat Mar 10 22:08:13 2018 +0100

    [C] Removed two blank lines in FortranWrapper

commit 3247848
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Sat Mar 10 22:06:47 2018 +0100

    [C] Fixed another indentation problem in FortranWrapper

commit 7fea989
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Sat Mar 10 22:02:15 2018 +0100

    [C] Worked on indentation in FortranWrapper

commit b897bf4
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 17:36:27 2018 +0100

    [Fortran] Added meta-info adders and getters for longs to Fortran intf

commit 116ddaf
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 17:23:46 2018 +0100

    [C] Added meta-info adders and getters for longs to FortranWrapper

commit 94b80bd
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 16:44:36 2018 +0100

    [Fortran] [tests] Test for savepoint meta-infos

commit e84accf
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 16:39:16 2018 +0100

    [Fortran] [tests] Test for field meta-infos

commit 9decbfd
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 16:34:37 2018 +0100

    [Fortran] [tests] Test for global meta-infos

commit 9dbcb9e
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 14:48:00 2018 +0100

    [Fortran] Removed meta-info getters for strings from Fortran interface

commit ba06af8
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 14:16:29 2018 +0100

    [Fortran] Export meta-info getters

commit 471f556
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 14:04:02 2018 +0100

    [Fortran] Getters for savepoint meta-info in Fortran interface

commit 37d31b9
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 14:02:29 2018 +0100

    [Fortran] Getters for field meta-info in Fortran interface

commit 9aaf0b8
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 12:24:57 2018 +0100

    [Fortran] Getters for global meta-info in Fortran interface

commit 61bab90
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 12:12:39 2018 +0100

    [C] [tests] Tests for non-existing meta-info keys in FortranWrapper test

commit 3048e73
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Fri Mar 9 12:09:34 2018 +0100

    [C] Added false boolean meta-infos to FortranWrapper tests

commit c83f59d
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:52:32 2018 +0100

    [C] [tests] Reorderd more lines of field metainfo test

commit cacd805
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:44:12 2018 +0100

    [C] [tests] Reorderd lines of field metainfo test in FortranWrapper test

commit 11ff5f0
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:41:36 2018 +0100

    [C] [tests] Reimplemented test for savepoint meta-infos

commit e5aac7d
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:37:17 2018 +0100

    [C] [tests] Reimplemented test for field meta-infos

commit e8e4462
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:35:57 2018 +0100

    [C] Fixed wrong identifier for field meta-info getters

commit 8f44cf9
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:28:22 2018 +0100

    [C] [tests] Reimplemented test for global meta-infos

commit af05298
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:22:59 2018 +0100

    [C] Changed value type of Boolean meta-info getters to int

commit 8ac2a5a
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:19:41 2018 +0100

    [C] Uncommented String version of meta-info getters in FortranWrapper

commit dc96842
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:07:09 2018 +0100

    [C] Reimplemented getter for global meta-info in FortranWrapper

commit 19cfb46
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Thu Mar 8 11:03:45 2018 +0100

    [C] Reimplemented getter for field meta-info in FortranWrapper

commit 14c6248
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Mar 7 22:14:40 2018 +0100

    [C] Removed serialboxFortranSavepointGetMetainfoInt64

commit 68bbbee
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Mar 7 22:10:01 2018 +0100

    [C] Reimplemented getter for savepoint meta-info in FortranWrapper

commit 7c60cd6
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Mar 7 21:52:34 2018 +0100

    [C] Made field meta-info getter in FortranWrapper a bit more readable

commit 15f6a38
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 6 23:16:01 2018 +0100

    [C] Added getter for field meta-infos to FortranWrapper

commit 3d85e9f
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 6 10:08:31 2018 +0100

    [C] Added getter for savepoint meta-infos to FortranWrapper

commit 5d801ba
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Tue Mar 6 10:03:49 2018 +0100

    [C] Added getter for global serializer meta-info to FortranWrapper

commit 0e80bcd
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Mon Mar 5 22:55:30 2018 +0100

    [ftg] Correct data_type+bytes_per_element for ftg_register_only_internal

commit ec7eb4d
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Mon Mar 5 17:16:51 2018 +0100

    [Fortran] Export fs_*size functions

commit c2b8164
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 13:06:09 2018 +0100

    [ftg] Don't write but register zero-sized arrays

commit 5c21d48
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 13:05:36 2018 +0100

    [ftg] [tests] Test for zero-sized arrays

commit f9b5407
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 14:23:59 2018 +0100

    [Fortran] Added function fs_get_total_size to Fortran interface

commit 729f36a
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 14:02:11 2018 +0100

    [Fortran] Added function fs_get_rank to Fortran interface

commit ca4eeed
Author: Christian Hovy <hovy@informatik.uni-hamburg.de>
Date:   Wed Feb 28 13:44:01 2018 +0100

    [C] Added serialboxFortranSerializerGetFieldRank to FortranWrapper
@jenkins-apn
Copy link
Collaborator

Hi there, this is jenkins continuous integration...
Do you want me to verify this patch?

@havogt
Copy link
Collaborator

havogt commented Apr 6, 2018

launch jenkins

@havogt
Copy link
Collaborator

havogt commented Apr 9, 2018

PGI on daint doesn't like it

PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2901)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_logical_0d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2901)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_logical_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2914)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_logical_1d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2914)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_logical_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2927)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_logical_2d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2927)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_logical_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2940)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_logical_3d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2940)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_logical_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2953)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_logical_4d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2953)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_logical_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2966)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_bool_0d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2966)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_bool_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2979)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_bool_1d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2979)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_bool_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2992)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_bool_2d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 2992)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_bool_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3005)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_bool_3d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3005)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_bool_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3018)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_bool_4d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3018)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_bool_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3031)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_int_0d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3031)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_int_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3044)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_int_1d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3044)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_int_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3057)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_int_2d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3057)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_int_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3070)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_int_3d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3070)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_int_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3083)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_int_4d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3083)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_int_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3096)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_long_0d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3096)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_long_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3109)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_long_1d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3109)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_long_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3122)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_long_2d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3122)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_long_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3135)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_long_3d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3135)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_long_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3148)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_long_4d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3148)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_long_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3161)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_float_0d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3161)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_float_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3174)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_float_1d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3174)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_float_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3187)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_float_2d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3187)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_float_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3200)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_float_3d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3200)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_float_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3213)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_float_4d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3213)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_float_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3226)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_double_0d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3226)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_double_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3239)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_double_1d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3239)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_double_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3252)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_double_2d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3252)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_double_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3265)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_double_3d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3265)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_double_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3278)
PGF90-S-0188-Argument number 2 (non-allocatable) to ftg_allocate_allocatable_double_4d: type mismatch (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3278)
  0 inform,   0 warnings,   2 severes, 0 fatal for ftg_allocate_and_read_pointer_double_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3294)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_logical_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3307)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_logical_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3320)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_logical_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3333)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_logical_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3346)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_logical_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3359)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_bool_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3372)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_bool_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3385)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_bool_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3398)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_bool_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3411)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_bool_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3424)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_int_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3437)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_int_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3450)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_int_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3463)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_int_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3476)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_int_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3489)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_long_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3502)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_long_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3515)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_long_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3528)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_long_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3541)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_long_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3554)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_float_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3567)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_float_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3580)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_float_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3593)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_float_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3606)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_float_4d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3619)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_double_0d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3632)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_double_1d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3645)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_double_2d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3658)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_double_3d
PGF90-S-0155-Ambiguous interfaces for generic procedure ftg_allocate (/scratch/snx3000/jenkins/workspace/serialbox2_PR/compiler/pgi/slave/daint/src/serialbox-fortran/m_ser_ftg.f90: 3671)
  0 inform,   0 warnings,   1 severes, 0 fatal for ftg_allocate_and_read_allocatable_double_4d
src/serialbox-fortran/CMakeFiles/SerialboxFortranLibraryObjects.dir/build.make:134: recipe for target 'src/serialbox-fortran/CMakeFiles/SerialboxFortranLibraryObjects.dir/m_ser_ftg.f90.o' failed

@chovyy
Copy link
Contributor Author

chovyy commented Apr 9, 2018

Alright, I will get myself a PGI compiler (or test it on Daint) and will see what I can do. Thanks for the check.

@chovyy
Copy link
Contributor Author

chovyy commented Apr 9, 2018

I have now installed PGI, but I have no idea how to configure it. The documentation just says: "The Cray and PGI compilers are currently not able to compile the C++/C part of Serialbox."
Any hints? How is Jenkins doing it? Sorry, I'm just not so familiar with CMake.

@chovyy
Copy link
Contributor Author

chovyy commented Apr 10, 2018

Ok, I found out myself that I have to set CMAKE_Fortran_COMPILER. Now I'm stuck at compiling pFUnit, but I'm working on it.

@chovyy
Copy link
Contributor Author

chovyy commented Apr 10, 2018

I managed to compile pFUnit but didn't get the tests to build. So, I tried without tests and everything worked fine. No errors. It's PGI 17.10 Community edition. Unfortunately, I'm not able to get 17.05 which is running on Daint. I will try it there.

@chovyy
Copy link
Contributor Author

chovyy commented Apr 10, 2018

That was easy, thanks to your build.sh. Now I was able to reproduce the errors.

@chovyy
Copy link
Contributor Author

chovyy commented Apr 11, 2018

I guess, I fixed it, though I'm not very happy with the solution. Still wasn't able to run the tests with PGI:

[ 94%] Linking CXX executable SerialboxFortranUnittest
/usr/lib/../lib64/crt1.o: In function `_start':
/home/abuild/rpmbuild/BUILD/glibc-2.22/csu/../sysdeps/x86_64/start.S:114: undefined reference to `main'
/usr/bin/ld: link errors found, deleting executable `SerialboxFortranUnittest'
/usr/bin/X11/sha1sum: SerialboxFortranUnittest: Datei oder Verzeichnis nicht gefunden
collect2: error: ld returned 1 exit status
test/serialbox-fortran/CMakeFiles/SerialboxFortranUnittest.dir/build.make:159: recipe for target 'test/serialbox-fortran/SerialboxFortranUnittest' failed
make[2]: *** [test/serialbox-fortran/SerialboxFortranUnittest] Error 1
CMakeFiles/Makefile2:963: recipe for target 'test/serialbox-fortran/CMakeFiles/SerialboxFortranUnittest.dir/all' failed
make[1]: *** [test/serialbox-fortran/CMakeFiles/SerialboxFortranUnittest.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

@vectorflux
Copy link

As you might have gathered, Christian's changes are important to us for avoiding the problems with these damned zero-sized arrays... Thanks for addressing this.

One comment which probably does not fit here: compare.py always flags differences between NaNs. Since our arrays frequently contain halo regions which are not defined, it would be more convenient if NaN was considered equal to NaN. Is this a reasonable thing, or does that open a can of worms in other places?

@chovyy chovyy mentioned this pull request Apr 17, 2018
@havogt
Copy link
Collaborator

havogt commented Apr 17, 2018

launch jenkins

@chovyy
Copy link
Contributor Author

chovyy commented Apr 17, 2018

@vectorflux:

One comment which probably does not fit here: compare.py always flags differences between NaNs. Since our arrays frequently contain halo regions which are not defined, it would be more convenient if NaN was considered equal to NaN. Is this a reasonable thing, or does that open a can of worms in other places?

I have created an issue for that.

@vectorflux
Copy link

Thanks, Christian. I'm glad it is not a silly (or dangerous) thing to ask for...

@havogt havogt merged commit 3a8dba3 into GridTools:master Apr 17, 2018
@chovyy
Copy link
Contributor Author

chovyy commented Apr 17, 2018

Thanks for merging.

There is now a new release of FTG with templates adapted to these changes.

@chovyy
Copy link
Contributor Author

chovyy commented Apr 17, 2018

@vectorflux: Please note, that the only way to handle those zero-size arrays was to flag them within the metadata. For that it was necessary to introduce a metadata field that is now required for every field read by the FTG frontend. Unfortunately, that means that you have to recapture all existing data if you want to read it with the new version.

@chovyy
Copy link
Contributor Author

chovyy commented Apr 18, 2018

For that it was necessary to introduce a metadata field that is now required for every field read by the FTG frontend. Unfortunately, that means that you have to recapture all existing data if you want to read it with the new version.

I just realized how stupid that is. I should have implemented a function to check whether a metainfo key exists to prevent exceptions in the getters, but therefore I would have needed to add such a function to the C++ core with all its indirections.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants