Lower Triangular Solve with Multiple Right-hand Sides (Trsm_lln)

Definition


The name of this operation comes for the observation that if $B$ and $X$ are partitioned by columns,

then

so that $L x_j = b_j $. In other words, a lower triangular solve must be performed with every right-hand side column $ b_j $.

Theorems, Lemmas, and Corollaries


Algorithms

$ B \becomes L^{-1} B $ denotes the operation that overwrites right-hand side $B$ with the solution of $ L X = B $. Let $ \hat{B} $ denote the original contents of $ B $.

Partitioned Matrix Expression

This operation has two PMEs:

PME 1

Details.

PME 2

Details.

Loop-invariants

The above PMEs allow for four different loop-invariants to be identified:

Algorithmic variants

Performance

Enlarge


Try it yourself

Figure 1: Performance of the different variants (unblocked and blocked) on an Intel Xeon (3.4GHz) processor. For these experiments, the block size ($b$ in the algorithms, nb_alg in the FLAMEC code) was chosen to equal 128. The reference implementation Simple loops computes the operation with simple indexed loops.



Related Operations

More Information

LinearAlgebraWiki: Trsm lln (last edited 2008-04-15 15:52:35 by MarthaGanser)