[Solved, lol] Aesthetic question, ram management issue


#1

hi all,
1: I installed the latest version of Archlabs on a new AMD Ryzen 5 - 8gb ram machine, and Nvidia+Radeon graphic cards, it turns out that until I run the “startx” command, I have a lower resolution than when i3 is charging. How to remedy this? :thinking: (I use the Nvidia card for now).
2: And for the management of the ram, when I run htop, I can see that only 7gb are taken into account. Where is the missing gb? :cry:
Perhaps it is reserved for something else? thx in advance.


#2

Sounds like kernel mode setting is not enabled, see this guide for NVIDIA cards.

Early KMS start is also a possibility: https://wiki.archlinux.org/index.php/Kernel_mode_setting#Early_KMS_start

In respect of your RAM issues, what is the output of

free -h
grep 'Mem\|Cache\|Swap' /proc/meminfo

#3

free -h
total used free shared buff/cache available
Mem: 6.8Gi 785Mi 4.9Gi 73Mi 1.1Gi 5.7Gi
Swap: 8.0Gi 0B 8.0Gi

grep ‘Mem|Cache|Swap’ /proc/meminfo
MemTotal: 7107492 kB
MemFree: 5202864 kB
MemAvailable: 6006724 kB
Cached: 1018216 kB
SwapCached: 0 kB
SwapTotal: 8388604 kB
SwapFree: 8388604 kB


#4

Installed driver nvidia-390xx 390.87-29

I have also set in mkinitcpio.conf

MODULES=(nvidia sd_mod ahci ext4)


#5

Looks like your firmware (“BIOS”) may be reserving some memory, the kernel will also take a small amount (but not a gigabyte).

You could trawl through dmesg, that should record what the kernel is doing with memory allocation.


#6

Have you tried adding nvidia-drm.modeset=1 as a kernel parameter (as suggested in my link)?

The resolution can be forced: https://wiki.archlinux.org/index.php/Kernel_mode_setting#Forcing_modes_and_EDID


#7

So do I have to run sysctl -p nvidia-drm.modset=1 ?
I’m a bit scared touching those kernel things…
Or maybe should I set this GRUB_GFXMODE=1920x1080 in /etc/default/grub ?


#8

No, you need to add a kernel command line parameter using the bootloader.

For GRUB, add the parameter between the quotation marks on the GRUB_CMDLINE_LINUX line in /etc/default/grub then save the file and update the configuration with

grub-mkconfig -o /boot/grub/grub.cfg

This method was linked from the ArchWiki page, @Alad has made it into a tv-tropes style link-fest :slight_smile:


#9

It seems to be active, but same resolution diff

Hardware Class: graphics card
Model: “nVidia GP107 [GeForce GTX 1050]”
Vendor: pci 0x10de “nVidia Corporation”
Device: pci 0x1c81 “GP107 [GeForce GTX 1050]”
SubVendor: pci 0x103c “Hewlett-Packard Company”
SubDevice: pci 0x8338
Revision: 0xa1
Driver: “nvidia”
Driver Modules: “nvidia”
Memory Range: 0xf6000000-0xf6ffffff (rw,non-prefetchable)
Memory Range: 0xc0000000-0xcfffffff (ro,non-prefetchable)
Memory Range: 0xd0000000-0xd1ffffff (ro,non-prefetchable)
I/O Ports: 0xf000-0xf07f (rw)
Memory Range: 0xf7000000-0xf707ffff (ro,non-prefetchable,disabled)
IRQ: 68 (88388 events)
Module Alias: “pci:v000010DEd00001C81sv0000103Csd00008338bc03sc00i00”
Driver Info #0:
Driver Status: nouveau is not active
Driver Activation Cmd: “modprobe nouveau”
Driver Info #1:
Driver Status: nvidia_drm is active
Driver Activation Cmd: “modprobe nvidia_drm”
Driver Info #2:
Driver Status: nvidia is active
Driver Activation Cmd: “modprobe nvidia”
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #27 (PCI bridge)


#10

What is the output of

cat /proc/cmdline

^ This will show the applied kernel command line parameters.


#11

@Head_on_a_Stick
cat /proc/cmdline
BOOT IMAGE=/boot/vmlinuz root=UUID=fdff1b1b13-f81c-4000-8b6c-57f88be2ba8 rw nvidia-drm-modset=1


#12

Ah, I’ve just read the (rather prominent) note on the ArchWIki page for kernel mode setting:

So it looks like you need to use nouveau to get a high resolution console screen.


#13

To bad, anyway thanks again, I 'll go with that un-Aesthetic mode hahaha :sweat_smile:
Sorry cause I’m not a native english man and you took time to read thoses articles for me, so I’m greatfull. I will be happy to help if one day you need.
I finaly got rid of the nvidia-390xx driver, I’m not a gamer and nouveau does the job.