StanfordLegion/legion

MAX_DIM is limited at 9

Opened this issue · 2 comments

my application uses 13 dimension array (numpy/cupy), but legion is limited to only 9 dimensions, any specific reason? is there any possibility of having support for more than 9 dimension in future?

but legion is limited to only 9 dimensions, any specific reason?

It's just how many macros we've done for instantiating templates. See here:
https://gitlab.com/StanfordLegion/legion/-/blob/master/runtime/realm/deppart/inst_helper.h?ref_type=heads#L240-3383

is there any possibility of having support for more than 9 dimension in future?

It's not hard to add. (In fact if you want to add support for more dimensions, you can just add all the additional macros for the case of 13 as the pattern is not hard to discern.) The question is whether you'll be able to tolerate the compilation time and resulting binary sizes. Both compilation time and binary size will scale with the square of the maximum number of dimensions.

Feel free to make a merge request (to Legion's gitlab repo) if you do add support for additional dimensionality.