xref: /petsc/doc/community/roadmap.md (revision 3ba50cbb8987b4dbba70a5df1428185ecadddcf3)
1*09cc9507SBarry Smith(roadmap)=
2*09cc9507SBarry Smith
3*09cc9507SBarry Smith# PETSc Roadmap
4*09cc9507SBarry Smith
5*09cc9507SBarry SmithPlanned major focus areas for PETSc development include the following.
6*09cc9507SBarry Smith
7*09cc9507SBarry Smith- Continue implementing advanced algorithms to provide state-of-the-art problem-solving infrastructure for large-scale nonlinear problems.
8*09cc9507SBarry Smith
9*09cc9507SBarry Smith- GPU support including NVIDIA, AMD, and Intel systems.
10*09cc9507SBarry Smith
11*09cc9507SBarry Smith- Differentiable software. That is more support in all components of PETSc and PETSc simulations for providing and conveying
12*09cc9507SBarry Smith  derivative information and making it available to the user and machine learning software such as PyTorch, JAX, and TensorFlow.
13*09cc9507SBarry Smith  This can include algorithmic (e.g., `TSAdjoint`) and automatic differentiation.
14*09cc9507SBarry Smith
15*09cc9507SBarry Smith- Batching. Efficiently solving structurally similar problems together using potentially multiple levels of parallelism.
16*09cc9507SBarry Smith
17*09cc9507SBarry Smith- Enhanced language bindings.
18*09cc9507SBarry Smith
19*09cc9507SBarry Smith  - Easier Python usage including transparent interoperability with **NumPy**, PyTorch, JAX, and TensorFlow.
20*09cc9507SBarry Smith  - Julia bindings.
21*09cc9507SBarry Smith  - Rust bindings.
22