Sub-Optimal FPS in Skyrim

Hello.
I booted up Skyrim after doing a fresh install of KDE Dragonized Gaming Edition and I noticed that I'm only getting around half the performance that I would get on Windows 10. My output from inxi -Faz is;

System:    Kernel: 5.14.12-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.1.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen root=UUID=0e5eee11-92ba-4cd6-9333-4d8024cbaa4a
rw [email protected] quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
systemd.unified_cgroup_hierarchy=1 loglevel=3 nouveau.modeset=0
Desktop: KDE Plasma 5.23.0 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11 vt: 1 dm: SDDM
Distro: Garuda Linux base: Arch Linux
Machine:   Type: Desktop System: Dell product: OptiPlex 9020 v: 01 serial: <filter> Chassis: type: 15
serial: <filter>
Mobo: Dell model: 00V62H v: A01 serial: <filter> UEFI: Dell v: A12 date: 05/06/2015
CPU:       Info: Quad Core model: Intel Core i5-4590 bits: 64 type: MCP arch: Haswell family: 6
model-id: 3C (60) stepping: 3 microcode: 28 cache: L2: 6 MiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 26339
Speed: 3293 MHz min/max: 800/3700 MHz Core speeds (MHz): 1: 3293 2: 3292 3: 3292 4: 3292
Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled
Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT disabled
Type: mds mitigation: Clear CPU buffers; SMT disabled
Type: meltdown mitigation: PTI
Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp
Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: disabled, RSB filling
Type: srbds mitigation: Microcode
Type: tsx_async_abort status: Not affected
Graphics:  Device-1: NVIDIA GM107 [GeForce GTX 750 Ti] vendor: Micro-Star MSI driver: nvidia v: 470.74
alternate: nouveau,nvidia_drm bus-ID: 02:00.0 chip-ID: 10de:1380 class-ID: 0300
Display: x11 server: X.Org 1.20.13 compositor: kwin_x11 driver: loaded: nvidia
unloaded: modesetting alternate: fbdev,nouveau,nv,vesa display-ID: :0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 101 s-size: 483x272mm (19.0x10.7") s-diag: 554mm (21.8")
Monitor-1: HDMI-0 res: 1920x1080 hz: 75 dpi: 102 size: 476x268mm (18.7x10.6")
diag: 546mm (21.5")
OpenGL: renderer: NVIDIA GeForce GTX 750 Ti/PCIe/SSE2 v: 4.6.0 NVIDIA 470.74 direct render: Yes
Audio:     Device-1: Intel 8 Series/C220 Series High Definition Audio vendor: Dell driver: snd_hda_intel
v: kernel bus-ID: 00:1b.0 chip-ID: 8086:8c20 class-ID: 0403
Device-2: NVIDIA GM107 High Definition Audio [GeForce 940MX] vendor: Micro-Star MSI
driver: snd_hda_intel v: kernel bus-ID: 02:00.1 chip-ID: 10de:0fbc class-ID: 0403
Device-3: Kingston HyperX 7.1 Audio type: USB driver: hid-generic,snd-usb-audio,usbhid
bus-ID: 1-1.5:4 chip-ID: 0951:16a4 class-ID: 0300 serial: <filter>
Sound Server-1: ALSA v: k5.14.12-zen1-1-zen running: yes
Sound Server-2: JACK v: 1.9.19 running: no
Sound Server-3: PulseAudio v: 15.0 running: no
Sound Server-4: PipeWire v: 0.3.38 running: yes
Network:   Device-1: Intel Ethernet I217-LM vendor: Dell driver: e1000e v: kernel port: f040
bus-ID: 00:19.0 chip-ID: 8086:153a class-ID: 0200
IF: eno1 state: down mac: <filter>
Device-2: TP-Link Archer T2U PLUS [RTL8821AU] type: USB driver: rtl88XXau bus-ID: 1-1.3:3
chip-ID: 2357:0120 class-ID: 0000 serial: <filter>
IF: wlp0s26u1u3 state: up mac: <filter>
Drives:    Local Storage: total: 476.94 GiB used: 70.2 GiB (14.7%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/sda maj-min: 8:0 vendor: Kingfast model: N/A size: 476.94 GiB block-size:
physical: 512 B logical: 512 B speed: 6.0 Gb/s type: SSD serial: <filter> rev: 7B0 scheme: GPT
Partition: ID-1: / raw-size: 476.68 GiB size: 476.68 GiB (100.00%) used: 70.2 GiB (14.7%) fs: btrfs
dev: /dev/sda2 maj-min: 8:2
ID-2: /boot/efi raw-size: 260 MiB size: 256 MiB (98.45%) used: 562 KiB (0.2%) fs: vfat
dev: /dev/sda1 maj-min: 8:1
ID-3: /home raw-size: 476.68 GiB size: 476.68 GiB (100.00%) used: 70.2 GiB (14.7%) fs: btrfs
dev: /dev/sda2 maj-min: 8:2
ID-4: /var/log raw-size: 476.68 GiB size: 476.68 GiB (100.00%) used: 70.2 GiB (14.7%) fs: btrfs
dev: /dev/sda2 maj-min: 8:2
ID-5: /var/tmp raw-size: 476.68 GiB size: 476.68 GiB (100.00%) used: 70.2 GiB (14.7%) fs: btrfs
dev: /dev/sda2 maj-min: 8:2
Swap:      Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 15.57 GiB used: 2.2 MiB (0.0%) priority: 100 dev: /dev/zram0
Sensors:   System Temperatures: cpu: 29.8 C mobo: 27.8 C gpu: nvidia temp: 43 C
Fan Speeds (RPM): N/A gpu: nvidia fan: 34%
Info:      Processes: 232 Uptime: 17m wakeups: 0 Memory: 15.57 GiB used: 4.01 GiB (25.8%) Init: systemd
v: 249 tool: systemctl Compilers: gcc: 11.1.0 clang: 12.0.1 Packages: pacman: 1706 lib: 493
Shell: fish v: 3.3.1 default: Bash v: 5.1.8 running-in: konsole inxi: 3.3.07

Some things I have already tried is to install the NVIDIA drivers as it says in the Arch Wiki, by using

sudo pacman -S nvidia

https://wiki.archlinux.org/title/NVIDIA#Installation
Is there anything else I can do? I was able to get up to 60 FPS when I was using Pop!_OS so I know it is possible to get better performance, however I admit I'm still fairly inexperienced with Linux so I'm not sure what is left to be done.

What FPS are you currently getting?

Usually around 30 FPS in more open areas like the wilderness, if I go into a less intensive place like an inn or shop I get around 45.
I'm using low settings which is what I used on Windows and Pop.

Are you using equivalent settings?

What are you using to run Skyrim?

I'm using Steam native with Proton 6.3-7 as well as

WINEDLLOVERRIDES="xaudio2_7=n,b" %command%

as a launch option

It looks like there's a mix of success on https://www.protondb.com/app/72850 so it will be worth reading through the reports and e.g. trying different Proton versions. Newer is not always better (especially for older games) but you can also try Proton-GE (in Chaotic-AUR and the AUR) which has a number of tweaks over Valve's Proton (just be careful of the prefix changes with and after 6.15-GE).

I played around with using different versions of Proton, those being 6.29-GE-2, 5.13-6, and Experimental and so far none of them have made a difference, and the game didn't start at all using 5.13-6. I feel like this might be a driver issue, do you think there could be any settings I could play around with?

I'd first make sure whether compositing makes a difference (i.e. disable it then run the game).

How would I disable compositing? I found an option in system settings to disable it in startup though I'm not sure that would help, unless I'm supposed to restart my PC.

I don't run KDE, but it's in the KDE settings.

Doesn't seem to do much, it may have made a slight improvement of +2-3 FPS on average but it still isn't as good as it could be.