LINUX.ORG.RU

нехватка ram для жирных пакетов

 , ,


0

1

Привет всем, использую генту, 16gb и zram 4gb сжатие zstd, zram-init за это все отвечает, но к сожалению уже и этого не хватает а использовать для сборки nvme как то не особо хочется

  1. поможет ли мне смена сжатие с zstd на более мощное

2)в zram-init не вижу флаг где можно увеличить либо уменьшить степень сжатие(или оно не влияет)

  1. если 1 вопрос да поможет то как мне сделать второй слот zram с этим сжатием чтобы он сработал после заполнение первого слота более быстром сжатием

  2. сильно не бейте плиз

P.s. покупка больше плашок или HDD не имеется возможно

P.s.s как выглядит сейчас

load_on_start="yes"

unload_on_stop="yes"

num_devices="2"

type0=swap
size0=$(( 1024 * 4 ))
maxs0=4
algo0=zstd level=19
labl0=zram_swap
cat /etc/fstab
#boot
UUID=4848-C9DD                            /efi        		vfat  defaults		0 2
#/efi/EFI/gentoo 			 /boot 		none  defaults,bind 	0 0

#system
UUID=0be087b8-ca5d-4e19-b12e-84af41c0e631 /                	btrfs compress=zstd:1,defaults,noatime,discard=async,autodefrag,subvol=/@ 0 0
UUID=6a25019e-9a20-43fb-8e81-9708cfb36219 /mnt/disk2 		btrfs compress=zstd:1,defaults,noatime,discard=async,autodefrag,auto 0 0

#tmps
tmpfs					 /var/tmp/portage tmpfs size=14G,uid=portage,gid=portage,mode=775,nosuid,noatime,nodev 0 0
tmpfs 					 /tmp 		  tmpfs rw,nosuid,noatime,nodev,size=4G,mode=1777 0 0
tmpfs                                     /run             tmpfs size=100M
★★

Последнее исправление: SPRATAY (всего исправлений: 3)
Ответ на: комментарий от SPRATAY

Я писал выше что любой параметр родительского каталога Игнорирует другие параметры подтома или дериктории, это даже написано в мануале btrfs

С опциями монтирования есть нюансы, но можно указать сжатие или nocow для конкретной директории/сабволума.

altwazar ★★★★
()
Последнее исправление: altwazar (всего исправлений: 1)
Ответ на: комментарий от kirill_rrr

Только не btrfs, она как раз будет много срать на диск и требовать сборки мусора если я правильно понимаю. Вроде ещё где то сжатие было, если в f2fs то просто идеально.

Запустил тесты на день, форматировал один nvme диск, монтировал в /var/tmp/portage, проверял данные смарта и собирал хромиум:

ext4: записано 101211 (52.62972 Gb), 184 минуты компиляция

f2fs (типа zstd:3): 74989 (38.99428 Gb), 183 минуты компиляция

xfs: записано 71359 (37.10668 Gb), 183 минуты компиляция

btrfs: записано 78739 (40.94428 Gb), 184 минуты компиляция

btrfs (zstd:3): записано 47078 (24.48056 Gb), 184 минуты компиляция

Проверял с дефолтными опциями монтирования. По времени погрешность плюс минус минута, не замерял секунды, не ожидал, что результат будет на столько одинаковый.

С f2fs странно, два раза пробовал с разными опциями монтирования, так и не понял, что с ней не так. Плюс она отжирает еще ~100mb оперативки сразу при монтировании. Создавал с -O extra_attr,compression и монтировал с -o compress_algorithm=zstd:3, но эффекта от компрессии в смарт логах накопителя не вижу.

altwazar ★★★★
()
Ответ на: комментарий от altwazar

А что за параметр записано 101211?

Возможно в f2fs сжатие ещё недореализовано, ядром или утилитами системы. Я где то видел что такое вроде бы есть, но с какими то нюансами и вчера яндекс про сжатие в f2fs вообще ничего не знал.

У ехт4 аномалия. Всякие noatime и прочие оптимизции под ссд включены? Возможно стоит прогнать тест ещё и с ext2 без журнала?

kirill_rrr ★★★★★
()
Ответ на: комментарий от SPRATAY

С аномалиями не сталкивался, nocow и компрессия задается для отдельных файлов/директорий/сабволумов(не через mount) нормально. Только nocow и компрессия - взаимоисключающие вещи.

altwazar ★★★★
()
Ответ на: комментарий от altwazar

я это привел в пример а так вот

UUID=0be087b8-ca5d-4e19-b12e-84af41c0e631 /var/tmp/notmpfs      btrfs compress=zstd:10,uid=portage,gid=portage,mode=775,nosuid,noatime,nodev,nodiscard,subvol=/var/tmp/notmpfs 0 0

самое главное тут это nodiscard

SPRATAY ★★
() автор топика
Ответ на: комментарий от SPRATAY

Не вижу особо смысла там nodiscard делать, но это не важно. Полезен может оказаться noatime, но, думаю, что эффект даже замерить сложно будет. Проще компрессию добавить на директорию /var/tmp/notmpfs и не ломать голову.

altwazar ★★★★
()
Ответ на: комментарий от kirill_rrr

У ехт4 аномалия. Всякие noatime и прочие оптимизции под ссд включены?

Сделал с noatime: 103471 (53.80492 Gb), 183 минуты компиляция

Похоже погрешность существенно выше (хотя я и использую отдельный диск для тестов под /var/tmp/portage, чтобы меньше переменных было).

altwazar ★★★★
()
Ответ на: комментарий от LongLiveUbuntu
cat /etc/portage/make.conf
COMMON_FLAGS="-march=znver3 -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"
CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3"
MAKEOPTS="--jobs 6 --load-average 7"
EMERGE_DEFAULT_OPTS="-av"
# NOTE: This stage was built with the bindist Use flag enabled
# This sets the language of build output to English.
# Please keep this setting intact when reporting bugs.
LC_MESSAGES=C.utf8

INPUT_DEVICES="libinput synaptics"

USE="-daemon"
USE="${USE} lto pgo native-extensions"
USE="${USE} X wayland"
USE="${USE} networkmanager wifi bluetooth"
USE="${USE} elogind udev dbus"
USE="${USE} policykit udisks"
USE="${USE} vulkan opengl opencl"
USE="${USE} pipewire pulseaudio sound-server"
USE="${USE} x264 vaapi x265 openh264"
USE="${USE} screencast v4l"
USE="${USE} usb usbredir spice"
USE="${USE} lm-sensors zstd zsh-completion deprecated system-png"
USE="${USE} -secureboot -initramfs dist-kernel modules-sign dracut uki ukify boot kernel-install efistub -grub"
USE="${USE} "


GENTOO_MIRRORS="
https://mirror.yandex.ru/gentoo-distfiles/
https://gentoo-mirror.alexxy.name/
"

VIDEO_CARDS="amdgpu radeon radeonsi"

LINGUAS="ru"
L10N="ru"


# Optionally, to use custom signing keys.
#MODULES_SIGN_KEY="/home/spratay/securekey/gentoo/kernel_key.pem"
#MODULES_SIGN_CERT="/home/spratay/securekey/gentoo/kernel_key.pem" # Only required if the MODULES_SIGN_KEY does not also contain the certificate.
#MODULES_SIGN_HASH="sha512" # Defaults to sha512

# Optionally, to boot with secureboot enabled, may be the same or different signing key.
#SECUREBOOT_SIGN_KEY="/home/spratay/securekey/gentoo/kernel_key.pem"
#SECUREBOOT_SIGN_CERT="/home/spratay/securekey/gentoo/kernel_key.pem"
SPRATAY ★★
() автор топика