-
Notifications
You must be signed in to change notification settings - Fork 160
Firedrake meeting 2023 02 08
Date and time 2023-02-08 16:00UTC
- Pick Chair and Minuter (RNH to pick minuter)
- ALL: (ongoing) triage the open issues and confirm if they are indeed still open (and perhaps provide labels)
- JB: A Firedrake manual
- JB: Move PyOP2 and FInAT to firedrakeproject
- ALL: do things with SV's branches
- KS: Fix checkpointing error with pickling elements
Present: CW (minuter), RK, KS, DH, JB, IM, DS, RNH, PB, NB, FA, PF
Apologies:
1. RCK: Let's discuss the possibility of "extraction operators" in PyOP2/3 as a pathway to get more elements/simplify zany elements?
- RK: Previously assumed a 1-to-1 relationship assumed between global and local basis functions. Makes zany, splines and other bits hard/impossible. This is solved by extraction operators. "Global basis supported on cell i - how do I represent this in a local basis?". Can be encoded as a sparse matrix.
- DH: Would call this "packing" and "unpacking" operators. Need to be careful about data movement.
- DH: Some complex cases of this include Serendipity or H-curl with 2 DoFs per face (can't be represented by permutations).
- DH: This is a property of a function space. Could be computed eagerly or lazily.
- DH: We assume that the element kernel operates in reference/canonical orientation. This means that zany/complex transformations would be happening outside of the element kernel.
- DH: We are effectively proposing a system where for some elements the kernel does not lower to reference space (instead local space). Moves the pullback operation (and possibly other transformations) into the "pack", "unpack" space.
- RK: Need to attach extraction operator to the function space not the finite element as some information belongs to the mesh.
Often CI is failing with:
Error: Process completed with exit code 137.
- DH: Processes never return memory to the OS so tests consume a huge amount of memory by the end. Current plan is to
mpiexec
every single test. This guarantees that tests do not pollute the existing environment.
JB: Firedrake Manual
Action on everybody to take the time to check your details are up to date. Whilst you're at it please flick through the manual to check for errors. 🙂
This is out of date. We should update the website so the manual contains correct info before it is released.
I have made a start on this
Is there anything else out of date on the website that needs updating? (Feel free to add to this agenda item)
PF: https://github.com/firedrakeproject/firedrake/pull/2756 - closed (not a good candidate for merging to Firedrake)
PB: https://github.com/firedrakeproject/firedrake/pull/2708 - merged
PB: https://github.com/firedrakeproject/firedrake/pull/2707 - conflict needs resolving
PB: https://github.com/firedrakeproject/fiat/pull/34 - merged
PB: https://github.com/firedrakeproject/fiat/pull/35 - needs testing
PB: https://github.com/FInAT/FInAT/pull/107 - merged
RNH: Firedrake: VertexOnlyMesh on ExtrudedMesh #2750 - discussed
RNH: FIAT: Add methods for getting L1 distance of a point from reference cells #33
RNH: Firedrake: Guarantee finding cell for point on boundary #2662
1600 UTC 2023-02-15
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