use fbgemm gconv in dnnlowp (#16020)
authorJongsoo Park <jongsoo@fb.com>
Tue, 15 Jan 2019 07:59:33 +0000 (23:59 -0800)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Tue, 15 Jan 2019 08:02:31 +0000 (00:02 -0800)
commit964732fa8dc05794668cf3ae4f5ff069ee656abb
tree07a2ff6b88024c3965e19b1d67dd363c6db9c6b6
parentbc233fe405099dc8244fd2bcd326ba9d39a55c65
use fbgemm gconv in dnnlowp (#16020)

Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/16020

Needs to go over more iterations. For conv, I think we need a high level interface that abstracts out low-level details of which code path will be taken (acc16, outlier-aware, depth-wise, group conv, ...) otherwise the client code will be complex as can be seen from DNNLOWP Conv ops. This will also help us to make interface more stable.

Reviewed By: dskhudia, jianyuh

Differential Revision: D13588996

fbshipit-source-id: 9afce9e441bcaf20437fcc2874fb9d4165a46bcb
caffe2/quantization/server/conv_dnnlowp_op.cc
caffe2/quantization/server/conv_dnnlowp_op.h
caffe2/quantization/server/fbgemm_pack_blob.h
caffe2/quantization/server/fbgemm_pack_op.cc
caffe2/quantization/server/fbgemm_pack_op.h