Community
cancel
Showing results for 
Search instead for 
Did you mean: 
268 Views

dpct crashing while conversion

HI,

I was converting spmv_compare.cu from repo cub and dpct gave SIGSEGV.

dpct output:

>dpct --cuda-include-path="C:\nvcc\include"  --extra-arg="-I../" --out-root=dpct spmv_compare.cu
NOTE: Could not auto-detect compilation database for file 'spmv_compare.cu' in 'C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental' or any parent directory.
Processing: C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:49:
C:\Users\...\Downloads\cuda code\cub-1.8.0\test\test_util.h:395:36: warning: result of comparison of constant 4294967295 with expression of type 'volatile unsigned short' is always true [-Wtautological-constant-out-of-range-compare]
        ((bits >= 0xFC01) && (bits <= 0xFFFFFFFF)));
                              ~~~~ ^  ~~~~~~~~~~
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:41:
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\sparse_matrix.h:360:31: warning: 'sscanf' is deprecated: This function or variable may be unsafe. Consider using sscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [-Wdeprecated-declarations]
                int nparsed = sscanf(line, "%d %d %d", &num_rows, &num_cols, &num_nonzeros);
                              ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:906:9: note: in instantiation of function template specialization 'RunTests<double, int>' requested here
        RunTests<double, int>(rcm_relabel, alpha, beta, mtx_filename, grid2d, grid3d, wheel, dense, timing_iterations, args);
        ^
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt\stdio.h:2262:20: note: 'sscanf' has been explicitly marked deprecated here
    _Check_return_ _CRT_INSECURE_DEPRECATE(sscanf_s)
                   ^
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\vcruntime.h:255:55: note: expanded from macro '_CRT_INSECURE_DEPRECATE'
        #define _CRT_INSECURE_DEPRECATE(_Replacement) _CRT_DEPRECATE_TEXT(    \
                                                      ^
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\vcruntime.h:245:47: note: expanded from macro '_CRT_DEPRECATE_TEXT'
#define _CRT_DEPRECATE_TEXT(_Text) __declspec(deprecated(_Text))
                                              ^
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:41:
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\sparse_matrix.h:399:25: warning: 'sscanf' is deprecated: This function or variable may be unsafe. Consider using sscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [-Wdeprecated-declarations]
                    if (sscanf(line, "%lf", &val) != 1)
                        ^
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt\stdio.h:2262:20: note: 'sscanf' has been explicitly marked deprecated here
    _Check_return_ _CRT_INSECURE_DEPRECATE(sscanf_s)
                   ^
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\vcruntime.h:255:55: note: expanded from macro '_CRT_INSECURE_DEPRECATE'
        #define _CRT_INSECURE_DEPRECATE(_Replacement) _CRT_DEPRECATE_TEXT(    \
                                                      ^
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\vcruntime.h:245:47: note: expanded from macro '_CRT_DEPRECATE_TEXT'
#define _CRT_DEPRECATE_TEXT(_Text) __declspec(deprecated(_Text))
                                              ^
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:33:
In file included from C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\map:8:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtree:1971:23: error: no matching function for call to object of type 'const std::_Tree_comp_alloc<std::_Tset_traits<int, OrderByLow<int>, std::allocator<int>, false> >::key_compare' (aka 'const OrderByLow<int>')
                        if (_DEBUG_LT_PRED(this->_Getcomp(), this->_Key(_Pnode), _Keyval))
                                           ^~~~~~~~~~~~~~~~
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xutility:1093:38: note: expanded from macro '_DEBUG_LT_PRED'
  #define _DEBUG_LT_PRED(pred, x, y)    pred(x, y)
                                        ^~~~
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtree:2011:50: note: in instantiation of function template specialization 'std::_Tree<std::_Tset_traits<int, OrderByLow<int>, std::allocator<int>, false> >::_Eqrange<int>' requested here
                _Paircc _Ans(static_cast<const _Tree *>(this)->_Eqrange(_Keyval));
                                                               ^
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtree:1533:11: note: in instantiation of function template specialization 'std::_Tree<std::_Tset_traits<int, OrderByLow<int>, std::allocator<int>, false> >::_Eqrange<int>' requested here
                return (_Eqrange(_Keyval));
                        ^
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtree:1401:20: note: in instantiation of member function 'std::_Tree<std::_Tset_traits<int, OrderByLow<int>, std::allocator<int>, false> >::equal_range' requested here
                _Pairii _Where = equal_range(_Keyval);
                                 ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\sparse_matrix.h:1161:27: note: in instantiation of member function 'std::_Tree<std::_Tset_traits<int, OrderByLow<int>, std::allocator<int>, false> >::erase' requested here
                unlabeled.erase(vertex);
                          ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\sparse_matrix.h:1222:5: note: in instantiation of function template specialization 'RcmRelabel<double, int>' requested here
    RcmRelabel(matrix, relabel_indices);
    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:656:9: note: in instantiation of function template specialization 'RcmRelabel<double, int>' requested here
        RcmRelabel(csr_matrix, !g_quiet);
        ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:830:5: note: in instantiation of function template specialization 'RunTest<double, int>' requested here
    RunTest(
    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:906:9: note: in instantiation of function template specialization 'RunTests<double, int>' requested here
        RunTests<double, int>(rcm_relabel, alpha, beta, mtx_filename, grid2d, grid3d, wheel, dense, timing_iterations, args);
        ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\sparse_matrix.h:1080:10: note: candidate function not viable: 'this' argument has type 'const std::_Tree_comp_alloc<std::_Tset_traits<int, OrderByLow<int>, std::allocator<int>, false> >::key_compare' (aka 'const OrderByLow<int>'), but method is not marked const
    bool operator()(const OffsetT &a, const OffsetT &b)
         ^
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:33:
In file included from C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\map:8:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtree:1992:23: error: no matching function for call to object of type 'const std::_Tree_comp_alloc<std::_Tset_traits<int, OrderByLow<int>, std::allocator<int>, false> >::key_compare' (aka 'const OrderByLow<int>')
                        if (_DEBUG_LT_PRED(this->_Getcomp(), _Keyval, this->_Key(_Pnode)))
                                           ^~~~~~~~~~~~~~~~
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xutility:1093:38: note: expanded from macro '_DEBUG_LT_PRED'
  #define _DEBUG_LT_PRED(pred, x, y)    pred(x, y)
                                        ^~~~
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\sparse_matrix.h:1080:10: note: candidate function not viable: 'this' argument has type 'const std::_Tree_comp_alloc<std::_Tset_traits<int, OrderByLow<int>, std::allocator<int>, false> >::key_compare' (aka 'const OrderByLow<int>'), but method is not marked const
    bool operator()(const OffsetT &a, const OffsetT &b)
         ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:598:13: warning: format specifies type 'int' but the argument has type 'unsigned long long' [-Wformat]
            sizeof(ValueT) * 8,
            ^~~~~~~~~~~~~~~~~~
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:719:5: note: in instantiation of function template specialization 'DisplayPerf<double, int>' requested here
    DisplayPerf(device_giga_bandwidth, avg_millis, csr_matrix);
    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:830:5: note: in instantiation of function template specialization 'RunTest<double, int>' requested here
    RunTest(
    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:906:9: note: in instantiation of function template specialization 'RunTests<double, int>' requested here
        RunTests<double, int>(rcm_relabel, alpha, beta, mtx_filename, grid2d, grid3d, wheel, dense, timing_iterations, args);
        ^
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:46:
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\device_spmv.cuh:41:
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\dispatch\dispatch_spmv_orig.cuh:41:
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\agent\agent_segment_fixup.cuh:39:
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:172:37: warning: expression does not compute the number of elements in this array; element type is 'cub::KeyValuePair<int, double>', not 'DeviceWord' (aka 'unsigned long long') [-Wsizeof-array-div]
        TOTAL_WORDS = sizeof(items) / sizeof(DeviceWord),
                             ~~~~~  ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:765:13: note: in instantiation of function template specialization 'cub::InternalLoadDirectBlockedVectorized<cub::LOAD_DEFAULT, cub::KeyValuePair<int, double>, 4>' requested here
            InternalLoadDirectBlockedVectorized<MODIFIER>(linear_tid, block_itr.ptr, items);
            ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:1134:48: note: in instantiation of function template specialization 'cub::BlockLoad<cub::KeyValuePair<int, double>, 128, 4, cub::BLOCK_LOAD_VECTORIZE, 1, 1, 0>::LoadInternal<cub::BLOCK_LOAD_VECTORIZE, 0>::Load<cub::LOAD_DEFAULT, cub::KeyValuePair<int, double>, int>' requested here
        InternalLoad(temp_storage, linear_tid).Load(block_itr, items);
                                               ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\agent\agent_segment_fixup.cuh:284:53: note: in instantiation of function template specialization 'cub::BlockLoad<cub::KeyValuePair<int, double>, 128, 4, cub::BLOCK_LOAD_VECTORIZE, 1, 1, 0>::Load<cub::CacheModifiedInputIterator<cub::LOAD_DEFAULT, cub::KeyValuePair<int, double>, int> >' requested here
            BlockLoadPairs(temp_storage.load_pairs).Load(d_pairs_in + tile_offset, pairs);
                                                    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\agent\agent_segment_fixup.cuh:361:13: note: in instantiation of function template specialization 'cub::AgentSegmentFixup<cub::DispatchSpmv<double, int>::PtxSegmentFixupPolicy, cub::KeyValuePair<int, double> *, double *, cub::Equality, cub::Sum, int>::ConsumeTile<false>' requested here
            ConsumeTile<false>(num_remaining, tile_idx, tile_offset, tile_state, Int2Type<USE_ATOMIC_FIXUP>());
            ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\dispatch\dispatch_spmv_orig.cuh:220:97: note: in instantiation of member function 'cub::AgentSegmentFixup<cub::DispatchSpmv<double, int>::PtxSegmentFixupPolicy, cub::KeyValuePair<int, double> *, double *, cub::Equality, cub::Sum, int>::ConsumeRange' requested here
    AgentSegmentFixupT(temp_storage, d_pairs_in, d_aggregates_out, cub::Equality(), cub::Sum()).ConsumeRange(
                                                                                                ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\dispatch\dispatch_spmv_orig.cuh:820:17: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
                DeviceSegmentFixupKernel<PtxSegmentFixupPolicy, KeyValuePairT*, ValueT*, OffsetT, ScanTileStateT>,
                ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\device_spmv.cuh:158:43: note: in instantiation of member function 'cub::DispatchSpmv<double, int>::Dispatch' requested here
        return DispatchSpmv<ValueT, int>::Dispatch(
                                          ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:526:30: note: in instantiation of function template specialization 'cub::DeviceSpmv::CsrMV<double>' requested here
    CubDebugExit(DeviceSpmv::CsrMV(
                             ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:725:22: note: in instantiation of function template specialization 'TestGpuMergeCsrmv<double, int>' requested here
        avg_millis = TestGpuMergeCsrmv(vector_y_in, vector_y_out, params, timing_iterations);
                     ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:830:5: note: in instantiation of function template specialization 'RunTest<double, int>' requested here
    RunTest(
    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:906:9: note: in instantiation of function template specialization 'RunTests<double, int>' requested here
        RunTests<double, int>(rcm_relabel, alpha, beta, mtx_filename, grid2d, grid3d, wheel, dense, timing_iterations, args);
        ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:165:14: note: array 'items' declared here
    T      (&items)[ITEMS_PER_THREAD]) ///< [out] Data to load
             ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:172:37: note: place parentheses around the 'sizeof(DeviceWord)' expression to silence this warning
        TOTAL_WORDS = sizeof(items) / sizeof(DeviceWord),
                                    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:598:13: warning: format specifies type 'int' but the argument has type 'unsigned long long' [-Wformat]
            sizeof(ValueT) * 8,
            ^~~~~~~~~~~~~~~~~~
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:719:5: note: in instantiation of function template specialization 'DisplayPerf<float, int>' requested here
    DisplayPerf(device_giga_bandwidth, avg_millis, csr_matrix);
    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:830:5: note: in instantiation of function template specialization 'RunTest<float, int>' requested here
    RunTest(
    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:910:9: note: in instantiation of function template specialization 'RunTests<float, int>' requested here
        RunTests<float, int>(rcm_relabel, alpha, beta, mtx_filename, grid2d, grid3d, wheel, dense, timing_iterations, args);
        ^
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:46:
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\device_spmv.cuh:41:
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\dispatch\dispatch_spmv_orig.cuh:41:
In file included from C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\agent\agent_segment_fixup.cuh:39:
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:172:37: warning: expression does not compute the number of elements in this array; element type is 'cub::KeyValuePair<int, float>', not 'DeviceWord' (aka 'unsigned int') [-Wsizeof-array-div]
        TOTAL_WORDS = sizeof(items) / sizeof(DeviceWord),
                             ~~~~~  ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:765:13: note: in instantiation of function template specialization 'cub::InternalLoadDirectBlockedVectorized<cub::LOAD_DEFAULT, cub::KeyValuePair<int, float>, 4>' requested here
            InternalLoadDirectBlockedVectorized<MODIFIER>(linear_tid, block_itr.ptr, items);
            ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:1134:48: note: in instantiation of function template specialization 'cub::BlockLoad<cub::KeyValuePair<int, float>, 128, 4, cub::BLOCK_LOAD_VECTORIZE, 1, 1, 0>::LoadInternal<cub::BLOCK_LOAD_VECTORIZE, 0>::Load<cub::LOAD_DEFAULT, cub::KeyValuePair<int, float>, int>' requested here
        InternalLoad(temp_storage, linear_tid).Load(block_itr, items);
                                               ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\agent\agent_segment_fixup.cuh:284:53: note: in instantiation of function template specialization 'cub::BlockLoad<cub::KeyValuePair<int, float>, 128, 4, cub::BLOCK_LOAD_VECTORIZE, 1, 1, 0>::Load<cub::CacheModifiedInputIterator<cub::LOAD_DEFAULT, cub::KeyValuePair<int, float>, int> >' requested here
            BlockLoadPairs(temp_storage.load_pairs).Load(d_pairs_in + tile_offset, pairs);
                                                    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\agent\agent_segment_fixup.cuh:361:13: note: in instantiation of function template specialization 'cub::AgentSegmentFixup<cub::DispatchSpmv<float, int>::PtxSegmentFixupPolicy, cub::KeyValuePair<int, float> *, float *, cub::Equality, cub::Sum, int>::ConsumeTile<false>' requested here
            ConsumeTile<false>(num_remaining, tile_idx, tile_offset, tile_state, Int2Type<USE_ATOMIC_FIXUP>());
            ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\dispatch\dispatch_spmv_orig.cuh:220:97: note: in instantiation of member function 'cub::AgentSegmentFixup<cub::DispatchSpmv<float, int>::PtxSegmentFixupPolicy, cub::KeyValuePair<int, float> *, float *, cub::Equality, cub::Sum, int>::ConsumeRange' requested here
    AgentSegmentFixupT(temp_storage, d_pairs_in, d_aggregates_out, cub::Equality(), cub::Sum()).ConsumeRange(
                                                                                                ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\dispatch\dispatch_spmv_orig.cuh:820:17: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
                DeviceSegmentFixupKernel<PtxSegmentFixupPolicy, KeyValuePairT*, ValueT*, OffsetT, ScanTileStateT>,
                ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\device\device_spmv.cuh:158:43: note: in instantiation of member function 'cub::DispatchSpmv<float, int>::Dispatch' requested here
        return DispatchSpmv<ValueT, int>::Dispatch(
                                          ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:526:30: note: in instantiation of function template specialization 'cub::DeviceSpmv::CsrMV<float>' requested here
    CubDebugExit(DeviceSpmv::CsrMV(
                             ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:725:22: note: in instantiation of function template specialization 'TestGpuMergeCsrmv<float, int>' requested here
        avg_millis = TestGpuMergeCsrmv(vector_y_in, vector_y_out, params, timing_iterations);
                     ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:830:5: note: in instantiation of function template specialization 'RunTest<float, int>' requested here
    RunTest(
    ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\experimental\spmv_compare.cu:910:9: note: in instantiation of function template specialization 'RunTests<float, int>' requested here
        RunTests<float, int>(rcm_relabel, alpha, beta, mtx_filename, grid2d, grid3d, wheel, dense, timing_iterations, args);
        ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:165:14: note: array 'items' declared here
    T      (&items)[ITEMS_PER_THREAD]) ///< [out] Data to load
             ^
C:\Users\...\Downloads\cuda code\cub-1.8.0\cub\block\block_load.cuh:172:37: note: place parentheses around the 'sizeof(DeviceWord)' expression to silence this warning
        TOTAL_WORDS = sizeof(items) / sizeof(DeviceWord),
                                    ^

Meet signal:SIGSEGV
Intel(R) DPC++ Compatibility Tool tries to give analysis reports and terminates...

Regards,
Gagan

 

Tags (1)
0 Kudos
3 Replies
AbhishekD_Intel
Moderator
268 Views

Hi Gagan,

We are also getting the same errors while trying to migrate the cuda file provided by you. So we are escalating this to the concerned team.

Thanks for reporting the issue.

 

Warm Regards,

Abhishek

199 Views

This issue is fixed in Beta08. Please confirm.


182 Views

This issue has been resolved and we will no longer respond to this thread. If you require additional assistance from Intel, please start a new thread. Any further interaction in this thread will be considered community only


Reply