picceler
A compiled DSL for image processing, built on MLIR
Loading...
Searching...
No Matches
picceler_add_profiling_pass.cpp File Reference
#include "passes.h"
#include "mlir/Dialect/Arith/IR/Arith.h"
#include "mlir/Dialect/Func/IR/FuncOps.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/BuiltinOps.h"
#include "mlir/Pass/Pass.h"
#include "llvm/ADT/SmallVector.h"
#include "dialect.h"
#include "ops.h"
#include "types.h"
#include "piccelerPasses.h.inc"

Classes

struct  picceler::PiccelerAddProfilingPass
 A pass that wraps every Picceler compute/IO op with piccelerTraceBegin/piccelerTraceEnd runtime calls. Excludes StringConstOp (instrumentation itself creates these) and ShowImageOp/ ReadNumberOp/ReadStringOp (block on a window/stdin, not compute – one call would swallow every real op's time into invisibility on the timeline), PrintOp (times stdout buffering, not compute), and KernelConstOp (sub-microsecond next to any real op, just adds a row). More...

Namespaces

namespace  picceler

Macros

#define GEN_PASS_DEF_PICCELERADDPROFILING

Functions

The following functions create instances of the various passes used in the compilation process.

Each function corresponds to a specific pass that transforms the IR in a particular way.

std::unique_ptr< mlir::Pass > picceler::createPiccelerAddProfilingPass ()

Macro Definition Documentation

◆ GEN_PASS_DEF_PICCELERADDPROFILING

#define GEN_PASS_DEF_PICCELERADDPROFILING