Ciao.
Premessa: non sono un esperto. Ma a occhio, molti dei risultati che si trovano in rete relativamente a questo agomento, non sembrano essere scritti da esperti del settore. A naso ci sono molte imprecisioni e molta confusione.
Allora (per partecipare, per aggiungere confusione) secondo me c’è da separare varie questioni.
Le cose sono fatte a strati. Qui mi pare ci sia lo strato più vicino al firmware del disco (ncq, queued trim, ecc.) e lo strato più vicino al sistema operativo (fstrim, opzione discard, ecc.)
(Trim asincrono o sincrono? Esiste questa terminologia?)
Poi mi pare di capire che “queued trim” non è “trim periodico” (quello nel cron o del timer systemd) e “continuous trim” (che dev’essere l’opzione discard") non è il contrario di “queued trim”.
man fstrim
dice:
“Running fstrim frequently, or even using mount -o discard, might negatively affect the lifetime of poor-quality SSD devices. For most desktop and server systems a sufficient trimming frequency
is once a week. Note that not all devices support a queued trim, so each trim command incurs a performance penalty on whatever else might be trying to use the disk at the time.”
Quindi mi pare di intendere che noi si possa sempre invocare l’operazione di trim su qualsiasi disco; poi come questa operazione venga fatta (queued o meno) dipende dal kernel, il kernel dirà al firmware del disco (o meglio, forse al controller) di farla in un modo o in un altro. Quindi se per questo disco, questi comandi (NCQ o che ne so) sono in blacklist, userà un altro metodo con la conseguenza che “each trim command incurs a performance penalty on whatever else might be trying to use the disk at the time”: semplicemente l’operazione di trim sarà più lenta, o meglio, rallenterà altre operazioni sul disco mentre sta facendo questo lavoro di trim.
Quindi secondo me non c’è da preoccuparsi. In ogni caso, come sostenuto anche nel man, far girare fstrim
una volta alla settimana è più che sufficiente, funziona ed è sicuro.