Red Hat tab tom tsim NVFS cov ntaub ntawv tshiab uas muaj txiaj ntsig zoo rau NVM nco

Mikuláš Patočka, yog ib tus tsim tawm ntawm LVM thiab tus sau ntawm ntau tus inventionsmuaj feem xyuam rau kev ua kom zoo ntawm cov tshuab khaws cia, ua haujlwm ntawm Red Hat, tswvcuab cov ntaub ntawv tshiab ntawm Linux kernel developer mailing list NVFS, txhawm rau tsim kom muaj kev sib cog lus thiab ceev ceev FS rau cov cim xeeb tsis hloov pauv (NVM, lub cim xeeb tsis hloov pauv, piv txwv li NVDIMM), sib txuas RAM kev ua tau zoo nrog lub peev xwm khaws cov ntsiab lus mus tas li.

Cov kev paub dhau los ntawm FS tau raug coj mus rau hauv tus account thaum tsim NVFS NOVA, tsim tshwj xeeb rau NVM nco hauv 2017, tab sis tsis lees txais rau hauv Linux ntsiav thiab luag kev txhawb nqa rau Linux kernels los ntawm 4.13 txog 5.1.
Cov ntawv thov FS NVFS yog qhov yooj yim dua li NOVA (4972 kab ntawm cov cai piv rau 21459), muab cov khoom siv fsck, muaj kev ua tau zoo dua, txhawb nqa cov cwj pwm txuas ntxiv (xattrs), cov ntawv ruaj ntseg, ACLs thiab quotas, tab sis tsis txhawb nqa snapshots. Kev tsim vaj tsev NVFS nyob ze rau
Cov ntaub ntawv Ext4 haum zoo rau hauv cov qauv ntawm cov ntaub ntawv systems raws li VFS subsystem, uas tso cai rau koj txo tus naj npawb ntawm cov khaubncaws sab nraud povtseg thiab ua nrog ib tug module uas tsis xav tau thaj ua rau thaj rau lub kernel.

NVFS siv lub kernel interface DAX rau kev nkag ncaj qha mus rau cov khoom siv nco tsis tu ncua, hla cov nplooj ntawv cache. Txhawm rau txhim kho kev ua haujlwm ntawm byte-addressed NVM nco, cov ntsiab lus ntawm tus tsav yog mapped rau lub ntsiav qhov chaw nyob qhov chaw tsis tas siv cov txheej txheem thaiv cov cuab yeej thiab nruab nrab cache. Siv los khaws cov ntsiab lus ntawm phau ntawv tsob ntoo hauv paus (radix tsob ntoo) uas txhua lub npe yog hashed thiab tus nqi hash yog siv thaum tshawb nrhiav tsob ntoo.

Cov ntaub ntawv ncaj ncees yog ua kom ntseeg tau siv cov "cov tshiab tshiab"(raws li hauv UFS los ntawm FreeBSD thiab FFS los ntawm OpenBSD) yam tsis siv phau ntawv sau. Txhawm rau zam cov ntaub ntawv kev noj nyiaj txiag hauv NVFS, cov ntaub ntawv hloov pauv kev ua haujlwm tau muab faib ua txoj hauv kev uas kev sib tsoo tsis tuaj yeem ua rau poob ntawm cov blocks lossis inodes, thiab kev ncaj ncees ntawm cov qauv rov qab los siv fsck utility. Cov khoom siv fsck ua haujlwm nyob rau hauv ntau txoj xov xov thiab muab brute-force kev ua tau zoo ntawm 1.6 lab inodes ib ob.

В kev xeem ua haujlwm NVFS ua lub Linux kernel qhov chaw tsob ntoo luam ua haujlwm ntawm NVM nco txog 10% sai dua NOVA, 30% sai dua ext4, thiab 37% sai dua XFS. Nyob rau hauv cov ntaub ntawv retrieval xeem, NVFS sai dua NOVA los ntawm 3%, thiab ext4 thiab XFS los ntawm 15% (tab sis nrog active disk cache, NOVA yog 15% qeeb).
Nyob rau hauv lab phau ntawv ua haujlwm xeem, NVFS ua tau zoo tshaj NOVA los ntawm 40%, ext4 los ntawm 22%, thiab XFS los ntawm 46%. Thaum simulating DBMS kev ua ub no, NVFS cov ntaub ntawv system tau ua tiav NOVA los ntawm 20%, ext4 los ntawm 18 zaug, thiab XFS los ntawm 5 zaug. Hauv kev xeem fs_mark, qhov kev ua tau zoo ntawm NVFS thiab NOVA tau muab kwv yees li ntawm tib theem, thaum ext4 thiab XFS lagged qab li ntawm 3 zaug.

Lub lag luam ntawm cov ntaub ntawv ib txwm siv ntawm NVM nco yog vim qhov tseeb tias lawv tsis tau tsim los rau kev hais lus byte, uas yog siv rau hauv lub cim xeeb tsis hloov pauv, uas zoo li niaj zaus RAM. Kev nyeem ntawv los ntawm cov qauv siv tau ua kom muaj kev ua haujlwm ntawm kev ua haujlwm ntawm qib nyeem / sau ntawv, thaum NVM nco muab kev nkag mus rau qib ntawm cov lus tshuab ib leeg. Tsis tas li ntawd, cov txheej txheem cov ntaub ntawv ib txwm sim txo qis kev siv ntawm kev nkag mus rau hauv xov xwm, uas yog suav tias yog qhov ua kom qeeb dua li RAM, thiab tseem sim ua haujlwm pab pawg kom paub meej cov kev nyeem ntawv txuas ntxiv thaum siv hard drives, txheej txheem thov queues, sib ntaus sib tua fragmentation thiab cais cov qhov tseem ceeb ntawm kev ua haujlwm sib txawv.. Rau NVM nco, cov teeb meem zoo li no tsis tsim nyog, vim tias qhov ceev ntawm cov ntaub ntawv nkag tau piv rau RAM, thiab qhov kev txiav txim nkag tsis muaj teeb meem.

Tau qhov twg los: opennet.ru

Ntxiv ib saib