#1 Le 06/01/2023, à 01:21
- iznobe
[ resolu ] activer le cache en ecriture sur disque SSD NVME
Bonjour , habituellement pour augmenter les capacités et vitesses de transfert de mes disques , j' active le " cache en ecriture " de tous mes disques durs .
pour le SSD NVME qui me sert de support pour les systemes d' exploitations , c ' est grisé dans " disque " , j' ai donc cherché une commande , mais hdparm , ne gere pas les SSD , et donc je n' ai pas trouvé grand chose de concluant qui puisse faire avancé le schmil-blik ...
seule commande peut etre utile :
iznobe@iznobe-PC:~$ sudo nvme show-regs /dev/nvme0n1 -H
[sudo] Mot de passe de iznobe :
cap : 100030f0013fff
Controller Memory Buffer Supported (CMBS): The Controller Memory Buffer is Not Supported
Persistent Memory Region Supported (PMRS): The Persistent Memory Region is Not Supported
Memory Page Size Maximum (MPSMAX): 8192 bytes
Memory Page Size Minimum (MPSMIN): 4096 bytes
Boot Partition Support (BPS): No
Command Sets Supported (CSS): NVM command set is Supported
One or more I/O Command Sets are Not Supported
I/O Command Set is Supported
NVM Subsystem Reset Supported (NSSRS): Yes
Doorbell Stride (DSTRD): 4 bytes
Timeout (TO): 120000 ms
Arbitration Mechanism Supported (AMS): Weighted Round Robin with Urgent Priority Class is not supported
Contiguous Queues Required (CQR): Yes
Maximum Queue Entries Supported (MQES): 16384
version : 10300
NVMe specification 1.3
cc : 460001
I/O Completion Queue Entry Size (IOCQES): 16 bytes
I/O Submission Queue Entry Size (IOSQES): 64 bytes
Shutdown Notification (SHN): No notification; no effect
Arbitration Mechanism Selected (AMS): Round Robin
Memory Page Size (MPS): 4096 bytes
I/O Command Set Selected (CSS): NVM Command Set
Enable (EN): Yes
csts : 1
Processing Paused (PP): No
NVM Subsystem Reset Occurred (NSSRO): No
Shutdown Status (SHST): Normal operation (no shutdown has been requested)
Controller Fatal Status (CFS): False
Ready (RDY): Yes
nssr : 0
NVM Subsystem Reset Control (NSSRC): 0
intms : 0
Interrupt Vector Mask Set (IVMS): 0
intmc : 0
Interrupt Vector Mask Clear (IVMC): 0
aqa : 1f001f
Admin Completion Queue Size (ACQS): 32
Admin Submission Queue Size (ASQS): 32
asq : 101666000
Admin Submission Queue Base (ASQB): 101666000
acq : 101665000
Admin Completion Queue Base (ACQB): 101665000
cmbloc : 0
Controller Memory Buffer feature is not supported
cmbsz : 0
Controller Memory Buffer feature is not supported
bpinfo : 0
Active Boot Partition ID (ABPID): 0
Boot Read Status (BRS): No Boot Partition read operation requested
Boot Partition Size (BPSZ): 0
bprsel : 0
Boot Partition Identifier (BPID): 0
Boot Partition Read Offset (BPROF): 0
Boot Partition Read Size (BPRSZ): 0
bpmbl : 0
Boot Partition Memory Buffer Base Address (BMBBA): 0
cmbmsc : 0
Controller Base Address (CBA): 0
Controller Memory Space Enable (CMSE): 0
Capabilities Registers Enabled (CRE): CMBLOC and CMBSZ registers are NOT enabled
cmbsts : 0
Controller Base Address Invalid (CBAI): 0
pmrcap : 0
Controller Memory Space Supported (CMSS): Referencing PMR with host supplied addresses is Not Supported
Persistent Memory Region Timeout (PMRTO): 0
Persistent Memory Region Write Barrier Mechanisms (PMRWBM): 0
Persistent Memory Region Time Units (PMRTU): PMR time unit is 500 milliseconds
Base Indicator Register (BIR): 0
Write Data Support (WDS): Write data to the PMR is not supported
Read Data Support (RDS): Read data from the PMR is not supported
pmrctl : 0
Enable (EN): PMR is Disabled
pmrsts : 0
Controller Base Address Invalid (CBAI): 0
Health Status (HSTS): Normal Operation
Not Ready (NRDY): The Persistent Memory Region is Not Ready to process PCI Express memory read and write requests
Error (ERR): 0
pmrebs : 0
PMR Elasticity Buffer Size Base (PMRWBZ): 0
Read Bypass Behavior : memory reads not conflicting with memory writes in the PMR Elasticity Buffer MAY bypass those memory writes
PMR Elasticity Buffer Size Units (PMRSZU): Bytes
pmrswtp : 0
PMR Sustained Write Throughput (PMRSWTV): 0
PMR Sustained Write Throughput Units (PMRSWTU): Bytes/second
pmrmscl : 0
Controller Base Address (CBA): 0
Controller Memory Space Enable (CMSE): 0
pmrmscu : 0
Controller Base Address (CBA): 0
iznobe@iznobe-PC:~$
est ce que cela revient a dire que le cache en ecriture n ' est pas supporté par le disque ? :
Controller Memory Buffer Supported (CMBS): The Controller Memory Buffer is Not Supported
Persistent Memory Region Supported (PMRS): The Persistent Memory Region is Not Supported
iznobe@iznobe-PC:~$ lsblk -o model /dev/nvme0n1
MODEL
ADATA SX8200PNP
iznobe@iznobe-PC:~$
je prends tout aide et conseil de qui peut m' en dire plus a ce sujet .
Dernière modification par iznobe (Le 06/01/2023, à 19:47)
retour COMPLET et utilisable de commande | script montage partitions
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#2 Le 06/01/2023, à 11:39
- Astrolivier
Re : [ resolu ] activer le cache en ecriture sur disque SSD NVME
https://askubuntu.com/questions/1309893 … f-nvme-ssd
# nvme get-feature -f 6 /dev/nvme0n1
get-feature:0x6 (Volatile Write Cache), Current value:0x000001
# nvme set-feature -f 6 -v 0 /dev/nvme0n1
set-feature:06 (Volatile Write Cache), value:00000000
# nvme get-feature -f 6 /dev/nvme0n1
get-feature:0x6 (Volatile Write Cache), Current value:00000000
j'ai lu un peu de doc pour voir de quoi il retourne
comme ici https://www.evanjones.ca/durability-nvme.html
ou là https://www.quora.com/Should-I-disable- … -on-an-SSD
si c'est pour avoir de meilleures performances en vitesse, ce n'est pas la solution, c'est même probablement contreproductif,
le cas ou ceci est envisagé est en cas de risque de perte de données dues à une coupure de courant, auquel cas le cache en ram risque d'être perdu (donc on oublie tout ce qui est sur batterie).
et donc à priori pour des données critiques qui ne peuvent pas être récupérées.
S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)
Hors ligne
#3 Le 06/01/2023, à 19:02
- iznobe
Re : [ resolu ] activer le cache en ecriture sur disque SSD NVME
Salut Astrolivier et merci pour ces infos .
j ' en deduis donc que le cache est aussi activé chez moi puisque :
iznobe@iznobe-PC:~$ sudo nvme get-feature -f 6 /dev/nvme0n1
[sudo] Mot de passe de iznobe :
get-feature:0x06 (Volatile Write Cache), Current value:0x00000001
iznobe@iznobe-PC:~$
donc , je n' ai rien de special a faire
si c'est pour avoir de meilleures performances en vitesse, ce n'est pas la solution, c'est même probablement contreproductif
heu , certainement pas , il suffit de tester pour s' en persuader , la difference varie de 25 a 50 % , c' est loin d' etre negligeable !
pour les problemes de coupure de couant , ma tour est sur onduleur , ce qui resout 99 % des soucis . donc tres peu de chances que je me retrouve avec une coupure de courant pour laquelle je n' aurais rien pu faire et subir des pertes de données .
le cache disque , n' est pas situé dans la RAM , je pense plutot que c' est une memoire integrée dans le peripherique lui-meme . comme on peut le voir dans les descriptions sur des sites vendeurs de disque :
https://www.ldlc.com/informatique/piece … 01080.html
alors ce ne sont pas des NVME , mais y a pas de raison que ce soit different pour les disques NVME .
EDIT : j ' ai fini par trouver : https://www.ldlc.com/fiche/PB00265002.html#specs-tech
on voit que ce disque comporte un cache de 2 Go
une derniere remarque , c ' est curieux que " disque " ne gere pas encore les parametres pour les disque NVME comme le cache en ecriture par exemple alors qu ' il existe bien des commandes pour activer / desactiver celui-ci comme on peut le voir dans ton message precedent .
Dernière modification par iznobe (Le 06/01/2023, à 19:16)
retour COMPLET et utilisable de commande | script montage partitions
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#4 Le 06/01/2023, à 19:27
- Astrolivier
Re : [ resolu ] activer le cache en ecriture sur disque SSD NVME
j'ai du mal comprendre tu veux que le cache en écriture soit activé ? mais c'est activé par défaut !
le princpe si j'ai bien compris c'est que le cache attend de se remplir de données (sur une ram, même si c'est dans le ssd) avant de les stocker en dur sur le disque. sachant que le ssd marche par block, càd qu'il attendra de toute façon d'avoir un block à remplir (c'est le côté atomique, la plus petite opération) avant d'écrire sur le disque. si ça coupe avant l'écriture en dur, les données sont perdues. c'est pour ça que certains (donc pour des cas rares) le désactivent. mais par défaut le cache est activé.
edit : c'est quoi disque ? l'utilitaire graphique de gnome ? si c'est ça ça ne m'étonne pas, déjà smartcl et nvme sont des utilitaires qui ne sont pas présent par défaut, et qui ne sont pas spécialement utile pour la plupart des gens. c'tain truc de geek !
Dernière modification par Astrolivier (Le 06/01/2023, à 19:31)
S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)
Hors ligne
#5 Le 06/01/2023, à 19:44
- iznobe
Re : [ resolu ] activer le cache en ecriture sur disque SSD NVME
j'ai du mal comprendre tu veux que le cache en écriture soit activé ? mais c'est activé par défaut !
avec ta commande , au moins j' en ai la preuve .
edit : c'est quoi disque ? l'utilitaire graphique de gnome ? si c'est ça ça ne m'étonne pas, déjà smartcl et nvme sont des utilitaires qui ne sont pas présent par défaut, et qui ne sont pas spécialement utile pour la plupart des gens. c'tain truc de geek !
oui c' est bien de ca que je parlais . dans disque , la gestion smartctl est bien presente et activable / desactivable . la GAE , la veille , le cache en ecriture disque sont aussi presents si les disques les supporte sauf pour les NVME ... qui eux n ' ont droit qu ' aux tests de performance .
retour COMPLET et utilisable de commande | script montage partitions
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne