summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorEdward Z. Yang <ezyang@mit.edu>2018-03-31 14:28:31 -0400
committerSoumith Chintala <soumith@gmail.com>2018-03-31 11:28:31 -0700
commit9ce21b0e90095edbda80946cff95095a992b89d6 (patch)
tree60882da0410c8b75cf21ceac9f0ed2cbd1a8d0fe /tools
parentda6c3c90d9efbf866ae01c0ec23bebb59addae54 (diff)
downloadpytorch-9ce21b0e90095edbda80946cff95095a992b89d6.tar.gz
pytorch-9ce21b0e90095edbda80946cff95095a992b89d6.tar.bz2
pytorch-9ce21b0e90095edbda80946cff95095a992b89d6.zip
Delete NNPACK (#6151)
Since we added cpuinfo as a vendored dependency, this created a problem with our NNPACK integration, because NNPACK also depends on cpuinfo, as per #6068. This is particularly difficult to resolve because we depend on a fairly recent version of cpuinfo, which we generally cannot assume users have installed (it is submoduled.) So, it would seem that to fix this properly, NNPACK would have to be vendored and built against the correct cpuinfo. However, discussion with Christian Puhrsch and Marat Dukhan suggests that the benefit of carrying on with NNPACK integration is not all that great, because mkldnn has since come out with a CPU convolution implementation that performs better than NNPACK. NNPACK's x86 implementation is not really maintained, and its ARM support is not really relevant to PyTorch. So rather than go through all the rigamarole of vendoring NNPACK, better to just delete it. If you need good perf for CPU convolutions, please make sure you build against mkldnn. Signed-off-by: Edward Z. Yang <ezyang@fb.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/autograd/derivatives.yaml7
1 files changed, 0 insertions, 7 deletions
diff --git a/tools/autograd/derivatives.yaml b/tools/autograd/derivatives.yaml
index 1cb4afb111..068508b16a 100644
--- a/tools/autograd/derivatives.yaml
+++ b/tools/autograd/derivatives.yaml
@@ -1117,13 +1117,6 @@
save_var: not_implemented("cudnn_batch_norm_backward save_var")
input, weight, grad_output: batchnorm_double_backward(input, weight, grads[0], grads[1], grads[2], grad_output, running_mean, running_var, true, epsilon, save_mean, save_var, grad_input_mask)
-# nnpack
-
-- name: nnpack_spatial_convolution(Tensor input, Tensor weight, Tensor bias, int64_t kW, int64_t kH, int64_t padW, int64_t padH)
- input: nnpack_spatial_convolution_backward_input(input, grad, weight, kW, kH, padW, padH)
- weight: nnpack_spatial_convolution_backward_weight(input, weight.sizes(), grad, kW, kH, padW, padH)
- bias: grad.contiguous().view({grad.size(0), grad.size(1), -1}).sum(0).sum(1)
-
- name: _cudnn_rnn(Tensor input, TensorList weight, int64_t weight_stride0, Tensor weight_buf, Tensor hx, Tensor cx, int64_t mode, int64_t hidden_size, int64_t num_layers, bool batch_first, double dropout, bool train, bool bidirectional, IntList batch_sizes, Tensor dropout_state)
input, hx, cx, weight: "_cudnn_rnn_backward(input, weight, weight_stride0, result4, hx, cx, result0, grads[0], grads[1], grads[2], mode, hidden_size, num_layers, batch_first, dropout, train, bidirectional, batch_sizes, dropout_state, retain_variables ? result3.clone() : result3, grad_input_mask)"