added simd_functions.hpp to device layer