Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed the build errors (on Linux): #93

Merged
merged 3 commits into from
Feb 23, 2016
Merged

Conversation

Ark-kun
Copy link
Contributor

@Ark-kun Ark-kun commented Feb 5, 2016

  • Wrong format string types.
  • Default argument values should be in header, not .cpp.

* Wrong format string types.
* Default argument values should be in header, not .cpp.
@msftclas
Copy link

msftclas commented Feb 5, 2016

Hi @Ark-kun, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;

@msftclas
Copy link

msftclas commented Feb 5, 2016

@Ark-kun, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.

Thanks, MSBOT;

…is never used.

Problem: Linking fails since there are no explicit instantiations of the template function.
Solution: Removed the template from the CheckFunction function as the template is never used.
@jren2012
Copy link

jren2012 commented Feb 6, 2016

@Ark-kun when I deleted the template function in the ReaderShim.cpp:
ReaderShim::StartMinibatchLoop(size_t mbSize, size_t epoch, size_t requestedEpochSamples = requestDataSize)

some other errors occured? #92

mpic++ -c Source/SequenceTrainingLib/latticeforwardbackward.cpp -o /home/jren/Repos/CNTK/build/release/.build/Source/SequenceTrainingLib/latticeforwardbackward.o -D_POSIX_SOURCE -D_XOPEN_SOURCE=600 -D__USE_XOPEN2K -DCPUONLY -DUSE_ACML -DNDEBUG -msse3 -std=c++0x -std=c++11 -fopenmp -fpermissive -fPIC -Werror -fcheck-new -Wno-error=literal-suffix -g -O4 -ISource/Common/Include -ISource/Math -ISource/CNTK -ISource/ActionsLib -ISource/ComputationNetworkLib -ISource/SGDLib -ISource/SequenceTrainingLib -ISource/CNTK/BrainScript -ISource/Readers/ReaderLib -I/opt/acml5.3.1/ifort64_mp/include -I/home/jren/opencv-3.0.0/include -MD -MP -MF /home/jren/Repos/CNTK/build/release/.build/Source/SequenceTrainingLib/latticeforwardbackward.d
In file included from /home/jren/opencv-3.0.0/include/opencv2/opencv.hpp:58:0,
from Source/Readers/ImageReader/ImageTransformers.h:11,
from Source/Readers/ImageReader/ImageTransformers.cpp:11:
/usr/local/opencv-3.0.0/include/opencv2/core.hpp:54:33: fatal error: opencv2/core/base.hpp: No such file or directory
#include "opencv2/core/base.hpp"
^
compilation terminated.
In file included from /usr/lib/openmpi/include/mpi.h:253:0,
from Source/Common/Include/MPIWrapper.h:7,
from Source/Common/MPIWrapper.cpp:2:
/usr/lib/openmpi/include/mpi_portable_platform.h:374:34: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
_STRINGIFY(GNUC)"."_STRINGIFY(GNUC_MINOR)"."_STRINGIFY(GNUC_PATCHLEVEL)
^
In file included from /home/jren/opencv-3.0.0/include/opencv2/opencv.hpp:58:0,
from Source/Readers/ImageReader/ImageDataDeserializer.cpp:7:
/usr/local/opencv-3.0.0/include/opencv2/core.hpp:54:33: fatal error: opencv2/core/base.hpp: No such file or directory
#include "opencv2/core/base.hpp"
^
compilation terminated.
/usr/lib/openmpi/include/mpi_portable_platform.h:374:63: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
_STRINGIFY(GNUC)"."_STRINGIFY(GNUC_MINOR)"."_STRINGIFY(GNUC_PATCHLEVEL)
^
In file included from /home/jren/opencv-3.0.0/include/opencv2/opencv.hpp:58:0,
from Source/Readers/ImageReader/ImageTransformers.h:11,
from Source/Readers/ImageReader/ImageReader.h:9,
from Source/Readers/ImageReader/ImageReader.cpp:7:
/usr/local/opencv-3.0.0/include/opencv2/core.hpp:54:33: fatal error: opencv2/core/base.hpp: No such file or directory
#include "opencv2/core/base.hpp"
^

@jren2012
Copy link

jren2012 commented Feb 6, 2016

@Ark-kun I solved that problem, and another questeion;

Why do I must write the full path of the library, like "#include "/usr/local/opencv-3.0.0/include/opencv2/core/cvdef.h""?
if I just write like "#include "opencv2/core/cvdef.h"", it will pump can't find this file

is there anything I need to do to solve this problem?

@kronos-cm
Copy link

Hi everyone, sorry if this comment is somehow unrelated to the conversation, I just didn't want to open a new topic for something easily fixed. I encountered some errors such as:

Source/Math/CuDnnConvolutionEngine.cpp: In constructor 'Microsoft::MSR::CNTK::CuDnnFilter::CuDnnFilter(size_t, size_t, size_t, size_t, cudnnDataType_t)':
Source/Math/CuDnnConvolutionEngine.cpp:88:132: error: 'cudnnSetFilter4dDescriptor_v4' was not declared in this scope
static_cast(k), static_cast(c), static_cast(h), static_cast(w)));

While building CNTK on linux, I realised, after more time than I would have liked, the error came from older installed versions of cudnn library, even if I followed the steps carefully and created a separate cudnn-4.0 folder on /usr/local/ and pointed explicitly to it using the --with-cudnn flag. I replaced the libraries (libcudnn.so, libcudnn.so.4, libcudnn.so.4.0.4, libcudnn_static.a) and cudnn.h from the include folder and the issue was gone. Maybe a short warning should be added to the documentation.

@alexeyo26
Copy link
Member

Hello Angel!

Thank you for this. Two questions. Where was another version of cuDNN installed (which path) and was this path included in PATH?

Thank you,
Alexey

@kronos-cm
Copy link

Hi Alexey,

There were in the /usr/local/cuda-7.0 folder in the include and lib64 respective folders, that is why it took me a while to figure it out because I thought the make files will set all calls to the cudnn-4.0 files, I guess as it found cudnn.h already in the cuda toolkit folder it was using that instead, I overwrote the libraries and cudnn.h directly in the cuda-7.0 folder and pointed to it using the flag --with-cudnn. And yes, it was included in my path.

@alexeyo26
Copy link
Member

OK. I will update the Wiki warning people about such issues.
Thank you a lot.
Alexey

@kronos-cm
Copy link

Thank you.

@jaeyounkim
Copy link

I encountered the simliar issue and resolved it by deleting all cudnn files in the /usr/local/cuda-7.0 folder.

@mahilleb-msft
Copy link
Member

Hi @Ark-kun, thanks for the PR ... The build errors are for GCC version that are more recent than we usually test with. Could you perhaps resolve the conflicts / rebase so that we can look at this? Sorry we didn't get to this earlier...

Best, Mark

@rwightman
Copy link
Contributor

dd0a7b8 from this pull request in combination with 00af7a5 and 442e249 from #100 are essentially what I use to build in GCC 5.x. The last two seem like a better fix for the template issues than 0f2d1ca from this request. It'd be nice to seem them added at some point.

@Ark-kun
Copy link
Contributor Author

Ark-kun commented Feb 19, 2016

@rwightman Not sure the fixes have any relation (apart from the fact that they both deal with templates). My fix removes the unused template from an inherently non-generic function. That's why you can just remove the template and nothing breaks. @jpauwels fix on the other hand deals with the template class explicit instantiation.

@rwightman
Copy link
Contributor

@Ark-kun, I assumed the main motivation for your change was related to compile errors due to the missing explicit instantiation (which both of those changes fix in different ways, at least for that function). It's true that the function is currently not using the template at all but it's unclear whether or not there is an intention to do so.
Either way, it'd be nice to have all the changes in somehow so I don't have to maintain patches for GCC 5.x :) I'm curious what version of GCC you're using that your fixes work without also having the rest of the template fixes from #100 included? I seem to require both with GCC 5.2.

@Ark-kun
Copy link
Contributor Author

Ark-kun commented Feb 19, 2016

I used gcc v5.2.1 and these were the only fixes I had to fix to make CNTK build.

$ g++ --version
g++ (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010

(VS does not support %zu)
@Ark-kun
Copy link
Contributor Author

Ark-kun commented Feb 19, 2016

@mahilleb-msft Resolved the conflict.

@amitaga
Copy link
Contributor

amitaga commented Feb 23, 2016

Attention MS Reviewer: Build 2939

@amitaga amitaga self-assigned this Feb 23, 2016
@amitaga
Copy link
Contributor

amitaga commented Feb 23, 2016

Thanks for your contribution @Ark-kun. This PR will be shortly integrated.

@svccntk svccntk merged commit 5925ae7 into microsoft:master Feb 23, 2016
@amitaga
Copy link
Contributor

amitaga commented Feb 23, 2016

Attention MS Team. Integration Build 2943

@howardlinus
Copy link

@Ark-kun @jren2012 , I have similar compile errors and wonder how you solved them. It isn't clear to me from the posts.

many thanks


make -C /home/ubuntu/CNTK BUILD_TOP=/home/ubuntu/CNTK/build/release all
make[1]: Entering directory `/home/ubuntu/CNTK'
=-----------------------------------------------------------=
creating /home/ubuntu/CNTK/build/release/.build/Source/Math/CuDnnConvolutionEngine.o for with build type release
/usr/local/cuda-7.5/bin/nvcc -c Source/Math/CuDnnConvolutionEngine.cu -o /home/ubuntu/CNTK/build/release/.build/Source/Math/CuDnnConvolutionEngine.o -D_POSIX_SOURCE -D_XOPEN_SOURCE=600 -D__USE_XOPEN2K -std=c++11 -DUSE_CUDNN -DUSE_ACML -DNDEBUG -DQUANTIZED_GRADIENT_AGGREGATION -m 64 -O3 -g -use_fast_math -lineinfo -gencode arch=compute_20,code="sm_20,compute_20" -gencode arch=compute_30,code="sm_30,compute_30" -gencode arch=compute_35,code="sm_35,compute_35" -gencode arch=compute_50,code="sm_50,compute_50" -ISource/Common/Include -ISource/Math -ISource/CNTK -ISource/ActionsLib -ISource/ComputationNetworkLib -ISource/SGDLib -ISource/SequenceTrainingLib -ISource/CNTK/BrainScript -ISource/Readers/ReaderLib -I/usr/./include/nvidia/gdk -I/home/ubuntu/cub-1.4.1 -I/usr/local/cuda-7.5/include -I/usr/local/cudnn-4.0/cuda/include -I/opt/acml5.3.1/ifort64_mp/include -I/home/ubuntu/opencv-3.0.0/include -ISource/1BitSGD -Xcompiler "-fPIC -Werror"
Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "const float *" is incompatible with parameter of type "void *"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=float]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
(778): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "float *" is incompatible with parameter of type "cudnnTensorDescriptor_t"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=float]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
(778): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "double" is incompatible with parameter of type "void *"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=float]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
(778): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "const float *" is incompatible with parameter of type "void *"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=float]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
(778): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "const float *" is incompatible with parameter of type "double"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=float]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
(778): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: too few arguments in function call
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=float]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=float]"
(778): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "const double *" is incompatible with parameter of type "void *"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=double]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
(779): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "double *" is incompatible with parameter of type "cudnnTensorDescriptor_t"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=double]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
(779): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "double" is incompatible with parameter of type "void *"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=double]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
(779): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "const double *" is incompatible with parameter of type "void *"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=double]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
(779): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: argument of type "const double *" is incompatible with parameter of type "double"
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=double]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
(779): here

Source/Math/CuDnnConvolutionEngine.cu(507): error: too few arguments in function call
detected during:
instantiation of "void Microsoft::MSR::CNTK::CuDnnConvolutionEngine::BackwardNormalizeBatch(const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Tensor4D &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, __nv_bool, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, const Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &, Microsoft::MSR::CNTK::ConvolutionEngine::Mat &) [with ElemType=double]"
(275): here
instantiation of "Microsoft::MSR::CNTK::CuDnnConvolutionEngine::CuDnnConvolutionEngine(size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
Source/Common/Include/Platform.h(255): here
instantiation of "std::unique_ptr<T, std::default_delete> std::make_unique<T,Args...>(Args &&...) [with T=Microsoft::MSR::CNTK::CuDnnConvolutionEngine, Args=<size_t &, Microsoft::MSR::CNTK::BatchNormImpl &>]"
(726): here
instantiation of "Microsoft::MSR::CNTK::ConvolutionEngineFactory::ConvEnginePtr Microsoft::MSR::CNTK::CuDnnConvolutionEngineFactory::CreateConvEngine(int, size_t, Microsoft::MSR::CNTK::BatchNormImpl) [with ElemType=double]"
(779): here

12 errors detected in the compilation of "/tmp/tmpxft_0001b5e1_00000000-16_CuDnnConvolutionEngine.compute_50.cpp1.ii".
make[1]: *** [/home/ubuntu/CNTK/build/release/.build/Source/Math/CuDnnConvolutionEngine.o] Error 2
make[1]: Leaving directory `/home/ubuntu/CNTK'
make: *** [all] Error 2

@alexeyo26
Copy link
Member

Hello @howardlinus,

If you believe, that you had similar issues, try to get updated code - we integrated @Ark-kun 's changes to master less than a day ago - see second post above yours. You can see what was changed in the code - see the commit contents

Also, if you still have problems, please open a separate issue for us to follow up.

Thank you,
Alexey

@howardlinus
Copy link

@alexeyo26 Thanks. I did a brand new install using git clone. and the problem persist. I am going to open a separate issue. by the way, I am doing this on AWS ubuntu 14.04 EC2 instance.

@simuxx
Copy link

simuxx commented Sep 22, 2017

I am trying to install open MPI on ubuntu 15.04
when running make -j it blocks
Any help? thank you

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet