Opened 5 years ago

Closed 4 years ago

Last modified 4 years ago

#2804 closed user story (fixed)

PETSc 3.7 support

Reported by: GaryM Owned by:
Priority: normal Milestone: Iteration I4
Component: core Keywords:
Cc: Estimated pair-hours remaining: 0
Pair-hours expended on ticket: 2.5 Initial estimate of effort: 4
Editable by public: yes

Description

Looks as if there might be quite a few interface changes to deal with: http://www.mcs.anl.gov/petsc/documentation/changes/37.html

Attachments (1)

2804CellBased.patch (9.7 KB) - added by jameso@… 4 years ago.
Patch of changes ozzy used to get cell based working on 3.7.2

Download all attachments as: .zip

Change History (16)

comment:1 Changed 5 years ago by GaryM

  • Editable by public set

comment:2 Changed 4 years ago by jameso@…

Yep there are. Im doing a new install (some idiot in IT nuked my homebrew install) and have Petsc 3.7.2. The first i come up with is PetscViewerSetFormat is deprecated.

comment:3 Changed 4 years ago by GaryM

Hmmm, might be a Thursday job! Have you seen Miguel's homebrew on Github https://github.com/mobernabeu/homebrew-chaste would be good to contribute new versions to that.

comment:4 Changed 4 years ago by jameso@…

I have and its pretty snazzy. The quick fix is to install an older version of petsc but this will come up again once someone new installs on a mac.

Changed 4 years ago by jameso@…

Patch of changes ozzy used to get cell based working on 3.7.2

comment:5 Changed 4 years ago by jameso@…

  • Pair-hours expended on ticket changed from 0 to 1

Attached is a patch of the changes I needed to get cell based to compile on my machine if it helps. They're all in linalg

The simple part of the fix is for PetscViewerSetFormat as this is only in the code twice and has a direct replacement.

The trickier fix is that PetscOptionsSetValue now takes in a PetscOptions object so the interface is different (my simple fix is to just add NULL to the beginning but this would break older PETSc versions). There are at least 50 of these calls in the code so I suspect its time to write a wrapper.

comment:6 Changed 4 years ago by jonc@…

Yes, adding a PetscTools::SetOption(const std::string&, const std::string&) would be sensible! The viewer thing just needs guards adding.

I don't know how many people will be around tomorrow - it's DTC picnic among other things - but we'll see if we can take a quick look.

comment:7 follow-up: Changed 4 years ago by jonc@…

I'm building PETSc 3.7 on lofty now...

comment:8 in reply to: ↑ 7 Changed 4 years ago by jameso@…

Replying to jonc@…:

I'm building PETSc 3.7 on lofty now...

Exciting. Don't forget to have a break in todays session to go vote!

comment:9 Changed 4 years ago by jonc@…

  • Estimated pair-hours remaining changed from 4 to 0.25
  • Pair-hours expended on ticket changed from 1 to 2

It looks like r26864 gets things working simultaneously for PETSc 3.7 and earlier versions.

We should probably look at adding this to the lofty rotation.

comment:10 Changed 4 years ago by jameso@…

Thanks Jonathan much appreciated.

comment:11 Changed 4 years ago by louiecn

Possibly a bit late now as I see you've built PETSc but (as per comment:18:ticket:2688) can we start doing HYPRE builds please? Without any HYPRE builds there are various bits of code that are not being tested.

comment:12 Changed 4 years ago by jonc@…

It's easy enough to rebuild PETSc (just a lot of waiting...).

I'll see about setting it going rebuilding version 3.5+ with HYPRE, and update InstallGuides/TestingMultipleVersions accordingly so we remember next time!

comment:13 Changed 4 years ago by jonc@…

For putting this in the rotation, I propose replacing the automated tests of either 3.0 or 3.3, since they aren't in a supported Ubuntu nor have special features like HDF5 1.8.13 built in. Any preferences?

3.0 probably makes most sense as the oldest supported version. It should change from green to light green at best anyway, since it isn't in a supported Ubuntu any more, nor is it the version in our 'main' install guide.

comment:14 Changed 4 years ago by jonc@…

  • Estimated pair-hours remaining changed from 0.25 to 0
  • Pair-hours expended on ticket changed from 2 to 2.5
  • Resolution set to fixed
  • Status changed from new to closed

Added to lofty in r26870 and updated InstallGuides/DependencyVersions.

PETSc 3.5+ on lofty now have HYPRE included (for GNU compilers in 3.5 & 3.6, and for Intel too in 3.7).

comment:15 Changed 4 years ago by louiecn

Excellent, thanks.

Note: See TracTickets for help on using tickets.