NathanYyc opened a new issue #20501:
URL: https://github.com/apache/incubator-mxnet/issues/20501


   ## Problem statement
   [Python API Standard](https://data-apis.org/array-api/latest/) is an 
standard Array API for all Python numerical computing, data science, machine 
learning, and deep learning frameworks. By specifying an API for the most 
common ways arrays are constructed and used, It aims to address the differences 
among those frameworks that makes developers quite difficult to write code that 
works with multiple (or all) of these libraries.
   
   ## Proposed solutions
   By comparing the Python API Standard and APIs in MXNet.numpy, an list of 
APIs similar to the list in [pytorch Python Array API Compatibility 
Tracker](https://github.com/pytorch/pytorch/issues/58743) is formed. Further 
works will be done according to the list attached. The dlpack synchronization 
APIs in the list is specified in [Specify synchronization 
semantics](https://github.com/dmlc/dlpack/issues/57).
   
   ## References
   - [Python API Standard](https://data-apis.org/array-api/latest/)
   - [pytorch Python Array API Compatibility 
Tracker](https://github.com/pytorch/pytorch/issues/58743)
   - [dlpack Specify synchronization 
semantics](https://github.com/dmlc/dlpack/issues/57)
   
   ## On-going Efforts 
   https://github.com/apache/incubator-mxnet/pull/20454
   https://github.com/apache/incubator-mxnet/pull/20478
   
   ## Attachment
   [MXNet & Python Api Standard 
Comparison](https://docs.google.com/spreadsheets/d/1pbIPGVXD6FrHqMbKtRqmaT5dzO1tNgb915Th8ZUCoNw/edit?usp=sharing)
   - current list is base on APIs in MXNet 2.0 & Python Data API 
Specification(commit: cf5aa666017b8a8a2117aa1cb1770eb1cf841942)
   - We classified each API into 6 categories:
       - No Changes: The current PyTorch implementation already conforms to the 
Data API.
       - New API: Need to add a new function or constant.
       -  Enhancement: Need enhancement to the existing function (add new 
argument, etc.).
       -  Enhancement with BC: Need to change signature of the existing 
function. (breaking change if we implement the API directly under torch.* 
namespace)
       -  Behavior: Need to change behavior of the existing function. (breaking 
change if we implement the API directly under torch.* namespace)
       -  N/A: The detailed specification is not determined yet in the Data API.
   - There is 46 New APIs needed, 60 current APIs needed to be enhanced, 0 API 
needed to change behavior and 2 APIs is not specified in current Data API 
commit.
   @barry-jin @szha 
   
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to