Namespaces | |
| namespace | phase |
Enumerations | |
%btensor.Ring | |
| enum class | Ring : flags_t |
%btensor.id | |
| enum class | id : flags_t |
%btensor.map_reduce_post | |
| enum class | map_reduce_post : flags_t |
%btensor.mk_sched | |
| enum class | mk_sched : flags_t |
%btensor.proj_map | |
| enum class | proj_map : flags_t |
%btensor.broadcast | |
| enum class | broadcast : flags_t |
%btensor.concat | |
| enum class | concat : flags_t |
%btensor.pad | |
| enum class | pad : flags_t |
%btensor.transpose_2d | |
| enum class | transpose_2d : flags_t |
%btensor.product_2d | |
| enum class | product_2d : flags_t |
%btensor.gather | |
| enum class | gather : flags_t |
%btensor.scatter | |
| enum class | scatter : flags_t |
%btensor.NestT | |
| enum class | NestT : flags_t |
%btensor.mr_nest | |
| enum class | mr_nest : flags_t |
%btensor.lower_map_reduce | |
| enum class | lower_map_reduce : flags_t |
Functions | |
| void | register_normalizers (Normalizers &normalizers) |
Variables | |
| static constexpr plugin_t | Plugin_Id = 0xd518f5104c00000 |
%btensor.map_reduce | |
| enum class | map_reduce : flags_t |
| const Def * | normalize_map_reduce (const Def *, const Def *c, const Def *arg) |
| btensor.map_reduce is btensor.map_reduce_post without the epilogue and with the neutral schedule: delegate with post = btensor.id (so Tp = To), no epilogue inputs (nps = 0), no vector dim (vdim = Rn, the out-of-range sentinel), and no unrolling. | |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
| const Def * mim::plug::btensor::normalize_map_reduce | ( | const Def * | , |
| const Def * | c, | ||
| const Def * | arg ) |
btensor.map_reduce is btensor.map_reduce_post without the epilogue and with the neutral schedule: delegate with post = btensor.id (so Tp = To), no epilogue inputs (nps = 0), no vector dim (vdim = Rn, the out-of-range sentinel), and no unrolling.
The delegation lives in a normalizer (rather than a wrapping lam) so that call sites keep axm-style implicit inference: the stuck axm application lets the checker solve the {Tis, Ris, Sis} holes from the operands, whereas applying a lam would eagerly β-reduce buffer.Buf over still-unsolved holes.
Definition at line 14 of file normalizers.cpp.
References normalize_map_reduce(), and mim::Def::projs().
Referenced by normalize_map_reduce().
| void mim::plug::btensor::register_normalizers | ( | Normalizers & | normalizers | ) |
References register_normalizers().
Referenced by mim_get_plugin(), and register_normalizers().