|
FZGPUModules 2.0
GPU-accelerated modular compression pipelines
|
Public launcher for chunk-cooperative fused compress (see chunk_fusion.cuh). More...
#include "fused/chunk_fusion/chunk_geometry.h"#include "backend/types.h"#include <cstddef>#include <cstdint>Go to the source code of this file.
Namespaces | |
| namespace | fz |
Enumerations | |
| enum class | fz::fused::ChunkCoderKind |
| The variable-length coder that terminates a chunk-fused chain (the swappable sink). | |
Functions | |
| size_t | fz::fused::launchFusedChunkPfpl (ChunkCoderKind coder, const float *d_in, size_t n, float ebx2_r, uint32_t radius, float threshold, uint8_t *d_out, MemoryPool *pool, fz::stream_t stream) |
Public launcher for chunk-cooperative fused compress (see chunk_fusion.cuh).
Runs the composable CTA-per-chunk harness for a PFPL-shaped chain (Quantizer(inplace,zigzag) -> Difference(negabinary) -> Bitshuffle -> Coder) plus the cross-chunk scan+pack tail, producing a raw LC-coder archive that is byte-identical to the staged pipeline. The coder is selected at call time — the same harness composes RZE, RRE, etc. Not graph-capturable (reads back the archive length). See docs/codebase_notes.md CN-CHUNK-FUSE.
| size_t fz::fused::launchFusedChunkPfpl | ( | ChunkCoderKind | coder, |
| const float * | d_in, | ||
| size_t | n, | ||
| float | ebx2_r, | ||
| uint32_t | radius, | ||
| float | threshold, | ||
| uint8_t * | d_out, | ||
| MemoryPool * | pool, | ||
| fz::stream_t | stream | ||
| ) |
Run a PFPL-shaped chunk-cooperative fused compress into a raw coder archive.
| coder | which LC coder terminates the chain (RZE or RRE) |
| d_in | device float field (n elements) |
| n | element count |
| ebx2_r | 1/(2*abs_eb) quant scale (abs_eb = eb*value_range for NOA) |
| radius | quant radius (out-of-radius -> inplace raw-float-bits outlier) |
| threshold | |x| >= threshold forces an outlier (pass +inf to disable) |
| d_out | device archive buffer (LC format: [orig][n_chunks][sizes][payloads]) |
| pool | scratch pool |
| stream | CUDA stream (synchronised internally to read the archive length) |