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

METIS version constraint #20

Closed
ivan-pi opened this issue May 24, 2022 · 5 comments
Closed

METIS version constraint #20

ivan-pi opened this issue May 24, 2022 · 5 comments

Comments

@ivan-pi
Copy link

ivan-pi commented May 24, 2022

Are there any constraints on which versions of METIS are supported, i.e. 4.0.3 or 5.1.0?

@ivan-pi ivan-pi changed the title METIS version contraint METIS version constraint May 24, 2022
@sfilippone
Copy link
Owner

If by metis 4.0.3 you mean the version of (serial) metis contained in ParMETIS 4.0.3, then yes, it works.
There should be no other constraints, given that the METIS code has had a very stable interface for quite some time by now.

@ivan-pi
Copy link
Author

ivan-pi commented May 25, 2022

That's odd, since the configure script indicates a missing function:

checking for metis.h... yes
checking for METIS integer size... unknown
checking for METIS real size... unknown
checking for METIS_PartGraphKway in -lmetis ... yes
checking for METIS_SetDefaultOptions in -lmetis  -lm  ... no. Unusable METIS version, sorry.
checking Compatibility between metis and LPK... no

(also not sure how -lm creeped into that check...)

For more background, I am trying to use Spack to build and install PSBLAS.

The specification (dependency graph) is

psblas@3.8.0%gcc@11.2.0~amd+metis~serial arch=linux-sles15-haswell
    ^intel-mkl@2020.4.304%gcc@11.2.0~ilp64+shared threads=none arch=linux-sles15-haswell
        ^cpio@2.12.3%gcc@11.2.0 patches=d22633c368b8aedf4c08b23b6fbaa81a52404c8943ab04926404083ac10f1a4b arch=linux-sles15-haswell
    ^intel-mpi@2019.12.320%gcc@11.2.0 arch=linux-sles15-haswell
        ^patchelf@0.13%gcc@11.2.0 arch=linux-sles15-haswell
    ^metis@4.0.3%gcc@11.2.0~gdb~int64~real64+shared build_type=Release arch=linux-sles15-haswell

The METIS_SetDefaultOptions appears to be available in both parmetis-4.0.3.tar.gz and metis-5.1.0.tar.gz, so it may be something else is wrong.

Is the plan to keep the current build tools or switch to CMake eventually (#12)?

@sfilippone
Copy link
Owner

sfilippone commented May 25, 2022 via email

@sfilippone sfilippone reopened this May 25, 2022
@sfilippone
Copy link
Owner

checking for METIS integer size... unknown
checking for METIS real size... unknown

I have a feeling the problem is in these two lines

S.

@ivan-pi
Copy link
Author

ivan-pi commented May 25, 2022

You are indeed correct. The Spack provided Metis library used 32-bit integers by default. I've adjusted and I now get:

checking metis.h usability... yes
checking metis.h presence... yes
checking for metis.h... yes
checking for METIS integer size... 64
checking for METIS real size... 32
checking for METIS_PartGraphKway in -lmetis ... yes
checking for METIS_SetDefaultOptions in -lmetis  -lm  ... yes

@ivan-pi ivan-pi closed this as completed May 25, 2022
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