I get a build failure when attempting to build the mxnet submodule. Building the mxnet source from master doesn't have a problem.
/usr/local/cuda/bin/nvcc -c -o build/src/operator/rnn_gpu.o -std=c++11 -Xcompiler -D_FORCE_INLINES -O3 -ccbin g++ -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=[sm_61,compute_61] --fatbin-options -compress-all -Xcompiler "-DMSHADOW_FORCE_STREAM -Wall -Wsign-compare -O3 -DNDEBUG=1 -I/home/jim/data/git/mxnet-yolo/mxnet/mshadow/ -I/home/jim/data/git/mxnet-yolo/mxnet/dmlc-core/include -fPIC -I/home/jim/data/git/mxnet-yolo/mxnet/nnvm/include -I/home/jim/data/git/mxnet-yolo/mxnet/dlpack/include -Iinclude -funroll-loops -Wno-unused-variable -Wno-unused-parameter -Wno-unknown-pragmas -Wno-unused-local-typedefs -msse3 -I/usr/local/cuda/include -DMSHADOW_USE_CBLAS=1 -DMSHADOW_USE_MKL=0 -DMSHADOW_RABIT_PS=0 -DMSHADOW_DIST_PS=0 -DMSHADOW_USE_PASCAL=0 -DMXNET_USE_OPENCV=1 -I/usr/include/opencv -fopenmp -DMXNET_USE_LAPACK -DMSHADOW_USE_CUDNN=1 -I/home/jim/data/git/mxnet-yolo/mxnet/cub -DMXNET_USE_NVRTC=0" src/operator/rnn.cu
src/operator/./cudnn_rnn-inl.h(435): error: argument of type "cudnnRNNDescriptor_t" is incompatible with parameter of type "cudnnHandle_t"
detected during:
instantiation of "void mxnet::op::CuDNNRNNOp<DType>::Forward(const mxnet::OpContext &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::OpReqType, std::allocator<mxnet::OpReqType>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &) [with DType=float]"
(54): here
instantiation of "mxnet::op::CuDNNRNNOp<DType>::CuDNNRNNOp(mxnet::op::RNNParam) [with DType=float]"
src/operator/rnn.cu(20): here
src/operator/./cudnn_rnn-inl.h(435): error: argument of type "uint32_t" is incompatible with parameter of type "cudnnRNNDescriptor_t"
detected during:
instantiation of "void mxnet::op::CuDNNRNNOp<DType>::Forward(const mxnet::OpContext &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::OpReqType, std::allocator<mxnet::OpReqType>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &) [with DType=float]"
(54): here
instantiation of "mxnet::op::CuDNNRNNOp<DType>::CuDNNRNNOp(mxnet::op::RNNParam) [with DType=float]"
src/operator/rnn.cu(20): here
src/operator/./cudnn_rnn-inl.h(435): error: argument of type "cudnnDropoutDescriptor_t" is incompatible with parameter of type "int"
detected during:
instantiation of "void mxnet::op::CuDNNRNNOp<DType>::Forward(const mxnet::OpContext &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::OpReqType, std::allocator<mxnet::OpReqType>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &) [with DType=float]"
(54): here
instantiation of "mxnet::op::CuDNNRNNOp<DType>::CuDNNRNNOp(mxnet::op::RNNParam) [with DType=float]"
src/operator/rnn.cu(20): here
src/operator/./cudnn_rnn-inl.h(435): error: argument of type "cudnnRNNInputMode_t" is incompatible with parameter of type "cudnnDropoutDescriptor_t"
detected during:
instantiation of "void mxnet::op::CuDNNRNNOp<DType>::Forward(const mxnet::OpContext &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::OpReqType, std::allocator<mxnet::OpReqType>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &) [with DType=float]"
(54): here
instantiation of "mxnet::op::CuDNNRNNOp<DType>::CuDNNRNNOp(mxnet::op::RNNParam) [with DType=float]"
src/operator/rnn.cu(20): here
src/operator/./cudnn_rnn-inl.h(435): error: argument of type "cudnnDirectionMode_t" is incompatible with parameter of type "cudnnRNNInputMode_t"
detected during:
instantiation of "void mxnet::op::CuDNNRNNOp<DType>::Forward(const mxnet::OpContext &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::OpReqType, std::allocator<mxnet::OpReqType>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &) [with DType=float]"
(54): here
instantiation of "mxnet::op::CuDNNRNNOp<DType>::CuDNNRNNOp(mxnet::op::RNNParam) [with DType=float]"
src/operator/rnn.cu(20): here
src/operator/./cudnn_rnn-inl.h(435): error: argument of type "cudnnRNNMode_t" is incompatible with parameter of type "cudnnDirectionMode_t"
detected during:
instantiation of "void mxnet::op::CuDNNRNNOp<DType>::Forward(const mxnet::OpContext &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::OpReqType, std::allocator<mxnet::OpReqType>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &) [with DType=float]"
(54): here
instantiation of "mxnet::op::CuDNNRNNOp<DType>::CuDNNRNNOp(mxnet::op::RNNParam) [with DType=float]"
src/operator/rnn.cu(20): here
src/operator/./cudnn_rnn-inl.h(435): error: argument of type "cudnnDataType_t" is incompatible with parameter of type "cudnnRNNMode_t"
detected during:
instantiation of "void mxnet::op::CuDNNRNNOp<DType>::Forward(const mxnet::OpContext &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::OpReqType, std::allocator<mxnet::OpReqType>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &) [with DType=float]"
(54): here
instantiation of "mxnet::op::CuDNNRNNOp<DType>::CuDNNRNNOp(mxnet::op::RNNParam) [with DType=float]"
src/operator/rnn.cu(20): here
src/operator/./cudnn_rnn-inl.h(435): error: too few arguments in function call
detected during:
instantiation of "void mxnet::op::CuDNNRNNOp<DType>::Forward(const mxnet::OpContext &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::OpReqType, std::allocator<mxnet::OpReqType>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &, const std::vector<mxnet::TBlob, std::allocator<mxnet::TBlob>> &) [with DType=float]"
(54): here
instantiation of "mxnet::op::CuDNNRNNOp<DType>::CuDNNRNNOp(mxnet::op::RNNParam) [with DType=float]"
src/operator/rnn.cu(20): here
8 errors detected in the compilation of "/tmp/tmpxft_000022b6_00000000-17_rnn.compute_61.cpp1.ii".
Makefile:274: recipe for target 'build/src/operator/rnn_gpu.o' failed
make: *** [build/src/operator/rnn_gpu.o] Error 2
make: *** Waiting for unfinished jobs....