Resolve errors in perfkernel for Windows (#16031)
authorTongliang Liao <xkszltl@gmail.com>
Thu, 17 Jan 2019 05:38:13 +0000 (21:38 -0800)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Thu, 17 Jan 2019 05:51:00 +0000 (21:51 -0800)
commit55511004d17bd3e0e36e88efa6abdc9a5a03dec1
tree05ed1d90a24f1e4e327d8d1fd0ad5cf1acf84c2a
parentaa6b0f50ad4daadb5e35ab89ecc325e35d1207dc
Resolve errors in perfkernel for Windows (#16031)

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

1. MSVC only has _mm_prefetch(const char*, int). Fixed in both python codegen and C++ files.
2. uint32_t in "cvtsh_ss_bugfix.h" requires "#include <cstdint>".
3. Some files use gflags headers. Add dependency via c10.
4. Isolate arch flags with interface library and private compile options.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/15753

Reviewed By: dskhudia

Differential Revision: D13636233

Pulled By: jspark1105

fbshipit-source-id: cdcbd4240e07b749554a2a5676c11af88f23c31d
17 files changed:
caffe2/perfkernels/CMakeLists.txt
caffe2/perfkernels/adagrad.cc
caffe2/perfkernels/adagrad.h
caffe2/perfkernels/adagrad_avx.cc
caffe2/perfkernels/common.h
caffe2/perfkernels/cvtsh_ss_bugfix.h
caffe2/perfkernels/embedding_lookup.cc
caffe2/perfkernels/embedding_lookup_avx2.cc
caffe2/perfkernels/embedding_lookup_fused_8bit_rowwise_avx2.cc
caffe2/perfkernels/fused_8bit_rowwise_embedding_lookup.cc
caffe2/perfkernels/hp_emblookup_codegen.py
caffe2/perfkernels/math.h
caffe2/perfkernels/math_cpu_avx2.cc
caffe2/perfkernels/math_cpu_base.cc
caffe2/perfkernels/typed_axpy.cc
cmake/Dependencies.cmake
cmake/MiscCheck.cmake