eric-haibin-lin commented on a change in pull request #10371: [MXNET-263] Support for dot(dns, csr) = dns and dot(dns, csr.T) = dns on GPU URL: https://github.com/apache/incubator-mxnet/pull/10371#discussion_r180294411
########## File path: src/operator/tensor/dot.cc ########## @@ -51,12 +150,16 @@ NNVM_REGISTER_OP(dot) dot(x,y)[0,0,1,1] = 0 sum(x[0,0,:]*y[:,1,1]) = 0 -The storage type of ``dot`` output depends on storage types of inputs and transpose options: +The storage type of ``dot`` output depends on storage types of inputs, transpose options and given +hint for output storage type: +Implemented sprase operations include: - dot(csr, default) = default - dot(csr.T, default) = row_sparse - dot(csr, row_sparse) = default -- dot(default, csr) = csr +- dot(default, csr) = csr on CPU only +- dot(default, csr) = dense on GPU only Review comment: Could you show the output storage with specific values of `forward_stype_hint`? e.g. dot(csr, dense, trx_a=True) = row_sparse dot(csr, dense, forward_stype_hint='default', tx_a=True) = default dot(default, csr, forward_stype_hint='default') = default (GPU only) What happens if someone uses dot(dense, dense, forward_stype_hint='csr')? ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services