| #
5e642da6
|
| 21-Oct-2025 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'jolivet/checkbadSource' into 'main'
checkbadSource: enforce proper style in makefiles
See merge request petsc/petsc!8802
|
| #
3f02e49b
|
| 21-Oct-2025 |
Pierre Jolivet <pierre@joliv.et> |
checkbadSource: enforce proper style in makefiles
|
| #
6d8694c4
|
| 20-Mar-2025 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2024-04-29/add-fortran-enums' into 'main'
Major updates to Fortran interface
See merge request petsc/petsc!7517
|
| #
ce78bad3
|
| 20-Feb-2025 |
Barry Smith <bsmith@petsc.dev> |
Fortran 90: fully embrace After 34 years!
- deprecate use of 'F90' in Fortran function names - use Fortran pointers when appropriate - the new Fortran API is not backward compatible with previous ve
Fortran 90: fully embrace After 34 years!
- deprecate use of 'F90' in Fortran function names - use Fortran pointers when appropriate - the new Fortran API is not backward compatible with previous versions! - also clean up inconsistent PETSc code detected by new Fortran generation tools - drop use of bfort - automatically generate all the Fortran PETSc objects, enums etc from the include files - generate most of the Fortran interface definitions and functions from the source code - simplify the number and organization of Fortran modules
Co-authored-by: Jose E. Roman <jroman@dsic.upv.es>
show more ...
|
| #
60259892
|
| 26-Dec-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2023-12-22/rm-libbase' into 'main'
LIBBASE is no longer used in make so remove it
See merge request petsc/petsc!7139
|
| #
9140fee1
|
| 22-Dec-2023 |
Barry Smith <bsmith@mcs.anl.gov> |
LIBBASE is no longer used in make so remove it
|
| #
360cdf6b
|
| 28-Oct-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2023-10-25/rename-rules-doc' into 'main'
Rename rules.doc and rules.utils because GitLab treats the former as a MS Word document.
See merge request petsc/petsc!6965
|
| #
cb5db241
|
| 25-Oct-2023 |
Barry Smith <bsmith@mcs.anl.gov> |
Rename rules.doc and rules.utils because GitLab treats the former as a MS Word document.
Thanks-to: Jed Brown
|
| #
97c047f8
|
| 25-Oct-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'barry/2023-10-18/rm-dirs-from-makefiles' into 'main'
Remove use of and the DIRS variables from the makefiles
See merge request petsc/petsc!6945
|
| #
66af8762
|
| 18-Oct-2023 |
Barry Smith <bsmith@mcs.anl.gov> |
Remove DIRS variable and unneeded tabs from all makefiles since no longer needed
Commit-type: housekeeping
|
| #
33fbd385
|
| 22-Sep-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'tisaac/feature-log-nvtx' into 'main'
Profiling: Create PETSCLOGHANDLERNVTX (`-log_view` no longer required for Nsight ranges)
See merge request petsc/petsc!6884
|
| #
61cc7448
|
| 21-Sep-2023 |
Toby Isaac <toby.isaac@gmail.com> |
Profiling: Create PETSCLOGHANDLERNVTX
|
| #
6c37f76f
|
| 27-Jul-2023 |
Satish Balay <balay@mcs.anl.gov> |
Merge branch 'tisaac/feature-log-handler' into 'main'
Deglobalize logging into PetscLogHandler and PetscLogState
See merge request petsc/petsc!6709
|
| #
0970d93f
|
| 13-Jul-2023 |
Toby Isaac <toby.isaac@gmail.com> |
Profiling: Add legacy callbacks implementation of PetscLogHandler
The existing logging infrastructures has four exposed callback pointers:
- PetscLogPLB / PetscLogPLE for PetscLogEventBegin() / Pet
Profiling: Add legacy callbacks implementation of PetscLogHandler
The existing logging infrastructures has four exposed callback pointers:
- PetscLogPLB / PetscLogPLE for PetscLogEventBegin() / PetscLogEventEnd() These can also be set with PetscLogSet
- PetscLogPHC / PetscLogPHD for PetscLogObjectCreate() / PetscLogObjectDestroy()
This log handler implementation provides a path for users who have been setting their own callbacks with these functions to upgrade to the new PetscLogHandler interface.
show more ...
|
| #
ccf0b5c1
|
| 13-Jul-2023 |
Toby Isaac <toby.isaac@gmail.com> |
Profiling: Add tau perfstubs implementation of PetscLogHandler
In the existing logging, perfstubs runs automatically with -log_view if PETSc is configured --with-tau-perfstubs. This new PetscLogHan
Profiling: Add tau perfstubs implementation of PetscLogHandler
In the existing logging, perfstubs runs automatically with -log_view if PETSc is configured --with-tau-perfstubs. This new PetscLogHandler implementation will be used with a new -log_perfstubs command line option that will only run this handler and not the default handler.
show more ...
|
| #
856bee69
|
| 13-Jul-2023 |
Toby Isaac <toby.isaac@gmail.com> |
Profiling: add MPE implementation of PetscLogHandler
This is meant to handle -log_mpe.
|
| #
6467efc9
|
| 13-Jul-2023 |
Toby Isaac <toby.isaac@gmail.com> |
Profiling: Add trace implementation of PetscLogHandler
This is a minimal PetscLogHandler implementation for -log_trace.
|
| #
b9321188
|
| 13-Jul-2023 |
Toby Isaac <toby.isaac@gmail.com> |
Profiling: Add nested PetscLogHandler implementation
This log handler has behavior like the behavior of PetscLogNestedBegin().
Unlike the implementation of PetscLogHandler_Default, I did not try to
Profiling: Add nested PetscLogHandler implementation
This log handler has behavior like the behavior of PetscLogNestedBegin().
Unlike the implementation of PetscLogHandler_Default, I did not try to do a faithful translation of the existing nested logging behavior, for two reasons.
- The existing implementation keeps sorted lists of nested paths ("Event A;Event B;"), and for each of those paths keeps a sorted list of the top-level events ("Event C", "Event D") that map that path to other paths (path + event => other path). It's a complicated data structure, and the benefit of the sorting (O(log n) lookup) is probably not worth the more expensive insertion cost each time a new path + event combo appears. Instead I implemented the path + event => other path lookup as a hash map, which simplified the implementation significantly.
- The existing implementation assigns an event to each path, modifying the event registry in place. This messes things up if you want to both -log_view and -log_view ::ascii_flamegraph output, the original motivation for refactoring the profiling infrastructure. In the new implementation, the nested handler has its own PetscLogState that it modifies, and an inner copy of PetscLogHandler_Default the acts on that nested state.
- The PetscLogGlobalNames data structure also simplifies the construction of a linearized tree of events in the final viewing stage, although the low-level xml construction routines are copied almost verbatim from the previous implementation.
show more ...
|
| #
78f1b9b4
|
| 13-Jul-2023 |
Toby Isaac <toby.isaac@gmail.com> |
Profiling: Implement the default PetscLogHandler
The existing default log handling that uses the PetscStageLog is translated in the PetscLogHandler_Default implementation of PetscLogHandler.
- Most
Profiling: Implement the default PetscLogHandler
The existing default log handling that uses the PetscStageLog is translated in the PetscLogHandler_Default implementation of PetscLogHandler.
- Most data that is global in the existing log handling is moved into the struct, with the exception of the raw counters.
- The registry data structures of PetscStageLog (eventLog, classLog) are not reproduced because they are now in the PetscLogState interface.
- PETSC_LOG_RESIZABLE_ARRAY is used to implement resizable arrays instead of PetscStageInfo, PetscEventPerfLog, and PetscClassPerfLog
- The tau perfstubs and MPE functionality is not reproduced because they will become new handlers on their own.
- The PetscLogGlobalNames provided by the PetscLogRegistry interface make the logging robust to differences in which events / stages are registered on which process and in which order.
Otherwise the functions are relatively faithful translations of the existing PetscStageLog functions into the new interface. When reviewing this commit it might help to have a diff between the PetscStageLog and PetscLogHandler_Default functions to see what changes between them. I am working on a way to attach that to the MR associated with this change.
show more ...
|