Program#
2024-09-30
12 min read time
Applies to Linux
instruction#
-
struct instruction#
Public Functions
-
inline instruction()#
-
instruction(operation o, shape r, std::vector<instruction_ref> args)#
-
instruction(operation o, shape r, std::vector<instruction_ref> args, std::vector<module_ref> modules)#
-
void recompute_shape()#
-
void clear_arguments()#
-
bool valid(instruction_ref start, bool check_order = false) const#
-
bool valid() const#
-
std::string name() const#
-
const std::vector<instruction_ref> &inputs() const#
-
const std::vector<module_ref> &module_inputs() const#
-
const std::vector<instruction_ref> &outputs() const#
Where this instruction is used as an input to another instruction.
-
void add_output(instruction_ref ins)#
-
bool can_eval() const#
-
bool is_undefined() const#
-
void finalize(context &ctx)#
-
void set_normalized(bool value = true)#
-
bool is_normalized() const#
-
bool need_normalization() const#
-
std::size_t get_target_id() const#
-
void set_target_id(std::size_t tid)#
-
void debug_print() const#
Public Static Functions
-
static void replace_refs(instruction_ref ins, const std::unordered_map<instruction_ref, instruction_ref> &map_insts, const std::unordered_map<module_ref, module_ref> &map_mods)#
-
static void backreference(instruction_ref ref)#
-
static void replace_argument(instruction_ref ins, instruction_ref old, instruction_ref new_ins)#
-
static void replace_mod_argument(instruction_ref ins, module_ref old, module_ref new_mod)#
-
static void replace(instruction_ref ins, operation o, const shape &r, std::vector<instruction_ref> args)#
-
static void replace(instruction_ref ins, operation o, const shape &r, std::vector<instruction_ref> args, std::vector<module_ref> module_args)#
-
static instruction_ref get_output_alias(instruction_ref ins, bool shallow = false)#
-
static void print(std::ostream &os, instruction_ref ins, const std::unordered_map<instruction_ref, std::string> &names)#
Friends
-
friend bool operator==(const instruction &i, instruction_ref ref)#
-
friend bool operator==(const instruction &x, const instruction &y)#
-
friend bool operator!=(const instruction &x, const instruction &y)#
-
friend bool operator==(instruction_ref ref, const instruction &i)#
-
friend bool operator!=(const instruction &i, instruction_ref ref)#
-
friend bool operator!=(instruction_ref ref, const instruction &i)#
-
inline instruction()#
instruction_ref#
-
type migraphx::internal::instruction_ref#
References an instruction in the program.
program#
-
struct program#
Stores the instruction stream.
Public Functions
-
program()#
-
explicit program(module m)#
-
~program() noexcept#
-
std::vector<std::string> get_parameter_names() const#
-
instruction_ref get_parameter(std::string name) const#
-
std::vector<argument> eval(parameter_map params, execution_environment exec_env = execution_environment{}) const#
-
void finish() const#
-
std::size_t size() const#
-
context &get_context() const#
-
instruction_ref validate() const#
-
target_assignments get_target_assignments(const std::vector<target> &targets, assignment_options options = assignment_options{})#
-
bool is_compiled() const#
-
void finalize()#
-
void perf_report(std::ostream &os, std::size_t n, parameter_map params, std::size_t batch = 1, bool detailed = false) const#
-
void mark(const parameter_map ¶ms, marker &&m)#
-
void debug_print() const#
-
void debug_print(instruction_ref ins) const#
-
void print(std::unordered_map<instruction_ref, std::string> &names, const std::function<void(instruction_ref, std::unordered_map<instruction_ref, std::string>)> &print_func) const#
-
void print(const std::function<void(instruction_ref ins, std::unordered_map<instruction_ref, std::string>)> &print_func) const#
-
void print_graph(std::ostream &os, bool brief = false) const#
-
void print_py(std::ostream &os) const#
-
void print_cpp(std::ostream &os) const#
-
void dry_run(parameter_map params) const#
-
void annotate(std::ostream &os, const std::function<void(instruction_ref)> &a) const#
-
module *create_module(const std::string &name)#
-
module *create_module(const std::string &name, module m)#
-
module *get_module(const std::string &name)#
-
const module *get_module(const std::string &name) const#
-
module *get_main_module()#
-
const module *get_main_module() const#
-
std::vector<const module*> get_modules() const#
-
std::vector<module*> get_modules()#
-
std::unordered_multimap<module_ref, module_ref> get_module_tree()#
-
void remove_module(const std::string &name)#
-
void rename_module(const std::string &old_name, const std::string &new_name)#
-
void remove_unused_modules()#
-
program()#
parse_onnx#
-
program migraphx::internal::parse_onnx(const std::string &name, const onnx_options& = onnx_options{})#
Create a program from an onnx file.
parse_tf#
-
program migraphx::internal::parse_tf(const std::string &name, const tf_options &options = tf_options{})#
Create a program from a tf pb file (default is nhwc format)
onnx_options#
-
struct onnx_options#
struct to pass in onnx options to parser
tf_options#
-
struct tf_options#
struct to pass in tf options to parser