stedc_internal.hh
Go to the documentation of this file.
1#pragma once
2
6
7namespace batchlas {
8
9// stedc's body WITHOUT the `info` clear (cf. steqr_dispatch). A caller that runs stedc twice
10// over the same items (gesvd) must use this, or the second call erases the first's failures.
11// evidence: docs/perf/stedc.md#stedc-convergence-reporting-through-info
12template <Backend B, typename T>
14 const VectorView<T>& d,
15 const VectorView<T>& e,
16 const VectorView<T>& eigenvalues,
17 const Span<std::byte>& ws,
18 JobType jobz,
19 StedcParams<T> params,
22
23} // namespace batchlas
Non-owning view of a batch of matrices: the argument type of every entry point.
Definition matrix.hh:485
Non-owning view of a batch of strided vectors: the vector argument type of the entry points.
Definition matrix.hh:1754
JobType
Whether an eigensolver computes eigenvectors (LAPACK jobz).
Definition enums.hh:189
The batched containers: Matrix (owning), MatrixView (non-owning), KernelMatrixView (device-side),...
Event stedc_dispatch(Queue &ctx, const VectorView< T > &d, const VectorView< T > &e, const VectorView< T > &eigenvalues, const Span< std::byte > &ws, JobType jobz, StedcParams< T > params, const MatrixView< T, MatrixFormat::Dense > &eigvects, Span< int32_t > info=Span< int32_t >())
Completion handle of enqueued work, returned by every entry point.
Where BatchLAS work runs: a device, a backend, an ordered SYCL queue and a workspace arena.
Non-owning view of size() contiguous elements of type T.
Definition sycl-span.hh:39
Parameters for stedc().
batchlas::Span, the non-owning pointer + length every entry point takes for 1-D data.