To make extending CUTLASS BYOC easier, I'm moving C++-side codegen that's responsible for cutlass host code generation to python. This is the first step, only modifying matmul codegen.
I've add a packed func contrib.cutlass.instantiate_template, that gets an attribute map from C++, instantiates a host code template, and return the instantiated code back to C++. Op-specific attribute parsing and template instantiation are both done in python, so adding a new op no longer needs modification to the C++ code.
To make extending CUTLASS BYOC easier, I'm moving C++-side codegen that's responsible for cutlass host code generation to python. This is the first step, only modifying matmul codegen.
I've add a packed func
contrib.cutlass.instantiate_template
, that gets an attribute map from C++, instantiates a host code template, and return the instantiated code back to C++. Op-specific attribute parsing and template instantiation are both done in python, so adding a new op no longer needs modification to the C++ code.cc @vinx13 @yelite @mbaret