docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
transformation_registry.h File Reference
#include <concepts>
#include <string>
#include <utility>
#include <sdfg/builder/structured_sdfg_builder.h>
#include <sdfg/transformations/recorder.h>
#include <sdfg/transformations/transformation.h>
#include <sdfg/transformations/transformation_schema.h>
#include <nlohmann/json.hpp>
#include <sdfg/einsum/einsum.h>
#include <sdfg/fp_math/transformations/fuse_fma.h>
#include <sdfg/fp_math/transformations/ozaki_contraction.h>
#include <sdfg/fp_math/transformations/quantize_contraction.h>
#include <sdfg/fp_math/transformations/unfuse_fma.h>
#include <sdfg/parallelization/transformations/loop_parallelization.h>
#include <sdfg/targets/gpu/gpu_mma_einsum_transform.h>
#include <sdfg/tiles/transformations/local_storage.h>
#include <sdfg/tiles/transformations/software_pipelining.h>
#include <sdfg/tiles/transformations/tile_fusion.h>
#include <sdfg/tiles/transformations/tile_vectorizer.h>
#include <sdfg/transformations/loop_distribute.h>
#include <sdfg/transformations/loop_interchange.h>
#include <sdfg/transformations/loop_peeling.h>
#include <sdfg/transformations/loop_shift.h>
#include <sdfg/transformations/loop_skewing.h>
#include <sdfg/transformations/loop_split.h>
#include <sdfg/transformations/loop_tiling.h>
#include <sdfg/transformations/map_collapse.h>
#include <sdfg/transformations/map_delinearize.h>
#include <sdfg/transformations/multi_level_tiling.h>
#include <sdfg/transformations/offloading/cuda_offload_transform.h>
#include <sdfg/transformations/offloading/cuda_parallelize_nested_map.h>
#include <sdfg/transformations/offloading/cuda_transform.h>
#include <sdfg/transformations/offloading/gpu_condition_propagation.h>
#include <sdfg/transformations/offloading/gpu_loop_reordering.h>
#include <sdfg/transformations/offloading/gpu_offload_nested_loop.h>
#include <sdfg/transformations/offloading/rocm_offload_transform.h>
#include <sdfg/transformations/offloading/rocm_parallelize_nested_map.h>
#include <sdfg/transformations/offloading/rocm_transform.h>
#include <sdfg/transformations/omp_transform.h>
#include <sdfg/transformations/redundant_zero_init_elimination.h>
#include <sdfg/transformations/stream_k.h>
#include <sdfg/transformations/trivial_loop_elimination.h>
#include <sdfg/transformations/unroll_transform.h>
#include <sdfg/transformations/vectorize_transform.h>

Go to the source code of this file.

Namespaces

namespace  sdfg
namespace  sdfg::transformations
namespace  sdfg::transformations::detail

Concepts

concept  sdfg::transformations::replayable_transformation_concept
 Concept for transformations that can be replayed from a JSON description.

Functions

template<typename T, typename Visitor>
requires replayable_transformation_concept<T>
decltype(auto) sdfg::transformations::detail::invoke_for (Visitor &&visitor)
 Invoke a visitor with a validated transformation type.
template<typename Visitor>
decltype(auto) sdfg::transformations::dispatch_transformation (const std::string &transformation_name, const nlohmann::json &desc, Visitor &&visitor)
 Central registry mapping transformation type names to their C++ types.
template<typename T>
requires replayable_transformation_concept<T>
bool sdfg::transformations::verify_round_trip (builder::StructuredSDFGBuilder &builder, const nlohmann::json &desc, std::string &error_out)
 Verify that a transformation's from_json and to_json are consistent inverses.
bool sdfg::transformations::verify_transformation_round_trip (builder::StructuredSDFGBuilder &builder, const nlohmann::json &desc, std::string &error_out)
 Verify from_json/to_json consistency for the transformation named in desc.