Last December, I have managed to see how 3D rendering is done with CUDA on Windows and WSL2.
It turned out that Windows 10 outperformed WSL2 (running Fedora 33). To follow up, I recently made the same test to see how it performs both on Fedora 34 and Toolbox (built on top of Podman).
Using the same machine as the previous,
$ cat /etc/os-release NAME=Fedora VERSION="34 (Workstation Edition)" ID=fedora VERSION_ID=34 VERSION_CODENAME="" PLATFORM_ID="platform:f34" PRETTY_NAME="Fedora 34 (Workstation Edition)" ... $ cat /proc/driver/nvidia/version NVRM version: NVIDIA UNIX x86_64 Kernel Module 465.31 Thu May 13 22:24:36 UTC 2021 GCC version: gcc version 11.1.1 20210531 (Red Hat 11.1.1-3) (GCC) $ podman --version podman version 3.2.1 $ toolbox --version toolbox version 0.0.99.1 $ ./blender --version Blender 3.0.0 Alpha build date: 2021-06-13 build time: 00:44:59 build commit date: 2021-06-12 build commit time: 03:00 build hash: 7b0c8097a7d1 build platform: Linux build type: release ...
Fedora on the left, while on the right, Toolbox.
$ ./blender -b bmw27_gpu.blend -o . -F PNG -f -1 -noaudio -- --cycles-device CUDA --cycles-print-stats ... Profiling information not available (only works with CPU rendering) Fra:1000 Mem:41.28M (Peak 301.66M) | Time:04:47.81 | Compositing Fra:1000 Mem:45.20M (Peak 301.66M) | Time:04:47.81 | Compositing | Determining resolution Fra:1000 Mem:45.20M (Peak 301.66M) | Time:04:47.81 | Compositing | Initializing execution Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.13 | Compositing | Tile 1-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.14 | Compositing | Tile 2-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.15 | Compositing | Tile 3-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.15 | Compositing | Tile 4-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.17 | Compositing | Tile 5-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.19 | Compositing | Tile 6-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.20 | Compositing | Tile 7-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.20 | Compositing | Tile 8-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.20 | Compositing | Tile 9-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.21 | Compositing | Tile 10-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.21 | Compositing | Tile 11-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:48.21 | Compositing | Tile 12-12 Fra:1000 Mem:88.72M (Peak 301.66M) | Time:04:48.21 | Compositing | De-initializing execution Saved: '.1000.png' Time: 04:49.34 (Saving: 00:01.12)
$ ./blender -b bmw27_gpu.blend -o . -F PNG -f -1 -noaudio -- --cycles-device CUDA --cycles-print-stats ... Profiling information not available (only works with CPU rendering) Fra:1000 Mem:41.29M (Peak 301.66M) | Time:04:46.35 | Compositing Fra:1000 Mem:45.20M (Peak 301.66M) | Time:04:46.36 | Compositing | Determining resolution Fra:1000 Mem:45.20M (Peak 301.66M) | Time:04:46.36 | Compositing | Initializing execution Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.67 | Compositing | Tile 1-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.69 | Compositing | Tile 2-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.69 | Compositing | Tile 3-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.69 | Compositing | Tile 4-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.72 | Compositing | Tile 5-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.73 | Compositing | Tile 6-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.73 | Compositing | Tile 7-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.73 | Compositing | Tile 8-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.73 | Compositing | Tile 9-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.73 | Compositing | Tile 10-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.73 | Compositing | Tile 11-12 Fra:1000 Mem:88.78M (Peak 301.66M) | Time:04:46.74 | Compositing | Tile 12-12 Fra:1000 Mem:88.72M (Peak 301.66M) | Time:04:46.74 | Compositing | De-initializing execution Saved: '.1000.png' Time: 04:47.86 (Saving: 00:01.12)
Whoops, I got to realise after running those tests that I had CUDA installed for both from different sources, although I used the same source for the NVidia driver;
$ dnf list installed | grep nvidia akmod-nvidia.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates kmod-nvidia-5.12.10-300.fc34.x86_64.x86_64 3:465.31-1.fc34 @@commandline kmod-nvidia-5.12.11-300.fc34.x86_64.x86_64 3:465.31-1.fc34 @@commandline kmod-nvidia-5.12.12-300.fc34.x86_64.x86_64 3:465.31-1.fc34 @@commandline nvidia-persistenced.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates nvidia-settings.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-cuda.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-cuda-libs.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-kmodsrc.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-libs.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates $ dnf list installed | grep cuda cuda.x86_64 11.3.1-1 @cuda-fedora33-x86_64 cuda-11-3.x86_64 11.3.1-1 @cuda-fedora33-x86_64 ... cuda-toolkit-11-3.x86_64 11.3.1-1 @cuda-fedora33-x86_64 cuda-toolkit-11-3-config-common.noarch 11.3.109-1 @cuda-fedora33-x86_64 cuda-toolkit-11-config-common.noarch 11.3.109-1 @cuda-fedora33-x86_64 cuda-toolkit-config-common.noarch 11.3.109-1 @cuda-fedora33-x86_64 cuda-tools-11-3.x86_64 11.3.1-1 @cuda-fedora33-x86_64 ... xorg-x11-drv-nvidia-cuda.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-cuda-libs.x86_64 3:465.31-1.fc34
$ dnf list installed | grep nvidia akmod-nvidia.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates nvidia-persistenced.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates nvidia-settings.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates nvidia-texture-tools.x86_64 2.1.2-1.fc34 @fedora xorg-x11-drv-nvidia.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-cuda.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-cuda-libs.i686 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-cuda-libs.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-kmodsrc.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-libs.i686 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-libs.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates $ dnf list installed | grep cuda xorg-x11-drv-nvidia-cuda.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-cuda-libs.i686 3:465.31-1.fc34 @rpmfusion-nonfree-updates xorg-x11-drv-nvidia-cuda-libs.x86_64 3:465.31-1.fc34 @rpmfusion-nonfree-updates
But you got the point! That is why I have been running Steam in Toolbox instead. Holy moly!