working CUDA-enabled dot product for floats and doubles