Hello! I find that non-square ConfigSpace might be critical to a project I'm working on, while currently this is not supported. By `non-square` I mean the scheduling of one axis has a constraint that is also relying on another axis. For example, if we have a sample code like: ``` cfg.define_split('split_x', X, num_outputs=2, policy='factors') cfg.define_split('split_y', Y, num_outputs=2, policy='factors') cfg['split_x'].apply(s, A, X) cfg['split_y'].apply(s, A, Y) ``` and if we want to limit the inner block size to be less or equal to 64, then we have a constraint ``` cfg['split_x'].size[-1] * cfg['split_y'].size[-1] <= 64 ``` We cannot simply pass this constraint as `cfg.define_split(..., filter=...)`, so I'm seeking a solution for this. My current plan is to leave the instantiation of `xxxSpace`, e.g. `SplitSpace`, `ReorderSpace` unchanged and add constraints `ConfigSpace` so that only valid parameters under these constraints will be returned when queried. I see there's a `_constaints` variable in `ConfigEntity` but it seems not been used anywhere. Should I get started from here?
Any suggestions are much appreciated! -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/apache/incubator-tvm/issues/5809