Dear Firedrakers,
Terry Haut is giving a seminar about parallel-in-time methods for
solving PDEs with fast oscillatory waves (such as those used in weather
forecasting and ocean modelling).
The talk will concentrate on parallelisable methods for computing
the action of the exponential of an anti-symmetric matrix (i.e. the
matrix coming from discretising the linear wave part of a PDE), which
are then used to take large stable timesteps for the coarse propagator
in a parallel-in-time algorithm.
Date: 12th September 2014
Time: 12 noon
Location: Huxley 130 (i.e. the maths dungeons).
http://www3.imperial.ac.uk/newsandeventspggrp/imperialcollege/naturalscienc…
cheers
--cjc
I thought you might be interested in this new paper from the PyFR people.
Bart Wozniak's GiMMiK package (his MEng project from last year) is actually boosting the performance reported here even further (the GiMMiK paper will be submitted this week).
Paul
Begin forwarded message:
From: "Witherden, Freddie" <freddie.witherden08(a)imperial.ac.uk<mailto:freddie.witherden08@imperial.ac.uk>>
Date: 2 September 2014 08:58:56 GMT+01:00
To: "Kelly, Paul H J" <p.kelly(a)imperial.ac.uk<mailto:p.kelly@imperial.ac.uk>>
Subject: Performance Portability Paper
Hi Paul,
I finally got around to finishing the paper Peter, Brian and myself have been working on regarding the performance portability of PyFR. You can find it here:
http://arxiv.org/pdf/1409.0405v1.pdf
Figures 4 and 5 may be of interest to yourself or some of the people in the PyOP2/Firedrake communities.
It also goes into some detail regarding the difficulty of performing an quantitative analysis of flow over a cylinder.
Regards, Freddie.
Hi All,
Lisandro just merged my fixes for the pestc interface changes so you can go
back to using petsc4py master in accordance with the instructions on the
website.
Cheers,
David
--
Dr David Ham
Departments of Mathematics and Computing
Imperial College London
http://www.imperial.ac.uk/people/david.ham
Dear all,
It seems our friends at PETSc have changed the PETSc interface without a
corresponding petsc4py change. Again.
I have a branch which fixes this. I will be putting in a pull request
imminently. In the meantime, if you upgrade PETSc to current master, you
will need to use my petsc4py branch. This can be installed (system-wide)
with:
sudo pip install -U --no-deps git+
https://bitbucket.org/David_Ham/petsc4py.git@DMDASetDim_interface_change#eg…
I will let you know once normal service resumes.
David
--
Dr David Ham
Departments of Mathematics and Computing
Imperial College London
http://www.imperial.ac.uk/people/david.ham
That question doesn't make sense, because a Git branch is no more than a
named commit (every commit knows its entire history, by virtue of pointing
to the parent commit[s]).
However, there's bound to be some Git command that asks 'does commit X
appear in the history of commit Y?'.
More practically, you could look at the Firedrake branches page on Github:
https://github.com/firedrakeproject/firedrake/branches. This shows that
the master branch built successfully on Travis 2 days ago, and this implies
there was no petsc/petsc4py mismatch at that moment. Armed with this
information, it's easy to narrow down the relevant merge.
In what way is the problem not fixed? Have you cleaned petsc/petsc4py?
(sudo make allclean / sudo make fullclean)
On 24 August 2014 20:05, Cotter, Colin J <colin.cotter(a)imperial.ac.uk>
wrote:
> Thanks. Is it possible to work out which branch c73cfb54 is on, just by
> looking at the BitBucket page? I was having trouble tracking it back
> because the branch commit appears on a different page from the merge.
> --cjc
> ------------------------------
> *From:* firedrake-bounces(a)imperial.ac.uk [firedrake-bounces(a)imperial.ac.uk]
> on behalf of Andrew McRae [a.mcrae12(a)imperial.ac.uk]
> *Sent:* 24 August 2014 19:55
>
> *To:* firedrake
> *Subject:* Re: [firedrake] petsc4py install issues
>
> 22d5acb seems like a more obvious choice? (the revision before Matt
> Knepley merged his pull request, according to
> https://bitbucket.org/petsc/petsc/commits/branch/master )
>
>
> On 24 August 2014 19:50, Cotter, Colin J <colin.cotter(a)imperial.ac.uk>
> wrote:
>
>> (by didn't work, I mean that it didn't fix the problem for me).
>>
>> --cjc
>> ------------------------------
>> *From:* firedrake-bounces(a)imperial.ac.uk [
>> firedrake-bounces(a)imperial.ac.uk] on behalf of Cotter, Colin J [
>> colin.cotter(a)imperial.ac.uk]
>> *Sent:* 24 August 2014 19:49
>>
>> *To:* firedrake
>> *Subject:* Re: [firedrake] petsc4py install issues
>>
>> OK, the first revision I tried didn't work (df3898e
>> <https://bitbucket.org/petsc/petsc/commits/df3898ee999f8e28aa22e84b9bfe0d47e…>),
>> now trying (8a23364
>> <https://bitbucket.org/petsc/petsc/commits/8a23364d02173c6cd1856e280835b29b1…>
>> ).
>>
>> --cjc
>> ------------------------------
>> *From:* firedrake-bounces(a)imperial.ac.uk [
>> firedrake-bounces(a)imperial.ac.uk] on behalf of Cotter, Colin J [
>> colin.cotter(a)imperial.ac.uk]
>> *Sent:* 24 August 2014 19:40
>> *To:* firedrake
>> *Subject:* Re: [firedrake] petsc4py install issues
>>
>> OK, I think I've done that and it's building.
>>
>> I'm not feeling the separation of concerns here...
>>
>> --cjc
>> ------------------------------
>> *From:* firedrake-bounces(a)imperial.ac.uk [
>> firedrake-bounces(a)imperial.ac.uk] on behalf of Andrew McRae [
>> a.mcrae12(a)imperial.ac.uk]
>> *Sent:* 24 August 2014 19:24
>> *To:* firedrake
>> *Subject:* Re: [firedrake] petsc4py install issues
>>
>> Try reverting to a PETSc commit predating the commit that Florian
>> isolated.
>>
>>
>> On 24 August 2014 19:18, Cotter, Colin J <colin.cotter(a)imperial.ac.uk>
>> wrote:
>>
>>> Oh I see, it's an incompatibility between master Petsc and master
>>> petsc4py. I wouldn't have a clue how to fix that.
>>> Cjc
>>> On 24 Aug 2014 19:00, "David Ham" <David.Ham(a)imperial.ac.uk> wrote:
>>>
>>>> We don't have our own PETSc versions. We're tracking master. The PETSc
>>>> crowd muck up fairly frequently. It sounds like you should be able to fix
>>>> Petsc4py pretty easily. They usually accept patches for this sort of thing
>>>> pretty fast.
>>>>
>>>> David
>>>>
>>>> On Sunday, August 24, 2014, Cotter, Colin J <
>>>> colin.cotter(a)imperial.ac.uk> wrote:
>>>>
>>>>> Aren't the Firedrake petsc and petsc4py versions supposed to be
>>>>> compatible with each other?
>>>>> On 24 Aug 2014 16:58, "Florian Rathgeber" <
>>>>> f.rathgeber10(a)imperial.ac.uk> wrote:
>>>>>
>>>>>> The usual: interface change in PETSc (DMDASetDim renamed to
>>>>>> DMDASetDimension) that hasn't been updated in petsc4py yet. The PETSc
>>>>>> revision introducing that change is c73cfb54.
>>>>>>
>>>>>> On 24/08/14 16:27, Cotter, Colin J wrote:
>>>>>> > Dear Firedrakers,
>>>>>> > I just updated my petsc and petsc4py using the PyOP2 install
>>>>>> > instructions, to be precise I did:
>>>>>> >
>>>>>> >> sudo PETSC_CONFIGURE_OPTIONS="--download-ctetgen
>>>>>> --download-triangle
>>>>>> > --download-chaco" pip install -U --no-deps
>>>>>> > git+https://bitbucket.org/petsc/petsc.git#egg=petsc
>>>>>> >> unset PETSC_DIR
>>>>>> >> unset PETSC_ARCH
>>>>>> >> sudo pip install -U --no-deps git+
>>>>>> https://bitbucket.org/petsc/petsc4py.git
>>>>>> >
>>>>>> > I then updated and built PyOP2, firedrake too.
>>>>>> >
>>>>>> > Now, upon importing Firedrake, I get:
>>>>>> >
>>>>>> > In [1]: from firedrake import *
>>>>>> >
>>>>>> ---------------------------------------------------------------------------
>>>>>> > ImportError Traceback (most recent
>>>>>> call last)
>>>>>> > /home/cjc1/mercurial/shapefem/<ipython-input-1-379626444471> in
>>>>>> <module>()
>>>>>> > ----> 1 from firedrake import *
>>>>>> >
>>>>>> > /home/cjc1/firedrake/firedrake/firedrake/__init__.py in <module>()
>>>>>> > 1 # Ensure petsc is initialised by us before anything else
>>>>>> gets in
>>>>>> > there.
>>>>>> >
>>>>>> > ----> 2 import petsc
>>>>>> > 3 del petsc
>>>>>> > 4
>>>>>> > 5 from ufl import *
>>>>>> >
>>>>>> > /home/cjc1/firedrake/firedrake/firedrake/petsc.py in <module>()
>>>>>> > 2 import petsc4py
>>>>>> > 3 import sys
>>>>>> > ----> 4 petsc4py.init(sys.argv)
>>>>>> > 5 from petsc4py import PETSc # NOQA get flake8 to ignore
>>>>>> unused
>>>>>> > import.
>>>>>> >
>>>>>> > /usr/local/lib/python2.7/dist-packages/petsc4py/__init__.pyc in
>>>>>> > init(args, arch, comm)
>>>>>> > 40 """
>>>>>> > 41 import petsc4py.lib
>>>>>> > ---> 42 PETSc = petsc4py.lib.ImportPETSc(arch)
>>>>>> > 43 args = petsc4py.lib.getInitArgs(args)
>>>>>> > 44 PETSc._initialize(args, comm)
>>>>>> >
>>>>>> > /usr/local/lib/python2.7/dist-packages/petsc4py/lib/__init__.pyc in
>>>>>> > ImportPETSc(arch)
>>>>>> > 27 """
>>>>>> > 28 path, arch = getPathArchPETSc(arch)
>>>>>> > ---> 29 return Import('petsc4py', 'PETSc', path, arch)
>>>>>> > 30
>>>>>> > 31 def getPathArchPETSc(arch=None):
>>>>>> >
>>>>>> > /usr/local/lib/python2.7/dist-packages/petsc4py/lib/__init__.pyc in
>>>>>> > Import(pkg, name, path, arch)
>>>>>> > 62 pathlist = [os.path.join(path, arch)]
>>>>>> > 63 fo, fn, stuff = imp.find_module(name, pathlist)
>>>>>> > ---> 64 module = imp.load_module(fullname, fo, fn, stuff)
>>>>>> > 65 module.__arch__ = arch # save arch value
>>>>>> > 66 setattr(sys.modules[pkg], name, module)
>>>>>> >
>>>>>> > ImportError:
>>>>>> > /usr/local/lib/python2.7/dist-packages/petsc4py/lib/PETSc.so:
>>>>>> undefined
>>>>>> > symbol: DMDASetDim
>>>>>> >
>>>>>> > What's wrong here?
>>>>>> >
>>>>>> > all the best
>>>>>> > --Colin
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> firedrake mailing list
>>>>>> firedrake(a)imperial.ac.uk
>>>>>> https://mailman.ic.ac.uk/mailman/listinfo/firedrake
>>>>>>
>>>>>>
>>>>
>>>> --
>>>> Dr David Ham
>>>> Departments of Mathematics and Computing
>>>> Imperial College London
>>>>
>>>> http://www.imperial.ac.uk/people/david.ham
>>>>
>>>>
>>>> _______________________________________________
>>>> firedrake mailing list
>>>> firedrake(a)imperial.ac.uk
>>>> https://mailman.ic.ac.uk/mailman/listinfo/firedrake
>>>>
>>>>
>>
>
Upstream FIAT introduced a dependency on SymPy. This has now been
integrated into our fork of FIAT. Hence, if you update FIAT, you may find
that you need to install SymPy. For example:
sudo pip install sympy