Table of Contents

Class TriangularSolve

Namespace
NVMathNet.LinAlg
Assembly
NVMath.Net.dll

Stateless helpers for cuBLAS triangular solve (TRSM): B = alpha * inv(op(A)) * B (side=Left) or B = alpha * B * inv(op(A)) (side=Right) where A is triangular, in column-major layout.

public static class TriangularSolve

Inheritance

Inherited Members

Methods

DtrsmAsync(DeviceBuffer<double>, DeviceBuffer<double>, int, int, double, bool, bool, bool, bool, CudaStream?, CancellationToken)

Solves a triangular system asynchronously (double-precision).

public static Task DtrsmAsync(DeviceBuffer<double> a, DeviceBuffer<double> b, int m, int n, double alpha = 1, bool leftSide = true, bool upper = false, bool transpose = false, bool unitDiag = false, CudaStream? stream = null, CancellationToken ct = default)

Parameters

a DeviceBuffer<double>
b DeviceBuffer<double>
m int
n int
alpha double
leftSide bool
upper bool
transpose bool
unitDiag bool
stream CudaStream?
ct CancellationToken

Returns

Task

StrsmAsync(DeviceBuffer<float>, DeviceBuffer<float>, int, int, float, bool, bool, bool, bool, CudaStream?, CancellationToken)

Solves a triangular system asynchronously (single-precision). B is overwritten with the solution.

public static Task StrsmAsync(DeviceBuffer<float> a, DeviceBuffer<float> b, int m, int n, float alpha = 1, bool leftSide = true, bool upper = false, bool transpose = false, bool unitDiag = false, CudaStream? stream = null, CancellationToken ct = default)

Parameters

a DeviceBuffer<float>

Device buffer for triangular matrix A (m×m for Left, n×n for Right).

b DeviceBuffer<float>

Device buffer for matrix B (m×n), overwritten with the solution.

m int

Rows of B.

n int

Columns of B.

alpha float

Scalar multiplier. Default: 1.

leftSide bool

If true, solve from the left (AX = alphaB); otherwise right.

upper bool

If true, A is upper triangular; otherwise lower.

transpose bool

If true, use A^T instead of A.

unitDiag bool

If true, diagonal of A is assumed to be all ones.

stream CudaStream?

Optional CUDA stream.

ct CancellationToken

Cancellation token.

Returns

Task