CNTK
CNTK copied to clipboard
cub 1.8.0 compatibility issues
1.8.0 02/15/2018
- API change: change to the interfaces of cub::ShuffleIndex, cub::ShuffleUp, and
cub::ShuffleDown to better compute the PTX shfl control constant for
logical warps smaller than 32 threads
- Bug fixes:
- Issue #112: Bug in WarpScan's broadcast of warp-wide aggregate for
logical warps < 32 threads
//-----------------------------------------------------------------------------
1.7.5 02/08/2018
- Added radix-sorting support for __half keys
- Updated sorting policies for improved 8b-key performance
- Bug fixes:
- Syntax tweaks to mollify Clang
- Issue #127: DeviceRunLengthEncode::Encode returns wrong results
- Issue #128: 7-bit sorting passes fail for sm61 w/ large-values
I get errors about the cub::Shuffle stuffs when compiling cntk.
Source/Math/CntkBatchNormalization.cuh(120): error: no instance of function template "cub::ShuffleIndex" matches the argument list
argument types are: (int, int, int, unsigned int)
detected during:
instantiation of "T Microsoft::MSR::CNTK::Shuffle(T, int, unsigned int) [with T=int]"
(497): here
instantiation of "void Microsoft::MSR::CNTK::kComputeSpatialBatchMeanAndInvStdDev<BlockDimX,BlockDimY,U,ElemType,StatType>(int, int, int, const ElemType *, double, double, StatType *, StatType *, double, StatType *, StatType *) [with BlockDimX=8, BlockDimY=16
, U=4, ElemType=float, StatType=float]"
(634): here
instantiation of "void Microsoft::MSR::CNTK::ComputeSpatialBatchMeanAndInvStdDev<U>::Call(size_t, size_t, size_t, const ElemType *, double, double, StatType *, StatType *, double, StatType *, StatType *, cudaStream_t) [with U=4, ElemType=float, StatType=float
]"
(175): here
instantiation of "void Microsoft::MSR::CNTK::Call2<Func,T1,T2,Targs...>(size_t, Targs...) [with Func=Microsoft::MSR::CNTK::ComputeSpatialBatchMeanAndInvStdDev, T1=float, T2=float, Targs=<size_t, size_t, size_t, float *, double, double, float *, float *, doubl
e, float *, float *, cudaStream_t>]"
Source/Math/GPUMatrix.cu(3449): here
instantiation of "void Microsoft::MSR::CNTK::GPUMatrix<ElemType>::BatchNormalizationForward(const Microsoft::MSR::CNTK::GPUMatrix<StatType> &, const Microsoft::MSR::CNTK::GPUMatrix<StatType> &, __nv_bool, double, double, Microsoft::MSR::CNTK::GPUMatrix<StatTy
pe> &, Microsoft::MSR::CNTK::GPUMatrix<StatType> &, Microsoft::MSR::CNTK::GPUMatrix<ElemType> &, double, Microsoft::MSR::CNTK::GPUMatrix<StatType> &, Microsoft::MSR::CNTK::GPUMatrix<StatType> &) const [with ElemType=float, StatType=float]"
Source/Math/GPUMatrix.cu(4979): here
Source/Math/CntkBatchNormalization.cuh(120): error: no instance of function template "cub::ShuffleIndex" matches the argument list
argument types are: (float, int, int, unsigned int)
detected during:
instantiation of "T Microsoft::MSR::CNTK::Shuffle(T, int, unsigned int) [with T=float]"
(503): here
instantiation of "void Microsoft::MSR::CNTK::kComputeSpatialBatchMeanAndInvStdDev<BlockDimX,BlockDimY,U,ElemType,StatType>(int, int, int, const ElemType *, double, double, StatType *, StatType *, double, StatType *, StatType *) [with BlockDimX=8, BlockDimY=16
, U=4, ElemType=float, StatType=float]"
(634): here
instantiation of "void Microsoft::MSR::CNTK::ComputeSpatialBatchMeanAndInvStdDev<U>::Call(size_t, size_t, size_t, const ElemType *, double, double, StatType *, StatType *, double, StatType *, StatType *, cudaStream_t) [with U=4, ElemType=float, StatType=float
]"
(175): here
instantiation of "void Microsoft::MSR::CNTK::Call2<Func,T1,T2,Targs...>(size_t, Targs...) [with Func=Microsoft::MSR::CNTK::ComputeSpatialBatchMeanAndInvStdDev, T1=float, T2=float, Targs=<size_t, size_t, size_t, float *, double, double, float *, float *, doubl
e, float *, float *, cudaStream_t>]"
Source/Math/GPUMatrix.cu(3449): here
instantiation of "void Microsoft::MSR::CNTK::GPUMatrix<ElemType>::BatchNormalizationForward(const Microsoft::MSR::CNTK::GPUMatrix<StatType> &, const Microsoft::MSR::CNTK::GPUMatrix<StatType> &, __nv_bool, double, double, Microsoft::MSR::CNTK::GPUMatrix<StatTy
pe> &, Microsoft::MSR::CNTK::GPUMatrix<StatType> &, Microsoft::MSR::CNTK::GPUMatrix<ElemType> &, double, Microsoft::MSR::CNTK::GPUMatrix<StatType> &, Microsoft::MSR::CNTK::GPUMatrix<StatType> &) const [with ElemType=float, StatType=float]"
Source/Math/GPUMatrix.cu(4979): here
Source/Math/CntkBatchNormalization.cuh(120): error: no instance of function template "cub::ShuffleIndex" matches the argument list
argument types are: (double, int, int, unsigned int)
detected during:
instantiation of "T Microsoft::MSR::CNTK::Shuffle(T, int, unsigned int) [with T=double]"
(503): here
instantiation of "void Microsoft::MSR::CNTK::kComputeSpatialBatchMeanAndInvStdDev<BlockDimX,BlockDimY,U,ElemType,StatType>(int, int, int, const ElemType *, double, double, StatType *, StatType *, double, StatType *, StatType *) [with BlockDimX=8, BlockDimY=16
, U=4, ElemType=double, StatType=double]"
(634): here
instantiation of "void Microsoft::MSR::CNTK::ComputeSpatialBatchMeanAndInvStdDev<U>::Call(size_t, size_t, size_t, const ElemType *, double, double, StatType *, StatType *, double, StatType *, StatType *, cudaStream_t) [with U=4, ElemType=double, StatType=doub
le]"
(175): here
instantiation of "void Microsoft::MSR::CNTK::Call2<Func,T1,T2,Targs...>(size_t, Targs...) [with Func=Microsoft::MSR::CNTK::ComputeSpatialBatchMeanAndInvStdDev, T1=double, T2=double, Targs=<size_t, size_t, size_t, double *, double, double, double *, double *,
double, double *, double *, cudaStream_t>]"
Source/Math/GPUMatrix.cu(3449): here
instantiation of "void Microsoft::MSR::CNTK::GPUMatrix<ElemType>::BatchNormalizationForward(const Microsoft::MSR::CNTK::GPUMatrix<StatType> &, const Microsoft::MSR::CNTK::GPUMatrix<StatType> &, __nv_bool, double, double, Microsoft::MSR::CNTK::GPUMatrix<StatTy
pe> &, Microsoft::MSR::CNTK::GPUMatrix<StatType> &, Microsoft::MSR::CNTK::GPUMatrix<ElemType> &, double, Microsoft::MSR::CNTK::GPUMatrix<StatType> &, Microsoft::MSR::CNTK::GPUMatrix<StatType> &) const [with ElemType=double, StatType=double]"
Source/Math/GPUMatrix.cu(4980): here
cub 1.7.4 works fine. So I post the changelog since 1.7.5 here. Please adapt these changes.
Thanks for the feedback, we'll look into upgrading to cub 1.8.0.
#3206 for this