-
Notifications
You must be signed in to change notification settings - Fork 160
Firedrake meeting 2024 09 04
Date and time 2024-09-04 1600 BST (1500 UTC)
- Pick Chair and Minuter (KS to pick)
- ALL: (ongoing) triage the open issues and confirm if they are indeed still open (and perhaps provide labels)
- JB: Move pyop3 and TSFC to firedrake and move FInAT to FIAT
- ALL: do things with SV's branches
- DH: Email to Andreas to have 2 (+ others!!!) loopy PRs merged TODO: FIND OUT WHICH PRS THESE ARE
- DH: Get Firedrake a docker open source account (link here)
- DH: Talk to GregVernon about PR#2116.
-
DH: Order more Firedrake stickersDONE - JB: Enable merge queues (minutes)
- Firedrake User Meeting 16-18 September 2024 Firedrake (Registration 25th August/Abstracts 18th August)
Present: CW (minuter), DD, KS, DH, RK, IM, NB, PB
Apologies: JB
JB is away this week and probably won't make the meeting, but there are several things up in the air:
- I have a bunch of small PRs open that should probably just be merges (see Merge PRs).
- I think the FInAT hash stuff is ready, I have written a test, I don't think coverage of more elements is necessary.
- The caching changes that are causing deadlock need another look. This is much closer to being merged, this needs:
- Another look over the PyOP2 changes/review.
- DH: thinks a meeting with JB to review would be more productive.
- Comments/feedback on
PYOP2_SPMD_STRICT
mode (not switched on by default, but I've already found it exceedingly useful).- DH: thinks this is sensible.
- Feedback/review on the corresponding Firedrake changes, specifically I'd like some group thought/wisdom about the hashing functions that are used (ensuring that they are unique, I don't necessarily know all the details of the arguments).
- See feedback from DH.
- Another look over the PyOP2 changes/review.
- I have had this PR open for a log time as a bit of a pet project, but find myself needing it more and more. The idea is to allow running the full test suite on systems that do not allow a recursive MPI init call (Side note: there is an officially blessed MPI way of doing this, see: https://github.com/JDBetteridge/mpispawn for a proof of concept solution). This Firedrake branch now contains a bunch of test fixes that ought to be moved back to master. What I want to know is:
- Can we switch to "MPI on the outside" test execution? Or will I have to keep maintaining this branch to test on HPC and other pedantic systems?
- Additionally, does someone want to fix, or at least tell me how to fix
tests/output/test_adjoint_disk_checkpointing.py::test_disk_checkpointing
? I have had to mark the test broken in this PR. The test pollutes the tape and only passes on master because each parallel test is run in isolation! Also, I don't thinkpytest-mpi
propagates markers likexfail
. (I (Daiane) can see this.)
- DH: Considers this too complex a PR to review without JB present.
Can whoever minutes also make it very clear what the outcomes of the discussions are so that I can pick this up next week when I'm back.
Note that PRs put in this section should either be trivial or already have been reviewed. Discussion-worthy PRs should be separate agenda items.
JB: FIAT #81 Use some relevant versions of Python for CI and fix missing pkg_resources
. - merged
JB: FInAT #136 Requires the above to pass tests, this can be re-run "live" the tests take <1min. - approved
JB: FInAT #134 Update FInAT UFL element hashes so they are persistent across invocations (so expressions can be retrieved from disk cache). There is proof that Firedrake works with these changes. - merged
PB: FD #3719 PatchPC: Log flops - merged
PB: FD #3734 Fix TransferManager reuse for MixedFunctionSpace - merged
PB: pyop2 #727 Fix Function.sub(i).zero() - merged
PB: FD #3749 Test Function.sub(i).zero() - approved, set to auto-merge
PB: FIAT #82 Macro: bin points to nearest cell - not ready
PB: FInAT #137 sympy2gem: if-then-else - merged
DD: Fix MUMPS macOS #3752 - small comment, otherwise ready to merge
- DH: Suspects something is wrong inside MUMPS causing the
pytest
issue. Thinks it is acceptable to treat as a 'wontfix'.
DD: Fix link in FWI demo #3756 - merged
1600 BST (1500 UTC) 2024-09-11
Building locally
Tips
- Running Firedrake tests with different subpackage branches
- Modifying and Rebuilding PETSc and petsc4py
- Vectorisation
- Debugging C kernels with
lldb
on MacOS - Parallel MPI Debugging with
tmux-mpi
,pdb
andgdb
- Parallel MPI Debugging with VSCode and
debugpy
- Modifying generated code
- Kernel profiling with LIKWID
- breakpoint() builtin not working
- Debugging pytest with multiple processing
Developers Notes
- Upcoming meeting 2024-08-21
- 2024-08-07
- 2024-07-24
- 2024-07-17
- 2024-07-10
- 2024-06-26
- 2024-06-19
- 2024-06-05
- 2024-05-29
- 2024-05-15
- 2024-05-08
- 2024-05-01
- 2024-04-28
- 2024-04-17
- 2024-04-10
- 2024-04-03
- 2024-03-27
- 2024-03-20
- 2024-03-06
- 2024-02-28
- 2024-02-28
- 2024-02-21
- 2024-02-14
- 2024-02-07
- 2024-01-31
- 2024-01-24
- 2024-01-17
- 2024-01-10
- 2023-12-13
- 2023-12-06
- 2023-11-29
- 2023-11-22
- 2023-11-15
- 2023-11-08
- 2023-11-01
- 2023-10-25
- 2023-10-18
- 2023-10-11
- 2023-10-04
- 2023-09-27
- 2023-09-20
- 2023-09-06
- 2023-08-30
- 2023-08-23
- 2023-07-12
- 2023-07-05
- 2023-06-21
- 2023-06-14
- 2023-06-07
- 2023-05-17
- 2023-05-10
- 2023-03-08
- 2023-02-22
- 2023-02-15
- 2023-02-08
- 2023-01-18
- 2023-01-11
- 2023-12-14
- 2022-12-07
- 2022-11-23
- 2022-11-16
- 2022-11-09
- 2022-11-02
- 2022-10-26
- 2022-10-12
- 2022-10-05
- 2022-09-28
- 2022-09-21
- 2022-09-14
- 2022-09-07
- 2022-08-25
- 2022-08-11
- 2022-08-04
- 2022-07-28
- 2022-07-21
- 2022-07-07
- 2022-06-30
- 2022-06-23
- 2022-06-16
- 2022-05-26
- 2022-05-19
- 2022-05-12
- 2022-05-05
- 2022-04-21
- 2022-04-07
- 2022-03-17
- 2022-03-03
- 2022-02-24
- 2022-02-10
- 2022-02-03
- 2022-01-27
- 2022-01-20
- 2022-01-13
- 2021-12-15
- 2021-12-09
- 2021-11-25
- 2021-11-18
- 2021-11-11
- 2021-11-04
- 2021-10-28
- 2021-10-21
- 2021-10-14
- 2021-10-07
- 2021-09-30
- 2021-09-23
- 2021-09-09
- 2021-09-02
- 2021-08-26
- 2021-08-18
- 2021-08-11
- 2021-08-04
- 2021-07-28
- 2021-07-21
- 2021-07-14
- 2021-07-07
- 2021-06-30
- 2021-06-23
- 2021-06-16
- 2021-06-09
- 2021-06-02
- 2021-05-19
- 2021-05-12
- 2021-05-05
- 2021-04-28
- 2021-04-21
- 2021-04-14
- 2021-04-07
- 2021-03-17
- 2021-03-10
- 2021-02-24
- 2021-02-17
- 2021-02-10
- 2021-02-03
- 2021-01-27
- 2021-01-20
- 2021-01-13
- 2021-01-06