Gpu 0.1.0 devicesparsematrix dispose - CyrilB1531/lodestar GitHub Wiki

Lodestar.Gpu 0.1.0. This page is frozen at that release. Read the current documentation for what main says now. A link to a decision or a migration page follows main, and leaves the archive.

DeviceSparseMatrix.Dispose

Frees the three device buffers.

public void Dispose()

Example — the shape a caller writes.

using Lodestar.Gpu.Compute;

using var context = GpuContext.Create(preferCpu: true);

bool named = context.DeviceName.Length > 0;  // => True

Remarks — Row pointers, column indices and values are three separate allocations, and all three go together: a CSR matrix missing one of them describes nothing.

using is the intended spelling. Device memory is not reclaimed by the garbage collector, so a block that is dropped rather than disposed stays allocated on the accelerator until the process ends — which on a card with a few gigabytes is a leak that a long-running service notices.

Applies to — net10.0, netstandard2.1.

See alsoDeviceSparseMatrix.