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

Make HDF5 Optional #65

Open
5 tasks
fluidnumerics-joe opened this issue Oct 31, 2024 · 1 comment
Open
5 tasks

Make HDF5 Optional #65

fluidnumerics-joe opened this issue Oct 31, 2024 · 1 comment

Comments

@fluidnumerics-joe
Copy link
Member

A collaborator is working on building SELF and its dependencies on the Grace Hopper platform (ARM) and has been experiencing issues with compiling HDF5 for use in SELF. To reduce the "dependency hell", we need to provide a default / failover file IO option that does not depend on HDF5.

Some caveats

  • When HDF5 is not available, HOPr input needs to be disabled (and documented)
  • We need to support loading in the failover / default files and provide a conversion utility to HDF5 in the pyself modules.

The default files need to include

  • Lagrange interpolating polynomials
  • Mesh information
  • Geometry information (mesh positions and metric terms)

To resolve this issue

  • Create documentation for the file failover file format
  • Implement file IO for lagrange, mesh, geometry, and solution fields
  • Implement file IO for metadata information
  • Optionally build modules that depend on HDF5 (Cmake build system adjustment) - default file IO can always be available
  • Add tests that exercise the default file IO
@JorgeG94
Copy link

JorgeG94 commented Nov 4, 2024

The issue is a bit more close to the top, spack seems unable to build:

==> Installing autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb [13/29]
==> No binary for autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/af/afb181a76e1ee72832f6581c0eddf8df032b83e2e0239ef79ebedc4467d92d6e.tar.gz
==> Ran patch() for autoconf
==> autoconf: Executing phase: 'autoreconf'
==> autoconf: Executing phase: 'configure'
==> autoconf: Executing phase: 'build'
==> Error: ProcessError: Command exited with status 2:
    '/usr/bin/make' '-j16' 'V=1'

6 errors found in build log:
     220    Compilation failed in require at bin/autom4te line 46.
     221    BEGIN failed--compilation aborted at bin/autom4te line 46.
     222    Can't locate File/Compare.pm in @INC (you may need to install the File::Compare module) (@INC contains: /tmp/jorge/spack
            -stage/spack-stage-autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb/spack-src/lib /usr/local/lib64/perl5/5.32 /usr/local/s
            hare/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at /tmp/jor
            ge/spack-stage/spack-stage-autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb/spack-src/lib/Autom4te/FileUtils.pm line 167.
     223    BEGIN failed--compilation aborted at /tmp/jorge/spack-stage/spack-stage-autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb/s
            pack-src/lib/Autom4te/FileUtils.pm line 167.
     224    Compilation failed in require at bin/autom4te line 46.
     225    BEGIN failed--compilation aborted at bin/autom4te line 46.
  >> 226    make[1]: *** [Makefile:2056: lib/m4sugar/m4sh.m4f] Error 2
     227    make[1]: *** Waiting for unfinished jobs....
  >> 228    make[1]: *** [Makefile:2056: lib/autoconf/autoconf.m4f] Error 2
  >> 229    make[1]: *** [Makefile:2227: tests/wrapper.in] Error 2
  >> 230    make[1]: *** [Makefile:2056: lib/autotest/autotest.m4f] Error 2
  >> 231    make[1]: *** [Makefile:2056: lib/m4sugar/m4sugar.m4f] Error 2
     232    Can't locate File/Compare.pm in @INC (you may need to install the File::Compare module) (@INC contains: /tmp/jorge/spack
            -stage/spack-stage-autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb/spack-src/lib /usr/local/lib64/perl5/5.32 /usr/local/s
            hare/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at /tmp/jor
            ge/spack-stage/spack-stage-autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb/spack-src/lib/Autom4te/FileUtils.pm line 167.
     233    BEGIN failed--compilation aborted at /tmp/jorge/spack-stage/spack-stage-autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb/s
            pack-src/lib/Autom4te/FileUtils.pm line 167.
     234    Compilation failed in require at bin/autom4te line 46.
     235    BEGIN failed--compilation aborted at bin/autom4te line 46.
     236    make[1]: Leaving directory '/tmp/jorge/spack-stage/spack-stage-autoconf-2.72-ftuvr2csximr4pznemlzxeq5utdafqlb/spack-src/
            spack-build'
  >> 237    make: *** [Makefile:923: all] Error 2

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

No branches or pull requests

2 participants