Convert MPI error type to PETSc error with string message for all MPI callsNow PETSc examples will ONLY return PETSc error codes and never MPI error codes directly so we can understand and post-pro
Convert MPI error type to PETSc error with string message for all MPI callsNow PETSc examples will ONLY return PETSc error codes and never MPI error codes directly so we can understand and post-process their errors better.The test harness will now automatically retry tests that fail with MPI, this may help with Intel MPI that produces seemingly random failures.Commit-type: error-checking/spend 30m
show more ...
Turn on checkbadSource test to generate an error when found; fix all source code that causes errorsCommit-type: portability-fix, testing-fix, style-fix, feature, maintainability/spend 1.5h
Vec: Replace 0 -> NULL for pointers
PetscDefined: remove many uses of #ifdef PETSC_USE_DEBUG
PetscDefined: test whether a configuration macro is defined without #ifdefThis allows testing configuration macros from normal code, thus avoidingunused variable warnings and allowing the compiler
PetscDefined: test whether a configuration macro is defined without #ifdefThis allows testing configuration macros from normal code, thus avoidingunused variable warnings and allowing the compiler to check for syntaxerrors throughout all alternatives. This uses C99-style variadicmacros with a second expansion to appease MSVC's non-conformingimplementation of variadic macros.This trick was introduced by "comex" on Google+ in response to aquestion posed by Linus Torvalds.https://plus.google.com/+LinusTorvalds/posts/9gntjh57dXtThis technique (modulo MSVC support) was implemented in the Linux kernel by Paul Gortmaker:https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=69349c2dc01c489eccaa4c472542c08e370c6d7e
Merge branch 'jed/promote-examples-tests-tutorials' [petsc/petsc!2610]* jed/promote-examples-tests-tutorials: Promote examples/{tests,tutorials}/ to {tests,tutorials}/
Added functionality to selectively filter PetscInfo() output based on calling class tomimic some OS system logs. New functionality includes:- Filter for a set of classes- Filter out a set of class
Added functionality to selectively filter PetscInfo() output based on calling class tomimic some OS system logs. New functionality includes:- Filter for a set of classes- Filter out a set of classes- Filter for MPI/PETSC_COMM_SELF- Filter for anything not on MPI/PETSC_COMM_SELF- Writing PetscInfo() output to new file- Appending output to existing PetscInfo() file- Any combination of the aboveCredit to Vaclav Hapla for raising the initial issue, helping design the eventual API, andsubstantially assisting in debugging.
Promote examples/{tests,tutorials}/ to {tests,tutorials}/This shortens paths and improves consistency between test target namesand paths to the source and output files. Most of the work wascompl
Promote examples/{tests,tutorials}/ to {tests,tutorials}/This shortens paths and improves consistency between test target namesand paths to the source and output files. Most of the work wascompleted by this script, followed by mild cleanup of nonconformingcases.for makefile in `git ls-files 'src/*makefile'`; do if rg -q 'DIRS.*\bexamples\b' $makefile; then base=$(dirname $makefile) dirs=$(cd $base/examples && ls -d tests tutorials 2>/dev/null | xargs echo) perl -pi -e "s#^(DIRS.*)\bexamples\b#\1${dirs}#" $makefile git rm $base/examples/makefile for t in $dirs; do git mv $base/examples/$t $base/ perl -pi -e "s#^(LOCDIR[[:space:]]*=).*#\1 $base/$t/#" $base/$t done fidonegit grep -l -E -z 'examples/(tutorials|tests)' | xargs -0 perl -pi -e 's#examples/(tutorials|tests)#\1#g'git checkout @ \ src/docs/website/documentation/changes/ \ src/benchmarks/results/
Remove usage of PETSC_HAVE_FORTRAN_STDCALL, PETSC_BLASLAPACK_STDCALL, HAVE_FORTRAN_MIXED_STR_ARG flags - as Compaq f90 compiler is no longer supported
Merge remote-tracking branch 'origin/maint'
Double CHKERRQ
Fix item list in manpages of XXXViewFromOptions
prototype for ViewFromOptions macro-->functions
Output file updates
ex3: Added PETSC_SKIP_CXX_COMPLEX_FIX to circumvent C++ issues.
Non-numeric optimizations focused on AIJ, MatFDColoring, and DMCreateMatrix_DA_*AIJ, looking to improve performance in GPU environments1) PetscCalloc*() now uses system calloc()2) Merged some Pets
Non-numeric optimizations focused on AIJ, MatFDColoring, and DMCreateMatrix_DA_*AIJ, looking to improve performance in GPU environments1) PetscCalloc*() now uses system calloc()2) Merged some PetscMalloc*()3) Eliminated unneeded PetscCalloc*()4) Removed some memory allocations and copies in MatFDColoringSetUp(), added local variables for better compiler optimization5) Added MatSetValues_SeqAIJ_SortedFull(), added MatSetOption(MAT_SORTED_FULL)6) Optimized DMCreateMatrix_DA_*AIJ for nonperiodic case to automatically have sorted columns (faster MatSetValues() times)7) Eliminated call to PetscMemzero() in PetscFree()Commit-type: style-fix, feature
Add PetscArraycmp(), PetscArraycpy(), PetscArrayzero(), PetscArraymove(), update code to use new formsReplace a couple multi-mallocs with a single mallocReplace backwards loops in MatSetValues_*()
Add PetscArraycmp(), PetscArraycpy(), PetscArrayzero(), PetscArraymove(), update code to use new formsReplace a couple multi-mallocs with a single mallocReplace backwards loops in MatSetValues_*() with PetscArraymove()Commit-type: style-fix, feature
Update the use of Collective on in the manual pages to reflect the new styleCommit-type: style-fix, documentationThanks-to: Patrick Sanan <patrick.sanan@gmail.com>
Man pages: remove .keywords: fieldsThis field is recognized by doctext from Sowing (http://wgropp.cs.illinois.edu/projects/software/sowing/doctext/node20.htm#Node20),but it doesn't seem to be unif
Man pages: remove .keywords: fieldsThis field is recognized by doctext from Sowing (http://wgropp.cs.illinois.edu/projects/software/sowing/doctext/node20.htm#Node20),but it doesn't seem to be uniformly used or maintained.Thus, remove all .keywords: fields, and a following blank line, if present.This is accomplished with GNU sed (gsed on OS X), with the following commands.*Warning* that this type of command can corrupt a .git directory,so be cautious in reusing or modifying these commands. They first lookfor and delete matching lines with a following line consisting of only whitespace,and then delete any remaining matching lines. find src/ -type f -exec gsed -i '/keywords:/ {N; /\n\s*$/d}' {} + find src/ -type f -exec gsed -i '/keywords:/d' {} + find include/ -type f -exec gsed -i '/keywords:/ {N; /\n\s*$/d}' {} + find include/ -type f -exec gsed -i '/keywords:/d' {} +Hints on the sed command obtained from: https://unix.stackexchange.com/questions/100754/how-to-delete-a-specific-line-and-the-following-blank-line-using-gnu-sed
Fixes for begining of users manual and a variety of webpages including manual pagesCommit-type: bug-fix, documentation
AO ex5: Fixed missing CHKERRQ();
Fix AOMEMORYSCALABLE for negative indicesCommit-type: bug-fix, exampleReported-by: Huy Vo <Huy.Vo@colostate.edu>
Add if (*ierr) return checks for all Fortran stubs that utilize FREECHAR()Otherwise the ierr is overwritten by the FREECHAR() thus returning a zero error code when it should notCommit-type: bug-f
Add if (*ierr) return checks for all Fortran stubs that utilize FREECHAR()Otherwise the ierr is overwritten by the FREECHAR() thus returning a zero error code when it should notCommit-type: bug-fixReported-by: Tim Steinhoff <kandanovian@gmail.com>
Remove memory leaks of XXXRegister() is called but XXX object is never usedThis means adding YYYInitialPackage() at the beginning of XXXRegister() routinesMinor fixes of missing prototypesCommi
Remove memory leaks of XXXRegister() is called but XXX object is never usedThis means adding YYYInitialPackage() at the beginning of XXXRegister() routinesMinor fixes of missing prototypesCommit-type: style-fixReported-by: Jed Brown <jed@jedbrown.org>Thanks-to: Fande Kong <fande.kong@inl.gov>
Remove CHKFORTRANNULLOBJECTDEREFERENCE since it is no longer needed with Fortran null equal to C nullCommit-type: feature
123456789