Trilinos merge requestshttps://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests2019-05-06T20:20:37Zhttps://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/5092Muelu ETI bugfix for Clang2019-05-06T20:20:37ZJames WillenbringMuelu ETI bugfix for Clang*Created by: william76*
PLEASE DO NOT MERGE THIS YET
==========================
This PR is still a work-in-progress but we'd like to let it go through a cycle of PR testing and see what happens =)
Description
========
I was ge...*Created by: william76*
PLEASE DO NOT MERGE THIS YET
==========================
This PR is still a work-in-progress but we'd like to let it go through a cycle of PR testing and see what happens =)
Description
========
I was getting link errors on `muelu_lgn` where it was failing under clang on OSX because symbols from files in `Utils/*.cpp` and `MueCentral/*.cpp` were not there.
This is because a dependency was put in making MueLu dependent on MueLu_LGN.
In this fix I just added `MueCentral/*.cpp` and `Utils/*.cpp` to `SOURCES_LGN` in the MueLu CMakeLists.txt file so it can have them.
I'm able to compile MueLu now and have also tested these changes on a RHEL7 machine too with successful compilation.
@trilinos/muelu
@jhux2
https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/5064Teuchos: added deprecation warnings that were missing in #ifdef'ed deprecat...2019-05-03T23:02:29ZJames WillenbringTeuchos: added deprecation warnings that were missing in #ifdef'ed deprecated code*Created by: kddevin*
<!---
Be sure to select `develop` as the `base` branch against which to create this
pull request. Only pull requests against `develop` will undergo Trilinos'
automated testing. Pull requests against `master` w...*Created by: kddevin*
<!---
Be sure to select `develop` as the `base` branch against which to create this
pull request. Only pull requests against `develop` will undergo Trilinos'
automated testing. Pull requests against `master` will be ignored.
Provide a general summary of your changes in the Title above. If this pull
request pertains to a particular package in Trilinos, it's worthwhile to start
the title with "PackageName: ".
Note that anything between these delimiters is a comment that will not appear
in the pull request description once created. Most areas in this message are
commented out and can be easily added by removing the comment delimiters.
Please make sure to mark:
* Reviewers
* Assignees
* Labels
Replace <teamName> below with the appropriate Trilinos package/team name.
-->
@trilinos/teuchos
## Description
Methods in Teuchos were #ifdef'ed as deprecated, but did not include TEUCHOS_DEPRECATED warnings. Now they do.
This PR will need to be cherry-picked to the 12.6 release branch.
## Related Issues
#4430 #4330 #4258
## How Has This Been Tested?
Compilation on mac clang.
Warnings appear as expected; no other behavior changes from this PR.https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/5052Xpetra: ETI for CrsMatrixWrap (try 2)2019-05-03T21:10:57ZJames WillenbringXpetra: ETI for CrsMatrixWrap (try 2)*Created by: jhux2*
Partially address issue #4986.*Created by: jhux2*
Partially address issue #4986.https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/5028Xpetra: split CrsMatrixWrap class2019-05-03T21:10:47ZJames WillenbringXpetra: split CrsMatrixWrap class*Created by: jhux2*
Work towards completing issue #4986.*Created by: jhux2*
Work towards completing issue #4986.https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/5060Xpetra: Adding ETI for Xpetra::TpetraImport2019-05-01T22:16:41ZJames WillenbringXpetra: Adding ETI for Xpetra::TpetraImport*Created by: csiefer2*
Auto-PR for SHA 52e7c5d*Created by: csiefer2*
Auto-PR for SHA 52e7c5dhttps://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4967Tpetra: restore original ETI types for normImpl2019-05-01T18:46:47ZJames WillenbringTpetra: restore original ETI types for normImpl*Created by: kddevin*
This reverts commit 665ede02ff3f99d18cb436acf9c73693e942c427.
This PR reverts the changes suggested in #4951 and pushed in #4956
Although these changes worked fine with PR testing both with and without depreca...*Created by: kddevin*
This reverts commit 665ede02ff3f99d18cb436acf9c73693e942c427.
This PR reverts the changes suggested in #4951 and pushed in #4956
Although these changes worked fine with PR testing both with and without deprecated code, they caused build failures in Albany #4962
@trilinos/tpetra These changes may cause builds with Tpetra_ENABLE_DEPRECATED_CODE=OFF to have link errors; the short term workaround is to use global ordinal = INT instead of LONG LONG.
<!---
Be sure to select `develop` as the `base` branch against which to create this
pull request. Only pull requests against `develop` will undergo Trilinos'
automated testing. Pull requests against `master` will be ignored.
Provide a general summary of your changes in the Title above. If this pull
request pertains to a particular package in Trilinos, it's worthwhile to start
the title with "PackageName: ".
Note that anything between these delimiters is a comment that will not appear
in the pull request description once created. Most areas in this message are
commented out and can be easily added by removing the comment delimiters.
Please make sure to mark:
* Reviewers
* Assignees
* Labels
Replace <teamName> below with the appropriate Trilinos package/team name.
-->
@trilinos/tpetra @ikalash
https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4862Tpetra: Fix #4861 (make BlockMultiVector implement "new" DistObject interface)2019-04-29T17:18:42ZJames WillenbringTpetra: Fix #4861 (make BlockMultiVector implement "new" DistObject interface)*Created by: mhoemmen*
@trilinos/tpetra
Superseded by https://github.com/trilinos/Trilinos/pull/4896.
## Description
- Make `Tpetra::BlockMultiVector` implement the "new" DistObject interface
- Hide header file includes i...*Created by: mhoemmen*
@trilinos/tpetra
Superseded by https://github.com/trilinos/Trilinos/pull/4896.
## Description
- Make `Tpetra::BlockMultiVector` implement the "new" DistObject interface
- Hide header file includes in the implementation of BlockMultiVector and BlockCrsMatrix
- Fix Tpetra build warnings
## Related Issues
* Closes #4861
* Blocks #4853
* Follows #4854
* Related to #3137 https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/5009Xpetra: ETI for MultiVector2019-04-25T22:45:33ZJames WillenbringXpetra: ETI for MultiVector*Created by: csiefer2*
I'm open to better suggestions, because the ETI mechanisms are UGLY*Created by: csiefer2*
I'm open to better suggestions, because the ETI mechanisms are UGLYhttps://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/5003Ifpack hypre set function addition2019-04-25T16:38:10ZJames WillenbringIfpack hypre set function addition*Created by: jthano*
This PR is to address issue #4976 and adds support of a set function in hypre taking an int ** argument.
The code has been tested by compiling the updated code and using the new interfaces to set values in a hypr...*Created by: jthano*
This PR is to address issue #4976 and adds support of a set function in hypre taking an int ** argument.
The code has been tested by compiling the updated code and using the new interfaces to set values in a hypre solver object with a pointer to the HYPRE_BoomerAMGSetGridRelaxPoints function.
NOTE: I see that the commit history is cluttered. I think this is because my branch was created based on the Trilinos master branch. I think I need to make my changes based on the develop branch that I have submitted the PR against. I'll work on doing this
@trilinos/ifpack
https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4998Xpetra: A cleaner branch for easy review of #49962019-04-24T14:04:44ZJames WillenbringXpetra: A cleaner branch for easy review of #4996*Created by: csiefer2*
#4996 had some weird inconsistencies with develop which caused github's diff to spaz. I dumped xpetra-eti onto a new branch and then dumped develop on top of that to make this easier to review.*Created by: csiefer2*
#4996 had some weird inconsistencies with develop which caused github's diff to spaz. I dumped xpetra-eti onto a new branch and then dumped develop on top of that to make this easier to review.https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4923Tpetra: Cross Branch2019-04-18T18:38:42ZJames WillenbringTpetra: Cross Branch*Created by: csiefer2*
*Created by: csiefer2*
https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4907Tpetra: Fix the Global Ordinal deprecations2019-04-18T16:13:21ZJames WillenbringTpetra: Fix the Global Ordinal deprecations*Created by: william76*
@trilinos/tpetra
Description
------------
- Add in cases to handle when `Tpetra_INST_INT_*` values aren't defined.
- Add in checks to disable `Tpetra_INST_INT_LONG_LONG` (which is enabled
by default) i...*Created by: william76*
@trilinos/tpetra
Description
------------
- Add in cases to handle when `Tpetra_INST_INT_*` values aren't defined.
- Add in checks to disable `Tpetra_INST_INT_LONG_LONG` (which is enabled
by default) if one of the other GO types is enabled by user
parameters.
Testing
-------
I tested configuring using the following settings:
| Tpetra\_ENABLE\_DEPRECATED\_CODE | Tpetra\_INST\_INT\_INT | Tpetra\_INST\_INT\_LONG\_LONG | WARNING | ERROR | GORDS |
| :---------------------------: | :-----------------: | :-----------------------: | :-----: | :---: | ----- |
| ON | UNSPECIFIED | UNSPECIFIED | YES | NO | int; long long |
| ON | ON | UNSPECIFIED | YES | NO | int; long long |
| ON | OFF | UNSPECIFIED | NO | NO | long long |
| ON | UNSPECIFIED | ON | YES | NO | int; long long |
| ON | UNSPECIFIED | OFF | NO | NO | int |
| ON | ON | ON | YES | NO | int; long long |
| ON | ON | OFF | NO | NO | int |
| ON | OFF | ON | NO | NO | long long |
| ON | OFF | OFF | NO | YES | |
| OFF | UNSPECIFIED | UNSPECIFIED | NO | NO | long long |
| OFF | ON | UNSPECIFIED | NO | NO | int |
| OFF | OFF | UNSPECIFIED | NO | NO | long long |
| OFF | UNSPECIFIED | ON | NO | NO | long long |
| OFF | UNSPECIFIED | OFF | NO | YES | |
| OFF | ON | ON | NO | YES | int; long long |
| OFF | ON | OFF | NO | OFF | int |
| OFF | OFF | ON | NO | NO | long long |
| OFF | OFF | OFF | NO | YES | |
https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4921Tpetra: Dummy2019-04-16T22:04:04ZJames WillenbringTpetra: Dummy*Created by: csiefer2*
*Created by: csiefer2*
https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4919Tpetra: Dummy2019-04-16T22:04:03ZJames WillenbringTpetra: Dummy*Created by: csiefer2*
*Created by: csiefer2*
https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4912Tpetra: Deprecate Clone2019-04-16T19:38:00ZJames WillenbringTpetra: Deprecate Clone*Created by: csiefer2*
This only does Tpetra. But it is a beginning.*Created by: csiefer2*
This only does Tpetra. But it is a beginning.https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4916Tpetra: Compare Branches2019-04-16T18:56:46ZJames WillenbringTpetra: Compare Branches*Created by: csiefer2*
*Created by: csiefer2*
https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4909MueLu: Stuff2019-04-16T14:47:13ZJames WillenbringMueLu: Stuff*Created by: csiefer2*
My auto didn't. Weird.*Created by: csiefer2*
My auto didn't. Weird.https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4885Tpetra::MultiVector: Fix #4870 (prefer running norms on device)2019-04-15T22:15:12ZJames WillenbringTpetra::MultiVector: Fix #4870 (prefer running norms on device)*Created by: mhoemmen*
@trilinos/tpetra @trilinos/stokhos @vbrunini @etphipp
Superseded by https://github.com/trilinos/Trilinos/pull/4899. Supersedes PR #4881 and PR #4871.
## Description
- Prefer running `Tpetra::MultiVect...*Created by: mhoemmen*
@trilinos/tpetra @trilinos/stokhos @vbrunini @etphipp
Superseded by https://github.com/trilinos/Trilinos/pull/4899. Supersedes PR #4881 and PR #4871.
## Description
- Prefer running `Tpetra::MultiVector` norms on device, even if it is currently sync'd to host, unless the vector has too few local rows.
- Factor out the implementation of `Tpetra::MultiVector::norm*` into a separate function, `Tpetra::Details::normImpl`. I do ETI for that function, when ETI is enabled. This required adding new ETI macros for iterating over the `(Scalar, Node)` type combination.
- Fix Stokhos to work around lack of ETI for `Tpetra::Details::normImpl`.
To elaborate the last point: Tpetra's ETI macro for `Tpetra::Details::normImpl` only takes 2 template parameters: `Scalar` and `Node`. This meant that I couldn't use Stokhos' ETI system directly (see `TPETRA_ETI_CLASSES` in `stokhos/src/CMakeLists.txt`). I had to take different approaches for PCE types vs. `MP::Vector` types. My solution for PCE types looks more permanent (read "is less of a hack") than my solution for `MP::Vector` types; it would be great if @etphipp could comment.
## Motivation and Context
- SPARC performance
- Build time
## Related Issues
* Closes #4870 https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4828Tpetra: Fix #4827; make more Tpetra classes follow Rule of Five2019-04-15T04:35:18ZJames WillenbringTpetra: Fix #4827; make more Tpetra classes follow Rule of Five*Created by: mhoemmen*
@trilinos/tpetra
## Description
1. Fix #4827.
2. Make more Tpetra classes follow the Rule of Five (C++ Core Guidelines C.21).
3. Clean up FEMultiVector code, syntax, and documentation.
## Related Issue...*Created by: mhoemmen*
@trilinos/tpetra
## Description
1. Fix #4827.
2. Make more Tpetra classes follow the Rule of Five (C++ Core Guidelines C.21).
3. Clean up FEMultiVector code, syntax, and documentation.
## Related Issues
* Closes #4827
* Related to #4196, #3946, #3574 https://gitlab.osti.gov/jmwille/Trilinos/-/merge_requests/4871Tpetra::MultiVector: Fix #4870 (prefer running norms on device)2019-04-14T18:06:51ZJames WillenbringTpetra::MultiVector: Fix #4870 (prefer running norms on device)*Created by: mhoemmen*
NOTE: Superseded by PR #4881.
@trilinos/tpetra @vbrunini
## Description
- Prefer running MultiVector norms on device, even if it is currently sync'd to host, unless the vector has too few local rows.
...*Created by: mhoemmen*
NOTE: Superseded by PR #4881.
@trilinos/tpetra @vbrunini
## Description
- Prefer running MultiVector norms on device, even if it is currently sync'd to host, unless the vector has too few local rows.
- Factor out the implementation of `Tpetra::MultiVector::norm*` into a separate function, `Tpetra::Details::normImpl`. I do ETI for that function, when ETI is enabled. This required adding new ETI macros for iterating over the `(Scalar, Node)` type combination.
## Motivation and Context
- SPARC performance
- Build time
## Related Issues
* Closes #4870