servemoria nel giorno della RAM

servemoria nel giorno della RAM

Oggi è il “Giorno della Memoria“… e, visto che ho la memoria mentale per ricordarmi di ciò, mi sono ricordata che sarebbe il caso di parlare, appunto, proprio di memoria#Memoria computazionale, si intende! La roba de’ calcolatori informatici che tanto bene mi fanno NON dormire la notte, perché non funziona mai bene nulla, e allora mai riesco a fare quello che mi serve… 💔

Vabbè, semplicemente riflettevo su come è particolare che il mio server casalingo sia tipo l’unico mio computer che funziona bene, nonostante la configurazione particolare e discutibile per quanto riguarda la memoria, a differenza di quasi tutto il resto dei dispositivi — la quale maggior parte mi da noia, ironia della sorte, per motivi di memoria, ma in quel caso memoria di archiviazione; e stasera non voglio parlare di quelli, perché non mi va di incazzarmi ancora di più. 😾

Terminale htop, 5.43/7.64 GB RAM, 5.77/6.77 GB swap
Messaggi:
> il mio server è forte, non rallenta mai per richiestine
> nonostante memoria di swap e zram
>> Ma tanto non hai saturato 16GB, no? xd
> è 8 GB RAM il servero
>> Mi ricordavo che avessi SEDICI
> 16 il PC fisso
> con swap e zram si arriva a 15 totale
>> Quasi tutto pieno
> e finora SSD non ha dato rogne per lo swap, ma quando le darà sarà comunque più economico sostituire tutto esso (pure con uno più capiente, magari) che comprare più RAM!

Qualche mese fa, avendo attivato l’hosting di cose nuove, anche se nulla di grosso, la RAM è di punto in bianco iniziata a non bastare più… e stava quasi per partire la memoria del Rasperino Vietnam, iniziando a vedere non solo servizi che venivano killati o rallentavano, ma proprio tutto il sistema che non rispondeva più a niente per intere ore (…o fino a un riavvio hardware), per via della RAM completamente satura. 🗡️

Rimane un mistero come facessi a ospitare tutta la mia roba su 1 GB di memoria, ai tempi immemori del Raspberry (appena 1 anno e mezzo fa), ma le mie magie non vanno avanti a congetture, e quindi comunque una soluzione dovevo trovarla rapidamente… E per fortuna, me lo ricordo perfettamente, la trovai, a costo di distrarmi malissimo dalle lezioni in corso all’università quel pomeriggio… oh peccato. Purtroppo, volevo valutarla qualche giorno prima di condividerla, ma passati i pochi giorni mi scordai (che novità). 👻

Allora, insomma, la soluzione è banale, quindi la sua scoperta è lasciata ai lettor— STO SCHERZANDO!!! Se mai dovessi fare come i professori di matematica, vi autorizzo ad attentare alla mia vita, Mangione-style, ma non è questo il giorno. La soluzione è banale, sta nella combinazione di:

  • memoria di swap (che già avevo), configurata da un lato dal setup automatico di Debian quando configurai inizialmente il computer, e dall’altro semplicemente installando il pacchetto dphys-swapfile (che su altre distro o mancherà, ops) e attivando il servizio omonimo (se non lo fa da solo)… e nel mio caso questo ammonta a circa 1 + 2 GB di swap 🧨
  • z-ram (memoria Z), configurata installando il pacco systemd-zram-generator… dovrebbe attivarsi da solo il servizio (altrimenti basta riavviare e fanculo), concedendo di default circa 4 GB di z-ram
  • opzione del kernel vm.swappiness alta, nel mio caso vm.swappiness=160 (su massimo 200)… altrimenti swap e z-ram non si riempiono mai abbastanza e abbastanza in fretta da non far scattare il killer out-of-memory 🎇

Su un desktop, questa stessa #configurazione, viste le metriche di utilizzo in figura, renderebbe tutto insopportabilmente lento, e anche solo una cartella sul disco ci metterebbe svariati secondi ad aprirsi, i click non farrebbero alcun effetto, l’audio parrebbe riprodotto da Marte… eppure, qui sul server, è buonissima. Cazzarola, qui siamo oltre lo “scaricare più RAM”, ho scaricato delle cose per generare RAM dal nulla! 🚨

Questo #setup mi lascia aperti sempre tutti i processi; rallentamenti nell’accesso ai miei servizi di rete misti non ne noto letteralmente mai, mentre solo i miei desktop virtualizzati sono un po’ lenti al collegamento dopo tanto tempo di idle, ma nulla di tragico. E non penso neanche di star bruciando l’SSD, perché le pagine che finiscono in swap con l’uso del #server in genere ci restano buone. Memorabile, insomma. 🧠