尝试在 ubuntu 18.04 中使用 OpenCL 运行程序时出现“此设备不支持双精度”错误

尝试在 ubuntu 18.04 中使用 OpenCL 运行程序时出现“此设备不支持双精度”错误

我正在尝试在装有 ubuntu 18.04 的笔记本电脑上运行 C++ 程序,它可以编译,但是当我尝试在终端中运行它时出现错误。

该程序使用 OpenCL,因为我正在尝试学习如何使用它。我使用以下命令安装了 OpenCl:

sudo apt install ocl-icd-libopencl1   
sudo apt install opencl-headers   
sudo apt install clinfo   
sudo apt install ocl-icd-opencl-dev   
sudo apt install beignet  

当我尝试运行示例代码时出现此错误:

ASSERTION FAILED: Double precision not supported on this device (if this is a literal, use '1.0f' not '1.0')  
  at file /build/beignet-Bevceu/beignet-1.3.2/backend/src/backend/gen_insn_selection.cpp, function void gbe::ConvertInstructionPattern::convertBetweenFloatDouble(gbe::Selection::Opaque&, const gbe::ir::ConvertInstruction&, bool&) const, line 6227  
Trace/breakpoint trap (core dumped)

这是上学期我们在学校电脑上学习如何使用 OpenCL 时教授编写的示例代码。现在代码在那里运行正常,我正尝试在我的计算机上运行它,但出现了这个错误。

我的笔记本电脑没有 GPU,但集成了带有 Intel® Core™ i5-3210M 处理器的显卡。

对于这个错误意味着什么或者我该如何修复它,任何帮助都将非常有帮助。

相关内容