Support for othe roperating systems?

Hi all,

I’m wondering if there are any plans to port RecFusion to linux and/or OSX?

Cheers,
frank

Hello Frank,

we do have a version for Linux but it’s still in the stage of testing. We cannot give you the exact release date for it, but approximately till the end of the year it should be ready.

Best regards,
Olga

Great, thanks. I will hold off on getting another windows license then and put linux on my MacBook via Bootcamp instead.
Happy to test as well if you like (usually using Centos 7.8)

Cheers,
Frank

Hi Olga,

I am finally catching up now with this.
I just installed Ubuntu 20.04 on my MacBookPro to test RecFusion on.
This is the same laptop that I had tested RecFusion on before under Windows but I much prefer Linux.
Unfortunately when I try running RecFusion on Ubuntu I get an error about missing OpenCL components.
I tried this but to no avail:

sudo apt update
sudo apt install ocl-icd-opencl-dev

What do I need to install to make this work on Ubuntu? I’d love to finally be able to start using my scanner.

Cheers,
frank

Hello Frank,

The opencl library you need depends on your particular hardware. What you installed is the dispatcher, which will automatically load the libraries that implement the opencl API which are installed on your system. However, these libraries must be installed as well.

The nvidia proprietary client includes an opencl implementation, and should work without intervention. Maybe you have an Intel integrated gpu? In this case, you will need intel-opencl-icd.

I hope this solves your problem; if not, please post the output of clinfo and lspci

Best,
Marco

Thanks Marco,

this is the first time I am trying to run linux on a MacBookPro and I usually use Centos rather than Ubuntu, so I feel a little out of my depth TBH.
I ran this which worked fine:

sudo apt install ocl-icd-libopencl1

But it didn’t fix the problem.
I installed clinfo but it outputs this:

frank@wormwood-ubuntu:~/Downloads$ clinfo
Number of platforms 0

Doesn’t look promising, does it?!

I did have this going under Windows so I know the hardware is compatible.
Output from lspci is this:

frank@wormwood-ubuntu:~/Downloads$ lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers (rev 05)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x16) (rev 05)
00:01.1 PCI bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x8) (rev 05)
00:01.2 PCI bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x4) (rev 05)
00:14.0 USB controller: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller (rev 31)
00:15.0 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO I2C Controller #0 (rev 31)
00:16.0 Communication controller: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 (rev 31)
00:19.0 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO UART Controller #2 (rev 31)
00:1b.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #17 (rev f1)
00:1c.0 PCI bridge: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #1 (rev f1)
00:1e.0 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO UART #0 (rev 31)
00:1e.1 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO UART #1 (rev 31)
00:1e.2 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO GSPI #0 (rev 31)
00:1e.3 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Serial IO GSPI #1 (rev 31)
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H LPC Controller (rev 31)
00:1f.2 Memory controller: Intel Corporation 100 Series/C230 Series Chipset Family Power Management Controller (rev 31)
00:1f.3 Audio device: Intel Corporation 100 Series/C230 Series Chipset Family HD Audio Controller (rev 31)
00:1f.4 SMBus: Intel Corporation 100 Series/C230 Series Chipset Family SMBus (rev 31)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 460/560D / Pro 450/455/460/555/555X/560/560X] (rev c0)
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Baffin HDMI/DP Audio [Radeon RX 550 640SP / RX 560/560X]
02:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961
03:00.0 Network controller: Broadcom Inc. and subsidiaries BCM43602 802.11ac Wireless LAN SoC (rev 02)
04:00.0 PCI bridge: Intel Corporation DSL6540 Thunderbolt 3 Bridge [Alpine Ridge 4C 2015] (rev 02)
05:00.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
05:01.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
05:02.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
05:04.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
06:00.0 System peripheral: Intel Corporation JHL6540 Thunderbolt 3 NHI (C step) [Alpine Ridge 4C 2016] (rev 02)
07:00.0 USB controller: Intel Corporation JHL6540 Thunderbolt 3 USB Controller (C step) [Alpine Ridge 4C 2016] (rev 02)
7a:00.0 PCI bridge: Intel Corporation DSL6540 Thunderbolt 3 Bridge [Alpine Ridge 4C 2015] (rev 02)
7b:00.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
7b:01.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
7b:02.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
7b:04.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
7c:00.0 System peripheral: Intel Corporation JHL6540 Thunderbolt 3 NHI (C step) [Alpine Ridge 4C 2016] (rev 02)
7d:00.0 USB controller: Intel Corporation JHL6540 Thunderbolt 3 USB Controller (C step) [Alpine Ridge 4C 2016] (rev 02)

Hi Frank,

did you install intel-opencl-icd? In your previous post you wrote that you installed ocl-icd-libopencl1, which is still just the OpenCL dispatcher. intel-opencl-icd should allow you to use your CPU as the device for the RGBD reconstruction, and that’s usually sufficient. After installing this package, clinfo should report your CPU as an available OpenCL device.

Enabling OpenCL for the AMD GPU is more complicated (AMD linux support is improving rapidly, but not yet working out-of-the-box, especially for 18.04, in case you are using that).

P.S.: if you are using 18.04, you may have to install beignet-opencl-icd rather than intel-opencl-icd

Thanks Marco,
I am on Ubuntu 20, but installing intel-opencl-icd didn’t help either.
I ran:

sudo apt install intel-opencl-icd

But no effect, even after rebooting.

Apparently your Intel CPU has no integrated GPU; that’s interesting. So you’ll either have to use the Intel OpenCL runtime for CPUs, or the AMD OpenCL runtime for the GPU.

The second option looks easier: ROCm Installation — ROCm Documentation 1.0.0 documentation

I can’t find consistent documentation for the first one, but this may get you started: Intel CPU Runtime for OpenCL on Ubuntu 20.04 · Issue #1904 · intel/llvm · GitHub

Best,
Marco

Thanks Marco, much apprecaited!
I will keep trying and report back.

So far no luck with ROCm. I have tried tried installing the listed dependencies but I just get bigger lists of missing dependencies and have found no way to automatically install all dependencies (new to Ubuntu):

frank@wormwood-ubuntu:~/Downloads$ sudo apt install rocm-dkms
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 rocm-dkms : Depends: rocm-dev but it is not going to be installed
             Depends: rock-dkms but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
frank@wormwood-ubuntu:~/Downloads$ sudo apt install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
frank@wormwood-ubuntu:~/Downloads$

Heads up, I gave up on this and bought a windows license :frowning: