Skip to content

Petsc conifg opts changed#446

Merged
boegel merged 9 commits intoeasybuilders:developfrom
hajgato:petsc_conifg_opts_changed
Oct 10, 2014
Merged

Petsc conifg opts changed#446
boegel merged 9 commits intoeasybuilders:developfrom
hajgato:petsc_conifg_opts_changed

Conversation

@hajgato
Copy link
Copy Markdown
Collaborator

@hajgato hajgato commented Jul 30, 2014

No description provided.

@hpcugentbot
Copy link
Copy Markdown

Automatic reply from Jenkins: Can I test this?

Comment thread easybuild/easyblocks/p/petsc.py Outdated
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extend this to cmd = "%s make %s" % (self.cfg['prebuildopts'], self.cfg['buildopts'])

Can you not simpily set self.cfg['parallel'] to None and use the configuremake build_step?

@wpoely86
Copy link
Copy Markdown
Member

ok to test

Balázs Hajgató added 2 commits July 31, 2014 15:05
if suitesparse if loops corrected
def build_step removed, and -j issue for make solved using self.cfg['paeallel'] to None.
Comment thread easybuild/easyblocks/p/petsc.py Outdated
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this needs to be a indenting level deeper (in the function)

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But then it should be earlier in the file, right?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the location is fine (in the configure_step() ) but the code is on the same level as the methods. It needs to happen in a method 😉

Comment thread easybuild/easyblocks/p/petsc.py Outdated
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's best to also set LIBS and LD_FLAGS in configopts?
(btw, is the -- needed?)

@hajgato
Copy link
Copy Markdown
Collaborator Author

hajgato commented Sep 10, 2014

I am not sure whether we need -- or not. According to configure --help we need, but based on some of the messages written by configure is not needed. I would stick to the version suggested by configure --help.

I am also not completely sure about setting the LIBS and LD_FLAGS options as well, because this is not a standard configure script, actually it is a python script and it is quite picky how different options are set.

If we set LIBS and LD_FLAGS then they needed to set probably for the previous versions as well.

Anyway, from the config log I can see the following:

https://gist.github.com/hajgato/3b13d060d869f225868f

So, it looks that the libs and LD_FLAGS are correctly set.

@JensTimmerman
Copy link
Copy Markdown

alright, correct, seems to work here,
however, FIAT and scientificpython are not recognized in the configure step, so these should also be set somehow?

@hajgato
Copy link
Copy Markdown
Collaborator Author

hajgato commented Sep 12, 2014

@JensTimmerman Well, the options are there in the configure part. I think if it does not recognize FIAT and scientificpython , their lines would not be there. Anyway, here is the full buildlog:

https://gist.github.com/3fb8bb1125d44a7c0e1b

@hajgato
Copy link
Copy Markdown
Collaborator Author

hajgato commented Sep 12, 2014

From software/PETSc/3.5.1-intel-2014b-Python-2.7.8/conf/configure.log

TEST configureLibrary from config.packages.scientificpython(/tmp/hajgato/build/PETSc/3.5.1/intel-2014b-Python-2.7.8/petsc-3.5.1/config/BuildSystem/config/packages/scientificpython.py:39)
TESTING: configureLibrary from config.packages.scientificpython(/tmp/hajgato/build/PETSc/3.5.1/intel-2014b-Python-2.7.8/petsc-3.5.1/config/BuildSystem/config/packages/scientificpython.py:39)
  Find an installation ando check if it can work with PETSc
==================================================================================
Checking for a functional scientificpython
        Checking location User specified root directory SCIENTIFICPYTHON
        Added directory /apps/brussel/ivybridge/software/ScientificPython/2.8.1-intel-2014b-Python-2.7.8/lib/python/site-packages to Python path
================================================================================
TEST checkSharedLibrary from config.packages.scientificpython(/tmp/hajgato/build/PETSc/3.5.1/intel-2014b-Python-2.7.8/petsc-3.5.1/config/BuildSystem/config/package.py:566)
TESTING: checkSharedLibrary from config.packages.scientificpython(/tmp/hajgato/build/PETSc/3.5.1/intel-2014b-Python-2.7.8/petsc-3.5.1/config/BuildSystem/config/package.py:566)
  By default we don't care about checking if the library is shared
      Popping language C
      Pushing language C
================================================================================
TEST configureLibrary from config.packages.fiat(/tmp/hajgato/build/PETSc/3.5.1/intel-2014b-Python-2.7.8/petsc-3.5.1/config/BuildSystem/config/packages/fiat.py:35)
TESTING: configureLibrary from config.packages.fiat(/tmp/hajgato/build/PETSc/3.5.1/intel-2014b-Python-2.7.8/petsc-3.5.1/config/BuildSystem/config/packages/fiat.py:35)
  Find an installation ando check if it can work with PETSc
==================================================================================
Checking for a functional fiat
        Checking location User specified root directory FIAT
        Added directory /apps/brussel/ivybridge/software/FIAT/1.1-intel-2014b-Python-2.7.8/lib/python/site-packages to Python path
================================================================================
TEST checkSharedLibrary from config.packages.fiat(/tmp/hajgato/build/PETSc/3.5.1/intel-2014b-Python-2.7.8/petsc-3.5.1/config/BuildSystem/config/package.py:566)
TESTING: checkSharedLibrary from config.packages.fiat(/tmp/hajgato/build/PETSc/3.5.1/intel-2014b-Python-2.7.8/petsc-3.5.1/config/BuildSystem/config/package.py:566)
  By default we don't care about checking if the library is shared
      Popping language C
================================================================================

@hajgato
Copy link
Copy Markdown
Collaborator Author

hajgato commented Sep 12, 2014

Apparently FIAT and scientificpython in the PYTHONPATH

@JensTimmerman
Copy link
Copy Markdown

Yeah, I might have read the config output wrong, it is listed, but has nothing behind it, which was looking weird to me,
anyway, this worked for me :-)

Comment thread easybuild/easyblocks/p/petsc.py Outdated
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hajgato: correct me if I'm wrong, but this is just an unrolled version of the loop in the else part, but with BLACS excluded?

If so, we should rework this to:

deps = ["FFTW", "ScaLAPACK"]
if LooseVersion(self.version) < LooseVersion("3.5"):
    deps.append("BLACS")

# loop in else part over 'deps'

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.

6 participants