-
Notifications
You must be signed in to change notification settings - Fork 161
Firedrake meeting 2022 06 16
Reuben W. Nixon-Hill edited this page Jun 21, 2022
·
8 revisions
Date and time 2022-06-16 12:00UTC (13:00BST 22:00AEST)
- Pick Chair and Minuter (SV to pick).
- ALL: (ongoing) triage the open issues and confirm if they are indeed still open (and perhaps provide labels)
- KS: Test PETSc main against current Firedrake
- JB: Look into updating the
@parallel
test marker (ongoing) - DH: talk to Jemma about Firedrake 2022
Present:
Apologies: JB
- No longer hosted by exeter - need to find a new location.
merge fix BOP https://github.com/firedrakeproject/firedrake/pull/2446
- KS: To take a look at the code. (done)
- SV: Needs to rerun performance measurements. (done)
- SV: Code is a lot nicer now thanks to Koki
New:
- Koki approves, happy to be merged once history is cleaned up.
https://github.com/firedrakeproject/firedrake/pull/2455
- Looks uncontroversial, Jack to review
CSE23 has opened submissions for minisymposia - the deadline is the end of August. Perhaps we might want to do a code generation symposium again? https://www.siam.org/conferences/cm/conference/cse23
- Yes!
- Coordinate with other code generation people in excalibur: Sysgenx, devito, FEniCS, Firedrake
- We have to come up with a list of talks and submit them all together
- Need 8 talks, only one can be TBD, split into 2 parts
- Alternatively could do minisymposterium (poster session)
- Start by assuming we will do minisymposium and then see who is interested
- Discuss who will take this on next time
- Getting there, currently dependent on a PETSc change
https://github.com/firedrakeproject/firedrake/pull/2458
- Stops all calculations always being stored in memory, writes them to disc instead
- Docs only not building because of usual cross project issues
- Adds a
_package_data
argument to the tape that allows extra information to be added to the tape (such as how to do disk checkpointing), ensures all usual tape arguments still work (clearing, copying etc) - Package data has an abstract base class to ensure compatibility with (for example) disk checkpointing if you want to use it
- Tested in pyadjoint in serial
- Tested in firedrake in parallel (needs fix to parallel disk checkpointing, see below)
- In firedrake we update blocks:
- use a
maybe_disk_checkpoint
call which takes information on disk (if necessary) and works out how to turn them back into firedrakeFunction
s
- use a
- In firedrake checkpointing API updated with
enable_disk_checkpointing
andcheckpointable_mesh(mesh)
- We use python's garbage manager to clean up files that we don't need any more using a
DiskCheckpointFileRef
(check spelling) - Checkpoint copy not currently implemented but not likely used by anyone
- Contains API changes needed for "revolve style" checkpointing (i.e. with limited memory) which is DH's next job
Next meeting: 1200 UTC 2022-06-23
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