Mat: Replace 0 -> NULL for pointers
Add manual page links for MatSeqAIJSetPreallocationCSR() and more notes and developer notesRemoved computed but unused variableCommit-type: optimization, documentation/spend 30mThanks-to: Adol
Add manual page links for MatSeqAIJSetPreallocationCSR() and more notes and developer notesRemoved computed but unused variableCommit-type: optimization, documentation/spend 30mThanks-to: Adolfo Rodriguez <adantra@gmail.com>
show more ...
Updated the use of sizeof() when possible instead of using hardwired sizes for functions whose string argumentsneed sizes. In particular done for PetscOptionsGetString(), PetscOptionsString(), and a
Updated the use of sizeof() when possible instead of using hardwired sizes for functions whose string argumentsneed sizes. In particular done for PetscOptionsGetString(), PetscOptionsString(), and a few other utilitiesCommit-type: style-fixDevelopment Tools: Vim, Emacs, Eclipse
Single petscdir.mk
build: add more support for not needing to set PETSC_DIR yet build with PETSc, also support for GNU make to directly use "make test" instead of "make -f gmakefile.test"Still needs -include ../petsc
build: add more support for not needing to set PETSC_DIR yet build with PETSc, also support for GNU make to directly use "make test" instead of "make -f gmakefile.test"Still needs -include ../petscdir.mk in many of the makefilesStill needs the link for ../petscdir.mk in many directoriesGNUMakefile: call legacy makefile recursively instead of including itGNUMakefile: promote default "all" target; "libs" builds libpetsc*GNUMakefile: If gnumake < 4.2 prefer makefile wrapper interface over direct gmakefile interface to avoid the following warningsgmakefile.test:92: arch-ci-linux-cxx-cmplx-pkgs-64idx/tests/testfiles: No such file or directorygmakefile:67: arch-ci-linux-cxx-cmplx-pkgs-64idx/lib/petsc/conf/files: No such file or directoryCommit-type: testing-fix, feature, usabilityThanks-to: Jed Brown jed@jedbrown.org
Remove usage of PETSC_HAVE_FORTRAN_STDCALL, PETSC_BLASLAPACK_STDCALL, HAVE_FORTRAN_MIXED_STR_ARG flags - as Compaq f90 compiler is no longer supported
Changed XXXPinToCPU() to XXXBindToCPU() to prevent confusion.The reason for this change is that we already use the terminology"pinned" to refer to memory that is non-pageable, in the context ofPe
Changed XXXPinToCPU() to XXXBindToCPU() to prevent confusion.The reason for this change is that we already use the terminology"pinned" to refer to memory that is non-pageable, in the context ofPetscSF as well as allocating host memory when GPUs are being employed.
Added MatFDColoringSetValues() takes matrix in compressed color form (as often used by AD codes) into a PETSc MatAdded PetscObjectCompareId()Commit-type: featureReported-by: Hong Zhang <hongzhan
Added MatFDColoringSetValues() takes matrix in compressed color form (as often used by AD codes) into a PETSc MatAdded PetscObjectCompareId()Commit-type: featureReported-by: Hong Zhang <hongzhang@anl.gov>
fdmatrix.c edited online with Bitbucket
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
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
Based on discussion with Oana I am adding a MatPinToCPU() and VecPinToGPU() capability. For matrices thiswill prevent copies to the GPU when they will never be used there. For vectors this willprev
Based on discussion with Oana I am adding a MatPinToCPU() and VecPinToGPU() capability. For matrices thiswill prevent copies to the GPU when they will never be used there. For vectors this willprevent vectors from boucing back and forth between the CPU and GPU when most of the work is in the CPU. Anexample of the place that needs to avoid bouncing is in MatFDColoringApply_XXXX()Commit-type: feature, documentation, exampleThanks-to: Oana Marin <oanam@mcs.anl.gov>
Merge branch 'barry/fix-check-ierr-before-freechar/maint' [PR #1220]* barry/fix-check-ierr-before-freechar/maint:Add if (*ierr) return checks for all Fortran stubs that utilize FREECHAR()Otherwis
Merge branch 'barry/fix-check-ierr-before-freechar/maint' [PR #1220]* barry/fix-check-ierr-before-freechar/maint: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 not
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>
Complete support for individual PETSc objects to use their own options database with PetscObjectSetOptions()Commit-type: feature, exampleReported-by: "Blondel, Sophie" <sblondel@utk.edu>
Merge branch 'maint'
fix help menu for MatFDColoringSetFromOptions() and user manualReported-by: Forster, Matthew (UK) <matthew.forster@baesystems.com>
Man pages: add newlines after "Notes:"This allows for proper formatting from sowing.On OS X (using gsed, not the default BSD sed), from the PETSc root directory: find src include -type f \(
Man pages: add newlines after "Notes:"This allows for proper formatting from sowing.On OS X (using gsed, not the default BSD sed), from the PETSc root directory: find src include -type f \( -name "*.c" -or -name "*.h" -or -name "*.cxx" \) | xargs gsed -i 's/Notes\s*:\s*\(\w.*\)/Notes:\n \1/'This adds a newline and 4 spaces whenever "Notes:" is followed by any "word" character, in any .c, .h, or .cxx file in src/ or include/
Reorganize order of entries in manual pages, make headings uniform in manual pagesFix details in multiple manual pagesCommit-type: i.e. bug-fix, portability-fix, testing-fix,style-fix, feature, d
Reorganize order of entries in manual pages, make headings uniform in manual pagesFix details in multiple manual pagesCommit-type: i.e. bug-fix, portability-fix, testing-fix,style-fix, feature, documentation, exampleFunded-by:Project:Time: hoursReported-by:Thanks-to:Development Tools: Vim, Emacs, Eclipse
F90Array routines now take a MPI_Datatype argument instead of PetscDataTypeThis is part of the refactorization to limit and maybe eventually eliminate PetscDataType sinceit duplicates MPI_Datatype
F90Array routines now take a MPI_Datatype argument instead of PetscDataTypeThis is part of the refactorization to limit and maybe eventually eliminate PetscDataType sinceit duplicates MPI_Datatype functionality (poorly).Commit-type: style-fixThanks-to: Jed Brown <jed@jedbrown.org>
Added MatFDColoringGetPerturbedColumnsF90() and MatFDColoringRestorePerturbedColumnsF90()Commit-type: featureTime: 2 hoursReported-by: Adrian Croucher <a.croucher@auckland.ac.nz>
Minor cleanup, remove some outdated code, remove unneeded constructs, improve manual pages slightly, add missing test caseTime: 2.5 hours
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-t
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-to: Andreas Mang <andreas@ices.utexas.edu>
Updated and simplified Fortran interfaceReduced from 4 distinct approaches to using PETSc from Fortran to 1No more .h90 files (Fortran 90 functionality is now always available)Parameters and func
Updated and simplified Fortran interfaceReduced from 4 distinct approaches to using PETSc from Fortran to 1No more .h90 files (Fortran 90 functionality is now always available)Parameters and function prototypes are now provide through Fortran modules, not includes;only #define are provided in the petscXXXdef.h filesPETSc objects can be declared as either type(tXXX) or XXX. For example type(tVec) or VecMoved now private Fortran include files out of public include directory since uses don't use them;they are only used to generate the Fortran modulesEasier to support and test; we can now easily add more function prototypesAlso had to rework generation of manual pages to consistently use MANSEC and SUBMANSECsince these variables also handle how the Fortran modules are generated.Time: 57 hours
Changed IS_COLORING_GHOSTED to IS_COLORING_LOCAL, added test case, fixed code to work properlyTime: 5 hoursReported-by: Hong Zhang <hzhang@mcs.anl.gov>
12345678910>>...16