Closed alexfikl closed 3 years ago
LGTM, aside from these final wrinkles. If you're OK with accepting all these suggestions, then this is ready to go from my end.
They look good to me! This still depends on the fixes from inducer/compyte#36 and inducer/pyopencl#514 to get the tests to pass without the added xfail
. We can remove that later though.
Those are close, too. So let's just wait on them.
What's the status of this PR? Are there still issues remaining?
What's the status of this PR? Are there still issues remaining?
The general case should work as advertised. We hit an edge case with arrays that have a 0-size in one of the axes and don't work quite yet on pytato
due to inducer/loopy#497.
And I've been just slow to review. Sorry!
No worries! I just wanted to make sure there wasn't a "gotcha" with this change
I wonder whether we should just xfail
the loopy-dependent zero-size bits for now and bump them to an issue, so @thomasgibson can start using this... what do you all think?
I wonder whether we should just
xfail
the loopy-dependent zero-size bits for now and bump them to an issue, so @thomasgibson can start using this... what do you all think?
Yeah, definitely agree with that. The loopy
fix might take a while and it's not breaking any actual code at the moment, just an edge case.
EDIT: Updated the url in c50ee3e to point to the loopy
PR.
I wonder whether we should just
xfail
the loopy-dependent zero-size bits for now and bump them to an issue
Yes, sounds good to me.
Adds two functions,
flatten
andunflatten
, that go between an array container and a 1D array (as supported by the array context).The couple of gotchas here:
serialize_container
anddeserialize_container
should not be doing anything crazy, i.e. two calls will return the components in the same order, which is the case for all the containers we have.serialiaze_container
), but that shouldn't be too much of an issue.meshmode
basically just flattenDOFArray
s and leave the rest of the array container the same.Before merging:
Point loopy back to main after inducer/loopy#497(xfailed the test and leaving this for later)@thomasgibson Would something like this do what you need?