Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove Deprecated Code #6655

Closed
jeforster opened this issue Jan 27, 2020 · 8 comments
Closed

Remove Deprecated Code #6655

jeforster opened this issue Jan 27, 2020 · 8 comments

Comments

@jeforster
Copy link
Contributor

jeforster commented Jan 27, 2020

In Trilinos v12.16, many features of Trilinos were deprecated and should be removed before Trilinos v13 is released. This issue was created to track the removal of these deprecated features. The List of deprecations and their removal status will be updated here:

  1. [Trilinos-wide next generation stack] Explicit instantiation of multiple different global ordinal types and multiple different local ordinal types Mitigation: Use default global ordinal type long long and local ordinal type int, or specify to CMake -DTpetra INST INT INT= to use global ordinal type int and local ordinal type int. [DONE]
  2. [Tpetra] DynamicProfile CrsGraph and CrsMatrix construction: new default construction type is StaticProfile Mitigation: Use StaticProfile construction, specifying (at least) the maximum number of nonzeros per row that the graph/matrix will hold. [DONE]
  3. [Teuchos] Use of KokkosClassic::DefaultNode and its synonyms Kokkos::Compat::Kokkos*WrapperNode as an object [DONE]
  4. [Tpetra, Thyra, Xpetra, Ifpack2] All functions taking a KokkosClassic::DefaultNode object as an argument [DONE]
  5. [Tpetra, Xpetra, Ifpack2, KokkosClassic] Methods getDefaultNode and getNode to return KokkosClassic::DefaultNode [DONE]
  6. [Tpetra, Xpetra, MueLu, Ifpack2] clone methods for MultiVector, Vector, CrsGraph, CrsMatrix, Directory, Preconditioner [IN PROGRESS]
  7. [Tpetra] getDualView method of Tpetra::MultiVector Mitigation: Use getLocalViewDevice or getLocalViewHost. Justification: Hides implementation details in Tpetra::MultiVector class. [DONE]
  8. [Tpetra] Tpetra::MultiVector::normWeighted [DONE]
  9. [Tpetra] Tpetra::MultiVectorFiller [DONE]
  10. [Tpetra, Ifpack2] Methods getGlobalNumDiags, getNodeNumDiags, isLowerTriangular, isUpperTriangular Mitigation: Replicate mitigations implemented in Ifpack2; see Tpetra: Deprecate & remove get*NumDiags & is{Lower,Upper}Triangular #2630. [DONE]
  11. [Tpetra] getLocalDiagOffsets and getLocalDiagCopy overloads that return Teuchos::ArrayView Mitigation: Use overloads that return Kokkos::View [DONE]
  12. [Tpetra] Addition of two matrices with different row maps [DONE]
  13. [Tpetra] copyAndPermute, packAndPrepare, unpackAndCombine, doTransfer using Teuchos::ArrayView ar- guments; copyAndPermuteNew, packAndPrepareNew, unpackAndCombineNew, doTransferNew, useNewInterface Mitigation: Update calls to copyAndPermute, packAndPrepare, unpackAndCombine, doTransfer to use new Kokkos::View arguments. Replace calls to copyAndPermuteNew, packAndPrepareNew, unpackAndCombineNew, doTransferNew with calls to copyAndPermute, packAndPrepare, unpackAndCombine, doTransfer. In user-defined objects inheriting from Tpetra::DistObject, implement interface with Kokkos::View arguments. [DONE]
  14. [Tpetra] Test-helper method generateMatrix Mitigation: Use matrix generation package like Galeri for tests. Justification: This code is unused and untested in Tpetra. [DONE]
  15. [Tpetra] Tpetra::MatrixMarket typedefs comm ptr, map ptr, node ptr [DONE]
  16. [Teuchos] PerformanceMonitorBase::clearTimers method [DONE]
  17. [Teuchos] count() method in ArrayRCP, RCP, RCPNode Mitigation: Use strong count() methods [DONE]
  18. [Teuchos] LAPACK::POSVX, LAPACK::GESVX methods that take EQUED by value Mitigation: Pass pointer to EQUED. [DONE]
  19. [Teuchos] LAPACK::TREXC method that takes ifst and ilst by value Mitigation: Pass pointers to ifst and ilst. [DONE]
  20. [Teuchos] LAPACK::GEBAL method that takes ilo and ihi by value Mitigation: Pass pointers to ilo and ihi. [DONE]
  21. [Teuchos] ArrayArg class that creates an array of arguments Mitigation: Pass individual arguments to functions [DONE]
  22. [Teuchos] MPITraits class [DONE]
  23. [Teuchos] Operator overload of << in SerialDenseMatrix, SerialBandDenseMatrix, SerialSymDenseMatrix, SerialDenseVector [DONE]
  24. [Belos] Belos::toString() [DONE]
  25. [Claps, Globipack, Optipack Trios] Packages Claps, Globipack, Optipack and Trios are deprecated and will be removed. [DONE]
  26. [Epetra] Class Epetra MpiSmpComm [DONE]
  27. [MueLu] Classes CreateEpetraPreconditioner, CreateTpetraPreconditioner, CreateXpetraPreconditioner that take nullspace and/or coordinates directly as parameters [DONE]
  28. [Panzer] Method getGlobalIndexer [DONE]
  29. [Phalanx] Method addDependentField with non-const data [IGNORED]
  30. [RTOp] Global variable show spmd apply op dump [DONE]
  31. [Tacho] TACHO USE DEPRECATED TASKSCHEDULER, TACHO USE DEPRECATED TASKSCHEDULER MULTIPLE [DONE]
  32. [STK] findPermutation, register cell topology, register super cell topology, get cell topology, and other functions [IGNORED]
  33. [Ifpack2] Preconditioner Krylov in namespace Ifpack2::DeprecatedAndMayDisappearAtAnyTime [DONE]
  34. [Teuchos] Teuchos::Comm helpers reduceAll and scan that take pointers to return argument [DONE]
  35. [Thyra] getTestResults method that takes pointers to arguments Mitigation: Use versions of functions that take references to pointer. Justification: Pointer safety. [DONE]
  36. [Intrepid] All Kokkos related code in Intrepid is deprecated and needs to be explicitly enabled with the cmake option Intrepid ENABLE DEPRECATED KOKKOS CODE=ON [DONE]
  37. [Intrepid2] Types ordinal view type, ebasis view type, ecoordinates view type, ordinal type array 1d host, ordinal type array 2d host, ordinal type array 3d host, ordinal type array stride 1d host, ordinal type array ordinal type array 2d, ordinal type array 3d, ordinal type array stride 1d, outputViewType, pointViewType, scalarViewType [DONE]
@jeforster jeforster added the type: enhancement Issue is an enhancement, not a bug label Jan 27, 2020
@kddevin
Copy link
Contributor

kddevin commented Jan 27, 2020

@trilinos/tpetra @kddevin
@trilinos/intrepid2 @mperego
@trilinos/intrepid @mperego
@trilinos/thyra @rppawlo
@trilinos/teuchos @bartlettroscoe
@trilinos/ifpack2 @jhux2 @csiefer2 @mhoemmen
@trilinos/tacho @srajama1
@trilinos/rtop @rppawlo
@trilinos/phalanx @rppawlo
@trilinos/panzer @rppawlo
@trilinos/muelu @jhux2 @csiefer2
@trilinos/epetra @maherou
@trilinos/belos @mhoemmen
@trilinos/xpetra @william76

@kddevin
Copy link
Contributor

kddevin commented Jan 27, 2020

All: over the next couple of weeks, @jeforster will be removing code marked deprecated, in preparation for Trilinos v13. Your help reviewing PRs for your packages will be appreciated.

@kddevin
Copy link
Contributor

kddevin commented Jan 27, 2020

@jeforster Concerning number 6 above -- clone methods in ifpack2 that take Node as an argument -- the consensus is that these clone methods should be removed.
#6614

@mperego
Copy link
Contributor

mperego commented Feb 6, 2020

@jeforster PR #6712 has been merged and it removes the deprecated code from Intrepid (not Intrepid2).

@jeforster
Copy link
Contributor Author

#6965 Handles number 31 above for Tacho

@kddevin
Copy link
Contributor

kddevin commented Apr 28, 2020

Phalanx deprecation will be handled separately by @rppawlo at a later date. Its inclusion in Trilinos v13 is not necessary. After PR #6964 is merged, we can close this issue.

@kddevin
Copy link
Contributor

kddevin commented Apr 29, 2020

Yea!!! Thanks, @jeforster .
@jwillenbring Ready for release

@jwillenbring
Copy link
Member

Thanks @jeforster

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants