-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Array API manipulation functions #2936
Array API manipulation functions #2936
Conversation
Signed-off-by: Jeremiah Corrado <[email protected]>
…ionMsg.chpl Signed-off-by: Jeremiah Corrado <[email protected]>
…ionMsg.chpl Signed-off-by: Jeremiah Corrado <[email protected]>
…ntiation in parseServerConfig.py Signed-off-by: Jeremiah Corrado <[email protected]>
Signed-off-by: Jeremiah Corrado <[email protected]>
Signed-off-by: Jeremiah Corrado <[email protected]>
Signed-off-by: Jeremiah Corrado <[email protected]>
Signed-off-by: Jeremiah Corrado <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure I have a ton of feedback, I think the API answering the qeustions of design have those bases covered and the tests look good, so since we are focused on correctness and not performance off the bat, I think this looks good.
I am curious about a few things I mentioned and one other thing I'll say is the amount of param for
loops we have is unfortunate, but I understand we need those because of how we are doing the dimensionality, that just really jumped out at me taking a pass over the code.
Looks good 👍
Implementation of the Array API manipulation functions
Adds implementations of:
concat
expand_dims
flip
permute_dims
reshape
roll
squeeze
stack
Like broadcasting,
reshape
andsqueeze
both create arrays whose rank can/will be different than the array being operated on. As such, these procedures also get compiled for various pairs of supported ranks, which required some modifications toparseServerConfig.py
Tests are added for each of the new functions.
Adds a separate Array API module config file with modules that are only needed for the ArrayAPI.