|
Anasazi Version of the Day
|
Make sure TimerType has the required interface. More...
Classes | |
| class | Tsqr |
| Parallel Tall Skinny QR (TSQR) factorization. More... | |
| class | ApplyType |
| NoTranspose, Transpose, or ConjugateTranspose. More... | |
| class | CacheBlocker |
| class | CacheBlockingStrategy |
| class | Combine |
| TSQR's six computational kernels. More... | |
| class | CombineDefault |
| Default implementation of TSQR::Combine. More... | |
| class | CombineFortran |
| Interface to Fortran 2003 back end of TSQR::Combine. More... | |
| class | CombineFortran< Scalar, false > |
| class | CombineFortran< Scalar, true > |
| class | CombineNative |
| Interface to C++ back end of TSQR::Combine. More... | |
| class | CombineNative< Ordinal, Scalar, false > |
| class | CombineNative< Ordinal, Scalar, true > |
| class | DistTsqr |
| Internode part of TSQR. More... | |
| class | DistTsqrHelper |
| Implementation of the internode part of TSQR. More... | |
| class | DistTsqrRB |
| Reduce-and-Broadcast (RB) version of DistTsqr. More... | |
| class | Matrix |
| A column-oriented dense matrix. More... | |
| class | MatView |
| class | ConstMatView |
| class | MessengerBase |
| class | RMessenger |
| Send, receive, and broadcast square R factors. More... | |
| class | ScalarTraits |
| Map from Scalar type to its arithmetic properties. More... | |
| class | StatTimeMonitor |
| Like Teuchos::TimeMonitor, but collects running stats. More... | |
| class | TimeStats |
| Collect running statistics. More... | |
| class | TrivialTimer |
| Satisfies TimerType concept trivially. More... | |
| class | TwoLevelDistTsqr |
| Interprocess part of TSQR. More... | |
| class | ScalarPrinter |
| Print a Scalar value to the given output stream. More... | |
Functions | |
| template<class Ordinal , class Scalar > | |
| std::pair< typename ScalarTraits< Scalar > ::magnitude_type, typename ScalarTraits< Scalar > ::magnitude_type > | local_verify (const Ordinal nrows, const Ordinal ncols, const Scalar *const A, const Ordinal lda, const Scalar *const Q, const Ordinal ldq, const Scalar *const R, const Ordinal ldr) |
| template<class MatrixViewType , class ConstMatrixViewType > | |
| void | scatterStack (const ConstMatrixViewType &R_stack, MatrixViewType &R_local, const Teuchos::RCP< MessengerBase< typename MatrixViewType::scalar_type > > &messenger) |
| Distribute a stack of R factors. | |
Make sure TimerType has the required interface.
verifyTimerConcept Our TSQR benchmarks are templated on TimerType, in order to avoid depending on a particular timer implementation. TimerType should support the following three methods (modeled after Trilinos' Teuchos::Time class):
TimerType need not be able to handle recursive calls; the model is that start() and stop() wrap some timing loop, and the loop does not reference the timer at all. We include this concept check in all of our TSQR benchmark routines via
verifyTimerConcept< TimerType >();
If TimerType does not satisfy this interface, that line of code will fail to compile. The compiler should give an informative error message about a missing method.
| std::pair< typename ScalarTraits< Scalar >::magnitude_type, typename ScalarTraits< Scalar >::magnitude_type > TSQR::local_verify | ( | const Ordinal | nrows, |
| const Ordinal | ncols, | ||
| const Scalar *const | A, | ||
| const Ordinal | lda, | ||
| const Scalar *const | Q, | ||
| const Ordinal | ldq, | ||
| const Scalar *const | R, | ||
| const Ordinal | ldr | ||
| ) |
Test accuracy of the computed QR factorization of the matrix A
| nrows | [in] Number of rows in the A and Q matrices; nrows >= ncols >= 1 |
| ncols | [in] Number of columns in the A, Q, and R matrices; nrows >= ncols >= 1 |
| A | [in] Column-oriented nrows by ncols matrix with leading dimension lda |
| lda | [in] Leading dimension of the matrix A; lda >= nrows |
| Q | [in] Column-oriented nrows by ncols matrix with leading dimension ldq; computed Q factor of A |
| ldq | [in] Leading dimension of the matrix Q; ldq >= nrows |
| R | [in] Column-oriented upper triangular ncols by ncols matrix with leading dimension ldr; computed R factor of A |
| ldr | [in] Leading dimension of the matrix R; ldr >= ncols |
Definition at line 236 of file Tsqr_LocalVerify.hpp.
| void TSQR::scatterStack | ( | const ConstMatrixViewType & | R_stack, |
| MatrixViewType & | R_local, | ||
| const Teuchos::RCP< MessengerBase< typename MatrixViewType::scalar_type > > & | messenger | ||
| ) |
Distribute a stack of R factors.
| R_stack | [in] nprocs*ncols by ncols stack of square upper triangular matrices. The whole stack is stored in column-major order. |
| R_local | [out] ncols by ncols upper triangular matrix, stored in column-major order (in unpacked form). |
| messenger | [in/out] Object that handles communication |
Definition at line 177 of file Tsqr_RMessenger.hpp.
1.7.4