Hello everyone,
I’ve been fighting and struggling big time to get my 3090 in my Razer Core X Chroma working… at all in Manjaro. Works perfect in Windows 11. So as I’ve been trying to work through roadblock after roadblock, I figured I’d just write everything down with the end goal being a decent guide for everyone else. Hopefully. Otherwise it’ll end up a bunch of random thoughts. XD
Update: I now have it working.
inxi -G
Graphics:
Device-1: Intel Alder Lake-P Integrated Graphics driver: i915 v: kernel
Device-2: NVIDIA GA102 [GeForce RTX 3090] driver: nvidia v: 515.76
Device-3: Realtek Laptop Camera type: USB driver: uvcvideo
Display: x11 server: X.org v: 1.21.1.4 with: Xwayland v: 22.1.3 driver:
X: loaded: modesetting,nvidia unloaded: nouveau gpu: i915 resolution:
1: 1920x1080~144Hz 2: 2256x1504~60Hz
OpenGL: renderer: Mesa Intel Graphics (ADL GT2) v: 4.6 Mesa 22.1.7
nvidia-smi
Wed Sep 28 10:55:12 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.76 Driver Version: 515.76 CUDA Version: 11.7 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:7F:00.0 On | N/A |
| 0% 54C P8 42W / 420W | 46MiB / 24576MiB | 23% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1761 G /usr/lib/Xorg 45MiB |
+-----------------------------------------------------------------------------+
NVIDIA Open Drivers
For some reason using the normal proprietary drivers would never work and led to just black screens all the time. The only way I could get the NVIDIA GPU to work was to use the nvidia-open drivers as suggested by @Mapleleaf.
In Manjaro, they are not officially supported yet however you can find them in Gitlab. There are two packages that you need to install:
- nvidia-open-dkms
- nvidia-utils
These can be built / installed just like they are AUR packages.
Kernel 5.18+
As the 12th generation processor works better on kernels later than 5.18, I’m currently running 5.19. Every time I would install the Nvidia drivers, I would reboot and then get a black screen unable to switch TTYs. If I booted to run-level 3 and executed inxi -G
the driver for the Nvidia GPU would say “NA”.
This issue came down to something called Intel’s Indirect Branching Tracking. This feature only exists starting with kernel 5.18. Kernels before will not have this issue. The other way to fix this issue is by disabling this feature in the kernel with ibt=off
.
This is not needed if using the nvidia-open
drivers.
This solution was found on forum.manjaro.org.
Wayland
For lots of reasons, I prefer Wayland. I was a bit confused when I tried to boot with the Nvidia driver only to find Wayland was unavailable. As it turns out GDM’s udev rules disable wayland if certain criteria is met, some of which include the Nvidia driver. You can modify the /usr/lib/udev/rules.d/61-gdm.rules
and still allow Wayland to start.
It should be noted that where I found this solution also mentioned needing to include the nvidia-drm.modeset=1
kernel parameter. I am not sure if this is still needed or not.
This solution was found on medium.com.
So while this is possible, I probably do not recommend this yet. I tried it and the performance wasn’t great. Normally with my favorite valley benchmark, the 3090 gets 200+ FPS. However, running under Wayland (which already is a bit jerky just on the desktop) was only getting 30-40 FPS.
Razor Core X Chroma
The unit comes with multiple USB ports and a built-in 1GB NIC. For me, the USB ports had always worked without issue. The NIC though would only be sometime detected. The trick seems to be to leave it unplugged until GRUB loads and plug it in then. That made Manjaro see the NIC and allowed me to use it.
It should be noted that the card I bought needed 3 8-pin power cables and the unit only comes with 2. I bought an upgraded modular power supply as well as an extra cable kit to get 3 dedicated cables for the 8-pin connectors. This required me to either make / buy a bracket so that I could put in the new PSU and a more quiet fan.