tumbleweed with amd/nvidia laptop

Just bought a laptop with AMD + nvidia 1650; this is how I got it working.The goal is to use the nvidia card for photogrammetry and rendering,in this case with meshroom and blender.

This particularlaptop is an Asus TUF FX705DT, less than a grand even with the extramemory stick you’ll buy because it only comes with 8GB. In addition tothe “optimus” configuration because AMD’s Ryzen CPU has abuilt-in Vega GPU, this laptop has a realtek wifi adapter(rtl8821ce). Thank you Sauerland for providing the driver in thisrepo:

https://download.opensuse.org/repositories/home:/Sauerland:/hardware/openSUSE_Tumbleweed/
E

vidently, the wifidriver doesn’t work with a kernel later than 5.6.2, which zypperkindly installs. What it doesn’t install is kernel-default-devel,so be sure to grab it. For those unfamiliar, the way to do this inYaST Software is to search for the package, click on the versions tabwhere you’ll see whatever’s most current installed, but in thiscase also select version 5.6.2.

With the communityrepository for nvidia drivers enabled, selecting suse-primeautomatically brings in the drivers as dependencies. You’ll have toreboot before you can run “prime-select nvidia” and then rebootagain before the card’s actually enabled. This utility assumes anintel cpu with integrated gpu, but you can’t run “prime-selectintel” so to switch back use “prime-select unset” instead.

The opensuse blenderpackage doesn’t seem to detect the nvidia card, so download the binary from theblender website and unzip it into /opt. Okay, technically it doesn’thave to go there, but when you download a binary like this, yourpackage manager (zypper) is unaware, so the opt directory isconvenient to put such things all in one place. I did the same withMeshroom and created launchers for both with KDE’s menu editor.

I’m not sure ifCUDA is necessary for Meshroom to work because I installed it first,and here’s how to do that. First, install gcc7 alongside thecurrent version. Tumbleweed isn’t supported by nvidia’s CUDA repo, so use the runfile as explained here:

https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=OpenSUSE&target_version=15&target_type=runfilelocal

At this time, itsinstructions are as follows:

$ wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run

$ sudo sh cuda_10.2.89_440.33.01_linux.run

But you have to make a slight change:

$ sudo sh cuda_10.2.89_440.33.01_linux.run –override

Remember how I said to install gcc7? Even though it’s there, the fact that a newer version is also there confuses the script, and the override switch skips the version check.

Once you get to the setup screen, deselect driver installation. I couldn’t get suse-prime to work with the driver version it installed.

How well does CUDS work? I don’t know enough yet to put it through it’s paces; all I’m doing here is aggregating advice I found elsewhere. I did run meshroom, though, and while the finished product was disappointing, there was a finish. All I did was select the file full of images and hit start, didn’t play with any parameters.

By the way, I got better and faster results with 3DF Zephyr Free, without using a gpu. That’s a windows program that works great under wine as described by 3DF here:

https://www.3dflow.net/running-3df-zephyr-gnulinux-using-wine/

I didn’t get bumblebee working, and I’m not too worried about it, for suse-prime suits my use case, and besides, the thing doesn’t seem to run hot or drain fast with the nvidia enabled if I’m not rendering.

I’m sure the community and some future User thanks you for posting your thoughts and experience setting up.

As of this writing, although I haven’t checked I’m pretty sure that no kernel later than 5.6 is available. In fact, Linus Torvalds announced only a few days ago closing what will be included in kernel 5.7.

AFAIK you are supposed to choose either suse-prime or bumblebee to set up and configure your alternate nVidia GPU, not both. Since you have set up successfully with suse-prime, you should be fine for anything you want to do.

TSU

Hi
Bumblebee is on the way out, prime offloading is the way forward AFAIK… See this ML thread (as well as some additional tweaks);
https://lists.opensuse.org/opensuse-factory/2020-04/msg00091.html
https://lists.opensuse.org/opensuse-factory/2020-04/msg00224.html (for nvidia offload script)

Hi,
The latest cuda driver doesn’t work with the latest blender from tumbleweed,
the last time I check. However the blender from the blender site doesn’t need cuda to be installed
it will detect your nvidia card like what happened to your machine.
It could be meshroom need an older cuda to work, there is an older cuda in the nvidia site.

Hi Conram, sorry if I wasn’t clear: Meshroom works. (But now that I’ve seen it work, I know that I’ve much to learn before I get a model that looks like the thing I took pictures of.) -GEF

I hope so, TSU. Most of my interaction wth other linux users is time-spanning, as I have a question today that they answered months or years ago, on dead threads where I can’t even say thanks. So whenever I answer one on my own, or assemble an answer from pieces found in different places, I think about posting it in a searchable location for the next guy in the same boat.

From where I sit, which is in different places but always within 6’ of a power outlet when I’m using my laptop, the case for GPU switching has never been compelling.

Zypper briefly added 5.7, then replaced it with 5.6.4, which still broke my wifi, but a day later wifi works on 5.6.4. At some point in the future, the kernel versions will be different, of course, but as I understand it, realtek and nvidia drivers aren’t going into the kernel anytime soon, so the possibility that one or both will be incompatible with the latest update in a rolling release will be ever present.

In original post, I said I was disappointed with Meshroom (using gpu accel) compared to 3DF Zephyr (under wine and without gpu). That’s because I’m an idiot. Meshoom has a detail slider, and it’s set to modest detail so it doesn’t slow down the calculations while you watch, but when the model is complete, you cn slide up to high detail and it looks great.