FZGPUModules 2.0
GPU-accelerated modular compression pipelines
Loading...
Searching...
No Matches
fusion_registry.h File Reference

Registry of fused implementations, keyed by the shape of a fusion group. More...

#include "backend/types.h"
#include "stage/fusion.h"
#include <cstddef>
#include <vector>

Go to the source code of this file.

Classes

struct  fz::FusedSideOutput
 
struct  fz::FusedRunContext
 Everything a fused runner needs to compress one group in place. More...
 
struct  fz::FusedImpl
 A registered fused implementation and its matcher. More...
 

Namespaces

namespace  fz
 

Functions

const FusedImplfz::findFusedImpl (const std::vector< Stage * > &group, bool include_experimental=false)
 

Detailed Description

Registry of fused implementations, keyed by the shape of a fusion group.

The fusion planner (fusion_planner.h) finds maximal legality domains. The installer queries this registry for each contiguous subspan: "is there a fused kernel for this exact chain?". An eligible hit lets the DAG executor run one fused kernel in place of the group's staged execute()s; misses and unselected overlaps remain staged. Normal Auto selection also requires the implementation's profitability gate. Adding a new fused configuration means registering one FusedImpl (later: NVRTC-generated ones keyed by fingerprint).

See docs/codebase_notes.md CN-FUSE-PROOF / CN-FUSE-PLAN.