Problème de performance IO - fsync

Bonjour,

Nous avons acquis un serveur Advance-3 il y a 2 semaines.
Après quelques tests, il est apparu que il y avait un problème de performance IO.
Comparé à d'autres serveur Bare-Metal de gamme inférieure (Advance-2 2019), le serveur a des performances IO 3 à 5 fois inférieures.

Il semblerait que ça soit les appels fsync qui posent problème:

fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=random_read_write.fio --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75 --fsync=100
[…]
Run status group 0 (all jobs):
READ: bw=104MiB/s (109MB/s), 104MiB/s-104MiB/s (109MB/s-109MB/s), io=3070MiB (3219MB), run=29403-29403msec
WRITE: bw=34.9MiB/s (36.6MB/s), 34.9MiB/s-34.9MiB/s (36.6MB/s-36.6MB/s), io=1026MiB (1076MB), run=29403-29403msec
[…]

sans appel fsync:

fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=random_read_write.fio --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75
Run status group 0 (all jobs):
READ: bw=845MiB/s (886MB/s), 845MiB/s-845MiB/s (886MB/s-886MB/s), io=3070MiB (3219MB), run=3634-3634msec
WRITE: bw=282MiB/s (296MB/s), 282MiB/s-282MiB/s (296MB/s-296MB/s), io=1026MiB (1076MB), run=3634-3634msec


cat /proc/mounts
[…]
/dev/md2 / xfs rw,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota 0 0
[…]

(testé en ext4, même problème)

smartctl -a /dev/nvme0
smartctl 7.1 2020-04-05 r5049 [x86_64-linux-4.18.0-348.7.1.el8_5.x86_64] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Number: SAMSUNG MZVL2512HCJQ-00B07
Serial Number: XXXXXXXXXXXX
Firmware Version: GXA7402Q
PCI Vendor/Subsystem ID: 0x144d
IEEE OUI Identifier: 0x002538
Total NVM Capacity: 512.110.190.592 [512 GB]
Unallocated NVM Capacity: 0
Controller ID: 6
Number of Namespaces: 1
Namespace 1 Size/Capacity: 512.110.190.592 [512 GB]
Namespace 1 Utilization: 56.387.268.608 [56,3 GB]
Namespace 1 Formatted LBA Size: 512
Namespace 1 IEEE EUI-64: 002538 bb11004117
Local Time is: Tue Jun 28 11:54:52 2022 UTC
Firmware Updates (0x16): 3 Slots, no Reset required
Optional Admin Commands (0x0017): Security Format Frmw_DL Self_Test
Optional NVM Commands (0x0057): Comp Wr_Unc DS_Mngmt Sav/Sel_Feat Timestmp
Maximum Data Transfer Size: 128 Pages
Warning Comp. Temp. Threshold: 81 Celsius
Critical Comp. Temp. Threshold: 85 Celsius

Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 8.37W - - 0 0 0 0 0 0
1 + 8.37W - - 1 1 1 1 0 200
2 + 8.37W - - 2 2 2 2 0 200
3 - 0.0500W - - 3 3 3 3 2000 1200
4 - 0.0050W - - 4 4 4 4 500 9500

Supported LBA Sizes (NSID 0x1)
Id Fmt Data Metadt Rel_Perf
0 + 512 0 0

=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

SMART/Health Information (NVMe Log 0x02)
Critical Warning: 0x00
Temperature: 30 Celsius
Available Spare: 100%
Available Spare Threshold: 10%
Percentage Used: 0%
Data Units Read: 9.839.298 [5,03 TB]
Data Units Written: 9.235.834 [4,72 TB]
Host Read Commands: 90.633.343
Host Write Commands: 92.361.648
Controller Busy Time: 520
Power Cycles: 32
Power On Hours: 1.689
Unsafe Shutdowns: 30
Media and Data Integrity Errors: 0
Error Information Log Entries: 0
Warning Comp. Temperature Time: 0
Critical Comp. Temperature Time: 0
Temperature Sensor 1: 30 Celsius
Temperature Sensor 2: 30 Celsius

Error Information (NVMe Log 0x01, max 64 entries)
No Errors Logged

Il semble normal d'avoir une baisse de performance avec les appels fsync, mais pas aussi importante (~ 90% de performance en moins)

Après communication avec le support OVH, aucune solution n'a été trouvée pour l'instant …

En espérant avec un meilleur résultat avec la communauté.

Merci d'avance.

Bonjour @InfraI,

Avez-vous pu résoudre votre problématique? Si c'est le cas, je vous invite à partager votre retour avec la communauté.

Dans le cas contraire, n'hésitez pas à partager les tests effectués depuis et à ajouter tout élément facilitant la compréhension de la situation.

La communauté pourra alors revenir vers vous,

^FabL