MGfoundation / mgcpp

A C++ Math Library Based on CUDA

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[ Test Fail ] Illegal instruction error in half type constructor

Red-Portal opened this issue · comments

[----------] 21 tests from device_vector
[ RUN      ] device_vector.default_constructor
[       OK ] device_vector.default_constructor (0 ms)
[ RUN      ] device_vector.size_constructor
[       OK ] device_vector.size_constructor (0 ms)
[ RUN      ] device_vector.size_constructor_half
[       OK ] device_vector.size_constructor_half (1 ms)
[ RUN      ] device_vector.initializing_constructor
[       OK ] device_vector.initializing_constructor (0 ms)
[ RUN      ] device_vector.initializing_constructor_complex
[       OK ] device_vector.initializing_constructor_complex (0 ms)
[ RUN      ] device_vector.initializing_constructor_double_complex
[       OK ] device_vector.initializing_constructor_double_complex (1 ms)
[ RUN      ] device_vector.initializing_constructor_half
Illegal instruction (core dumped)

Test failed with this error

Stack trace shows

hread 1 "mgcpp_test" received signal SIGILL, Illegal instruction.
0x00007ffff7b6123e in mgcpp::float_to_half_impl (first=0x7fffffffde3c, 
    last=0x7fffffffde40, d_first=0x7fffffffde5e)
    at /home/paperspace/project/mgcpp/src/type_cast.cpp:35
35	            __m128i mm1 = _mm_cvtps_ph(_mm_set1_ps(first[i]), (_MM_FROUND_TO_NEAREST_INT |_MM_FROUND_NO_EXC));

@mujjingun