64x VS2010 프로젝트에 .cu
파일이 있습니다. 이 프로젝트는 .mexw64
파일을 추출하도록 구성되었습니다. 벨로가 거기 나는 실행 예제입니다. mex 함수 안에 Armadillo 선형 대수 라이브러리의 일부 함수를 사용하고 싶습니다. #include "armaMex.hpp"
사용하는 경우 그래서 컴파일러는 약간의 오차가 반환 :CUDA 및 Armadillo 사용
- 오류 C3203을 '고정'특화되지 않은 클래스 템플릿은 템플릿 매개 변수 'T1'에 대한 템플릿 인수로 사용할 수 없습니다 실제에 c를 예상 : .... \ armadillo-4.200.0 \ include \ armadillo_bits \ Mat_meat.hpp
- 오류 C2955 : 'arma :: Mat :: fixed': 클래스 템플릿을 사용하려면 템플릿 인수 목록 c : \ .... \ armadillo-4.200.0 \ include \ armadillo_bits \ Mat_meat.hpp
- 오류 C1903 : 이전 오류에서 복구 할 수 없습니다. 컴파일을 중지하는 중 C : \ .... \ armadillo-4.200.0 \ include \ armadillo_bits \ Mat_meat.hpp
이 오류의 원인은 무엇인지 알 수 없습니다. 설명해 주시겠습니까?
#include "mex.h"
#include "armaMex.hpp"
void
mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
mexPrintf("hello!\n");
}
PS : CUDA SDK 5.5 64X, VS2010
MS VS C++ 컴파일러는 강력하고 C++ 표준을 올바르게 따르지 않습니다. 최신 버전의 VS를 사용하거나 GCC와 같은 일반적인 C++ 컴파일러를 사용하는 것이 좋습니다. Windows의 경우 [MinGW 프로젝트] (http://www.mingw.org)를 통해 얻을 수 있습니다. – mtall
CUDA를 사용하는 BLAS의 구현 인 [NVBLAS] (https://developer.nvidia.com/cublasxt)도보십시오. 그런 다음 Armadillo 기반 프로그램을 컴파일 할 때 BLAS 대신 NVBLAS와 연결할 수 있습니다. – mtall
이 질문이 CUDA 프로그래밍과 관련이 있는지 이해할 수 없습니다. 게시 된 예제에는 Matlab mex 헤더와 Armadillo 헤더가 혼합되어 있습니다. 맞습니까? – talonmies