Ir.AssignmentsAssignment computations over tensor nodes.
type init_data = | Reshape of Ndarray.t| Keep_shape_no_padding of Ndarray.t| Padded of {data : Ndarray.t;padding : Ops.axis_padding Base.array;padded_value : Base.float;}val sexp_of_init_data : init_data -> Sexplib0.Sexp.tval sexp_of_buffer : buffer -> Sexplib0.Sexp.ttype fetch_op = | Constant of Base.float| Constant_bits of Base.int64| Constant_fill of Base.float Base.array| Range_over_offsets| Slice of {batch_idx : Indexing.static_symbol;sliced : Tnode.t;}| Embed_symbol of Indexing.static_symbol| Embed_self_id| Embed_dim of Indexing.variable_refval sexp_of_fetch_op : fetch_op -> Sexplib0.Sexp.tval sexp_of_accum_rhs : accum_rhs -> Sexplib0.Sexp.ttype t = | Noop| Seq of t * t| Block_comment of Base.string * t| Accum_op of {initialize_neutral : Base.bool;accum : Ops.binop;lhs : Tnode.t;rhs : accum_rhs;projections : Indexing.projections Utils.Lazy.t;projections_debug : Base.string;}| Set_vec_unop of {op : Ops.vec_unop;lhs : Tnode.t;rhs : buffer;projections : Indexing.projections Utils.Lazy.t;projections_debug : Base.string;}| Fetch of {array : Tnode.t;fetch_op : fetch_op;dims : Base.int Base.array Utils.Lazy.t;}val sexp_of_t : t -> Sexplib0.Sexp.tval sexp_of_comp : comp -> Sexplib0.Sexp.tval empty_comp : compval context_nodes : plc:Tnode.Placements.t -> t -> Tnode.t_setval collect_nodes_guess_output : t -> Tnode.t_set * Tnode.t_setval collect_written : t -> Tnode.t_setval collect_neutral_elem : t -> Base.float Base.optionval to_low_level :
?static_indices:Indexing.static_symbol Base.list ->
t ->
Low_level.tval to_doc :
?name:Base.string ->
?static_indices:Indexing.static_symbol Base.list ->
Base.unit ->
t ->
PPrint.documentval get_name_exn : t -> Base.stringval lower :
Low_level.optimize_ctx ->
unoptim_ll_source:(PPrint.document -> Base.unit) Base.option ->
ll_source:(PPrint.document -> Base.unit) Base.option ->
cd_source:(PPrint.document -> Base.unit) Base.option ->
name:Base.string ->
Indexing.static_symbol Base.list ->
t ->
Low_level.optimized