LINUX.ORG.RU

NVMe samsung PM1735 low read/write Centos 7

 , , , ,


2

5

Доброго времени суток! Уважаемые, есть крайне непонятная для меня проблема. Имеется система на supermicro h12dst-b, камень AMD Epyc 7232p, два диска HHHL samsung MZPLJ3T2HBJR-00007. Так вот эти диски не хотят нормально работать. По ТТХ у них скорость чтения 8000мб/с, а hdparm выдаёт вот такое:

hdparm -tT /dev/nvme0n1p1

/dev/nvme0n1p1:
 Timing cached reads:   20398 MB in  2.00 seconds = 10213.54 MB/sec
 Timing buffered disk reads: 6604 MB in  3.00 seconds = 2200.99 MB/sec

hdparm -tT --direct /dev/nvme0n1p1

/dev/nvme0n1p1:
 Timing O_DIRECT cached reads:   6470 MB in  2.00 seconds = 3236.47 MB/sec
 Timing O_DIRECT disk reads: 6528 MB in  3.00 seconds = 2175.69 MB/sec

Как бы в маздае 2019 скорость соответствует заявленной (7400мб/с), в Centos 7.9 (3.10.0-1160.el7.x86_64) - ни в какую.

(parted) print
Model: NVMe Device (nvme)
Disk /dev/nvme0n1: 3201GB
Sector size (logical/physical): 4096B/4096B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  3201GB  3201GB  ext4

Пробовал переназначать namespace и ставить blocksize по 4k - стало лучше (это то, что сейчас, было вообще 1400мб/с). В биос переключил уже работу pcie на 8x8 с auto, линии нормально используются - ширина по lspci - width 8, в проц пропускная способность не упирается, asmp отключено тоже в биосе.

Уже просто не знаю куда копать и что делать. Появилась больная идея сделать 4 namespace и объединить в RAID0 (да, я в курсе что дичь какая то, но просто третьи сутки пошли уже). Спасайте, какие есть варианты?

Ответ на: комментарий от bx1_host
[    0.662742] pci 0000:81:00.0: BAR 7: no space for [mem size 0x00100000 64bit]
[    0.662744] pci 0000:81:00.0: BAR 7: failed to assign [mem size 0x00100000 64bit]
...
[    2.495219] nvme nvme0: pci function 0000:81:00.0

Поискать и включить в BIOS что-то вроде “Above 4G decoding” или “large/64bit BARs”

Flotsky ★★
()
Ответ на: комментарий от Flotsky

Поискать и включить в BIOS что-то вроде “Above 4G decoding” или “large/64bit BARs”

Было включено. Выключил - результат не поменялся

bx1_host
() автор топика
Ответ на: комментарий от Jameson

Прошу

81:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM173X (prog-if 02 [NVM Express])
        Subsystem: Samsung Electronics Co Ltd Device a801
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 67
        NUMA node: 0
        Region 0: Memory at f8010000 (64-bit, non-prefetchable) [size=32K]
        Expansion ROM at f8000000 [disabled] [size=64K]
        Capabilities: [40] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [70] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 512 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 75.000W
                DevCtl: Report errors: Correctable+ Non-Fatal+ Fatal+ Unsupported-
                        RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+ FLReset-
                        MaxPayload 512 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend-
                LnkCap: Port #0, Speed 16GT/s, Width x8, ASPM not supported, Exit Latency L0s unlimited, L1 <64us
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 16GT/s, Width x8, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+, LTR-, OBFF Not Supported
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
                LnkCtl2: Target Link Speed: 16GT/s, EnterCompliance- SpeedDis-
                         Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
                         Compliance De-emphasis: -6dB
                LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+, EqualizationPhase1+
                         EqualizationPhase2+, EqualizationPhase3+, LinkEqualizationRequest-
        Capabilities: [b0] MSI-X: Enable+ Count=64 Masked-
                Vector table: BAR=0 offset=00004000
                PBA: BAR=0 offset=00003000
        Capabilities: [100 v2] Advanced Error Reporting
                UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
                UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
                UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
                CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
                AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn-
        Capabilities: [148 v1] Device Serial Number 60-62-50-11-94-38-25-00
        Capabilities: [168 v1] Alternative Routing-ID Interpretation (ARI)
                ARICap: MFVC- ACS-, Next Function: 0
                ARICtl: MFVC- ACS-, Function Group: 0
        Capabilities: [178 v1] #19
        Capabilities: [198 v1] #26
        Capabilities: [1c0 v1] #27
        Capabilities: [1e8 v1] Single Root I/O Virtualization (SR-IOV)
                IOVCap: Migration-, Interrupt Message Number: 000
                IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy+
                IOVSta: Migration-
                Initial VFs: 32, Total VFs: 32, Number of VFs: 0, Function Dependency Link: 00
                VF offset: 1, stride: 1, Device ID: a824
                Supported Page Size: 00000553, System Page Size: 00000001
                Region 0: Memory at 0000000000000000 (64-bit, non-prefetchable)
                VF Migration: offset: 00000000, BIR: 0
        Capabilities: [3a4 v1] #25
        Kernel driver in use: nvme
        Kernel modules: nvme
bx1_host
() автор топика
Ответ на: комментарий от bx1_host

Всё хватает, dmesg выложен полный. Я просто прокомментировал комментарий.

Непонятная ситуация.

Dimez ★★★★★
()

Помогайте, спасайте. Пивом угощу)) Готов предоставить anydesk, сервер пока в локалке, готовлю к продакшену.

bx1_host
() автор топика
Ответ на: комментарий от Flotsky

Да, много сообщений вида

pci 0000:81:00.0: BAR 7: no space for [mem size 0x00100000 64bit]

Есть возможность отключить все pci устройства, кроме одного из NVME и потестировать скорость? Хотябы убедиться, что ошибка ушла.

Flotsky ★★
()
Ответ на: комментарий от Flotsky

Есть возможность отключить все pci устройства, кроме одного из NVME

Отключал физически вообще всё кроме одной плашки RAM - ситуация не меняется

bx1_host
() автор топика
Ответ на: комментарий от bx1_host

попробуй:

# tune2fs -O extents /dev/nvme0n1
# tune2fs -I 256 /dev/nvme0n1
# mount -t ext4 -o noatime,dioread_nolock /dev/nvme0n1 /where   

хотя…ядро старое…все старое

XFS вместо EXT4 может еще помочь. слегка.

kindof
()
Ответ на: комментарий от kindof
[root@epyc1 ~]# hdparm -t /dev/nvme0n1

/dev/nvme0n1:
 Timing buffered disk reads: 4982 MB in  3.00 seconds = 1660.42 MB/sec

«Помогло». В обратную сторону)

bx1_host
() автор топика
Ответ на: комментарий от bx1_host

чтож, усугубим )

mount -t ext4 noatime,nodiratime,discard,data=writeback,barrier=0,nobh,dioread_nolock /dev/nvme0n1 /where

hdparm -t /dev/nvme0n1

–direct жи )

ну и ядру подсунуть чтонибудь типа

scsi_mod.use_blk_mq=1

в загрузчик

PS да, data=writeback - отрубает журнал есичо )

kindof
()
Последнее исправление: kindof (всего исправлений: 1)
Ответ на: комментарий от bx1_host

Вот тут можно для тупеньких? Это в куда вставить?)

ну если grub, добавь к своим

nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash scsi_mod.use_blk_mq=1"
update-grub2

kindof
()
Ответ на: комментарий от kindof

по O_DIRECT стало бодрее конечно )

[root@epyc1 ~]# hdparm --direct -t /dev/nvme0n1

/dev/nvme0n1:
 Timing O_DIRECT disk reads: 7864 MB in  3.00 seconds = 2621.14 MB/sec
[root@epyc1 ~]# hdparm -t /dev/nvme0n1

/dev/nvme0n1:
 Timing buffered disk reads: 5050 MB in  3.00 seconds = 1683.28 MB/sec
bx1_host
() автор топика
Ответ на: комментарий от bx1_host

по O_DIRECT стало бодрее конечно )

с опцией ядра?

хотя, там его может и не быть

cat /sys/block/nvme0n1/queue/scheduler

а

time dd if=/dev/nvme0n1  of=/dev/null bs=16M count=1000

что рисует?

kindof
()
Последнее исправление: kindof (всего исправлений: 2)
Ответ на: комментарий от kindof
[root@epyc1 ~]# time dd if=/dev/nvme0n1  of=/dev/null bs=16M count=1000
1000+0 records in
1000+0 records out
16777216000 bytes (17 GB, 16 GiB) copied, 7.1423 s, 2.3 GB/s

real    0m7.144s
user    0m0.002s
sys     0m2.111s
bx1_host
() автор топика
Ответ на: комментарий от kindof

спэшиал фор ю

[root@epyc1 ~]# uname -a
Linux epyc1.1bx.host 5.14.0-115.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Jun 20 11:03:29 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

вообще монописуально )

bx1_host
() автор топика
Ответ на: комментарий от bx1_host

nm

маздае 2019 скорость соответствует заявленной (7400мб/с)

в Centos 7.9 (3.10.0-1160.el7.x86_64)

Linux epyc1.1bx.host 5.14.0-115.el9.x86_64 #1 SMP

это все разные хосты?

16777216000 bytes (17 GB, 16 GiB) copied, 7.1423 s, 2.3 GB/s

похоже дело не в бобине машине

nvme-cli есть?

# nvme list

# nvme id-ctrl -H /dev/nvme0

kindof
()
Последнее исправление: kindof (всего исправлений: 2)

Максимальную полосу можно получить только в многопоточной нагрузке. В однопотоке ты будешь упираться в латенси и в одно ядро процессора. Поэтому советую забить на синтетику. Или взять fio и тестировать им в несколько заданий (не путай с iodepth который использует aio и один поток).

И ещё проверь что у тебя используется blk-mq, иначе ты просто упрешься в очередь io.

Nastishka ★★★★★
()

И ещё проверь чтобы нума не мешала. На большой нагрузке она может доставить много проблем

Nastishka ★★★★★
()
Ответ на: комментарий от kindof
[root@epyc1 ~]# nvme id-ctrl -H /dev/nvme0
NVME Identify Controller:
vid       : 0x144d
ssvid     : 0x144d
sn        : S55HNC0R400671
mn        : SAMSUNG MZPLJ3T2HBJR-00007
fr        : EPK9AB5Q
rab       : 8
ieee      : 002538
cmic      : 0x3
  [3:3] : 0     ANA not supported
  [2:2] : 0     PCI
  [1:1] : 0x1   Multi Controller
  [0:0] : 0x1   Multi Port

mdts      : 5
cntlid    : 0x41
ver       : 0x10300
rtd3r     : 0xe4e1c0
rtd3e     : 0x989680
oaes      : 0x300
  [31:31] : 0   Discovery Log Change Notice Not Supported
  [27:27] : 0   Zone Descriptor Changed Notices Not Supported
  [15:15] : 0   Normal NSS Shutdown Event Not Supported
  [14:14] : 0   Endurance Group Event Aggregate Log Page Change Notice Not Supported
  [13:13] : 0   LBA Status Information Notices Not Supported
  [12:12] : 0   Predictable Latency Event Aggregate Log Change Notices Not Supported
  [11:11] : 0   Asymmetric Namespace Access Change Notices Not Supported
  [9:9] : 0x1   Firmware Activation Notices Supported
  [8:8] : 0x1   Namespace Attribute Changed Event Supported

ctratt    : 0
  [15:15] : 0   Extended LBA Formats Not Supported
  [14:14] : 0   Delete NVM Set Not Supported
  [13:13] : 0   Delete Endurance Group Not Supported
  [12:12] : 0   Variable Capacity Management Not Supported
  [11:11] : 0   Fixed Capacity Management Not Supported
  [10:10] : 0   Multi Domain Subsystem Not Supported
  [9:9] : 0     UUID List Not Supported
  [7:7] : 0     Namespace Granularity Not Supported
  [5:5] : 0     Predictable Latency Mode Not Supported
  [4:4] : 0     Endurance Groups Not Supported
  [3:3] : 0     Read Recovery Levels Not Supported
  [2:2] : 0     NVM Sets Not Supported
  [1:1] : 0     Non-Operational Power State Permissive Not Supported
  [0:0] : 0     128-bit Host Identifier Not Supported

rrls      : 0
cntrltype : 0
  [7:2] : 0     Reserved
  [1:0] : 0     Controller type not reported
fguid     :
crdt1     : 0
crdt2     : 0
crdt3     : 0
nvmsr     : 1
  [1:1] : 0     NVM subsystem Not part of an Enclosure
  [0:0] : 0x1   NVM subsystem part of an Storage Device

vwci      : 255
  [7:7] : 0x1   VPD Write Cycles Remaining field is valid.
  [6:0] : 0xfe  VPD Write Cycles Remaining

mec       : 0
 [7:2] : 0x3c   Reserved
  [1:1] : 0x1   NVM subsystem contains a Management Endpoint on a PCIe port
  [0:0] : 0x1   NVM subsystem contains a Management Endpoint on an SMBus/I2C port

oacs      : 0xdf
  [10:10] : 0   Lockdown Command and Feature Not Supported
  [9:9] : 0     Get LBA Status Capability Not Supported
  [8:8] : 0     Doorbell Buffer Config Not Supported
  [7:7] : 0x1   Virtualization Management Supported
  [6:6] : 0x1   NVMe-MI Send and Receive Supported
  [5:5] : 0     Directives Not Supported
  [4:4] : 0x1   Device Self-test Supported
  [3:3] : 0x1   NS Management and Attachment Supported
  [2:2] : 0x1   FW Commit and Download Supported
  [1:1] : 0x1   Format NVM Supported
  [0:0] : 0x1   Security Send and Receive Supported

acl       : 127
aerl      : 15
frmw      : 0x17
  [5:5] : 0     Multiple FW or Boot Update Detection Not Supported
  [4:4] : 0x1   Firmware Activate Without Reset Supported
  [3:1] : 0x3   Number of Firmware Slots
  [0:0] : 0x1   Firmware Slot 1 Read-Only

lpa       : 0xe
  [6:6] : 0     Telemetry Log Data Area 4 Not Supported
  [5:5] : 0     LID 0x0, Scope of each command in LID 0x5, 0x12, 0x13 Not Supported
  [4:4] : 0     Persistent Event log Not Supported
  [3:3] : 0x1   Telemetry host/controller initiated log page Supported
  [2:2] : 0x1   Extended data for Get Log Page Supported
  [1:1] : 0x1   Command Effects Log Page Supported
  [0:0] : 0     SMART/Health Log Page per NS Not Supported

elpe      : 255
npss      : 0
avscc     : 0x1
  [0:0] : 0x1   Admin Vendor Specific Commands uses NVMe Format

apsta     : 0
  [0:0] : 0     Autonomous Power State Transitions Not Supported

wctemp    : 353
 [16:0] : 80 C (353 Kelvin)     Warning temperature (WCTEMP)

cctemp    : 360
 [16:0] : 87 C (360 Kelvin)     Critical temperature (CCTEMP)

mtfa      : 130
hmpre     : 0
hmmin     : 0
tnvmcap   : 3200631791616
unvmcap   : 0
rpmbs     : 0
 [31:24]: 0     Access Size
 [23:16]: 0     Total Size
  [5:3] : 0     Authentication Method
  [2:0] : 0     Number of RPMB Units

edstt     : 2
dsto      : 1
fwug      : 255
kas       : 0
hctma     : 0
  [0:0] : 0     Host Controlled Thermal Management Not Supported

mntmt     : 0
mxtmt     : 0
sanicap   : 0x3
  [31:30] : 0   Additional media modification after sanitize operation completes successfully is not defined
  [29:29] : 0   No-Deallocate After Sanitize bit in Sanitize command Supported
    [2:2] : 0   Overwrite Sanitize Operation Not Supported
    [1:1] : 0x1 Block Erase Sanitize Operation Supported
    [0:0] : 0x1 Crypto Erase Sanitize Operation Supported

hmminds   : 0
hmmaxd    : 0
nsetidmax : 0
endgidmax : 0
anatt     : 0
anacap    : 0
  [7:7] : 0     Non-zero group ID Not Supported
  [6:6] : 0     Group ID does not change
  [4:4] : 0     ANA Change state Not Supported
  [3:3] : 0     ANA Persistent Loss state Not Supported
  [2:2] : 0     ANA Inaccessible state Not Supported
  [1:1] : 0     ANA Non-optimized state Not Supported
  [0:0] : 0     ANA Optimized state Not Supported

anagrpmax : 0
nanagrpid : 0
pels      : 0
domainid  : 0
megcap    : 0
sqes      : 0x66
  [7:4] : 0x6   Max SQ Entry Size (64)
  [3:0] : 0x6   Min SQ Entry Size (64)

cqes      : 0x44
  [7:4] : 0x4   Max CQ Entry Size (16)
  [3:0] : 0x4   Min CQ Entry Size (16)

maxcmd    : 0
nn        : 32
oncs      : 0x7f
  [8:8] : 0     Copy Not Supported
  [7:7] : 0     Verify Not Supported
  [6:6] : 0x1   Timestamp Supported
  [5:5] : 0x1   Reservations Supported
  [4:4] : 0x1   Save and Select Supported
  [3:3] : 0x1   Write Zeroes Supported
  [2:2] : 0x1   Data Set Management Supported
  [1:1] : 0x1   Write Uncorrectable Supported
  [0:0] : 0x1   Compare Supported

fuses     : 0
  [0:0] : 0     Fused Compare and Write Not Supported

fna       : 0x4
  [3:3] : 0     FormatNVM Broadcast NSID (FFFFFFFFh) Supported
  [2:2] : 0x1   Crypto Erase Supported as part of Secure Erase
  [1:1] : 0     Crypto Erase Applies to Single Namespace(s)
  [0:0] : 0     Format Applies to Single Namespace(s)

vwc       : 0
  [2:1] : 0     Support for the NSID field set to FFFFFFFFh is not indicated
  [0:0] : 0     Volatile Write Cache Not Present

awun      : 65535
awupf     : 0
icsvscc     : 1
  [0:0] : 0x1   NVM Vendor Specific Commands uses NVMe Format

nwpc      : 0
  [2:2] : 0     Permanent Write Protect Not Supported
  [1:1] : 0     Write Protect Until Power Supply Not Supported
  [0:0] : 0     No Write Protect and Write Protect Namespace Not Supported

acwu      : 0
ocfs      : 0
  [1:1] : 0     Controller Copy Format 1h Not Supported
  [0:0] : 0     Controller Copy Format 0h Not Supported

sgls      : 0xf0002
 [21:21]: 0     Transport SGL Data Block Descriptor Not Supported
 [20:20]: 0     Address Offsets Not Supported
 [19:19]: 0x1   Metadata Pointer Containing SGL Descriptor is Supported
 [18:18]: 0x1   SGL Length Larger than Buffer Supported
 [17:17]: 0x1   Byte-Aligned Contig. MD Buffer Supported
 [16:16]: 0x1   SGL Bit-Bucket Supported
 [15:8] : 0     SGL Descriptor Threshold
  [2:2] : 0     Keyed SGL Data Block descriptor Not Supported
  [1:0] : 0x2   Scatter-Gather Lists Supported. Dword alignment required.

mnan      : 0
maxdna    : 0
maxcna    : 0
subnqn    : nqn.1994-11.com.samsung:nvme:PM1733:HHHL:S55HNC0R400671
ioccsz    : 0
iorcsz    : 0
icdoff    : 0
fcatt     : 0
  [0:0] : 0     Dynamic Controller Model

msdbd     : 0
ofcs      : 0
  [0:0] : 0     Disconnect command Not Supported

ps    0 : mp:25.00W operational enlat:180 exlat:180 rrt:0 rrl:0
          rwt:0 rwl:0 idle_power:7.00W active_power:20.00W

bx1_host
() автор топика
Ответ на: комментарий от bx1_host

Вот кстати, товарищ Nastishka прав. Интересно было бы увидеть результаты fio, в том числе и на оффтопике.

Вот что пишет AMD: https://developer.amd.com/wp-content/resources/56367_0.70.pdf

А еще там очень много зависит от firmware (microcode). В ентерпрайз сегмент samsung поставляет несколько отличные от. Например, с включенным SR-IOV на самом девайсе, где он создает виртуальные контроллеры и параллелит их работу. Тут он выключен:

cmic : 0x3
[3:3] : 0 ANA not supported
[2:2] : 0 PCI
[1:1] : 0x1 Multi Controller
[0:0] : 0x1 Multi Port

2read: https://nvmexpress.org/wp-content/uploads/NVM-Express-Base-Specification-2.0b...

секция 2.4

и что там с:

cat /sys/module/nvme_core/parameters/multipath

kindof
()

В общем ребят, я хз как это произошло и как это работает, но вот:

[root@epyc1 ~]# time dd if=/dev/nvme0n1  of=/dev/null bs=16M count=1000
1000+0 records in
1000+0 records out
16777216000 bytes (17 GB, 16 GiB) copied, 0.957488 s, 17.5 GB/s

real    0m0.959s
user    0m0.000s
sys     0m0.957s
[root@epyc1 ~]# hdparm -t /dev/nvme0n1

/dev/nvme0n1:
 Timing buffered disk reads: 20704 MB in  3.00 seconds = 6900.16 MB/sec

единственное что сделал (тапками не кидаться, лучше объясните сирому):

yum install google-perftools google-perftools-deve -y
bx1_host
() автор топика
Ответ на: комментарий от kindof

и что там с:

[root@epyc1 ~]# cat /sys/module/nvme_core/parameters/multipath
N

эт как включить то говоришь? =)

Тут он выключен

В BIOS включается же ж? Или на самом диски тоже как то?

bx1_host
() автор топика

А на винде тоже hdparm-ом мерял скорость? Попробуй fio на centos с тем же кол-вом потоков и размером блока что и на винде

cobold ★★★★★
()
Ответ на: комментарий от bx1_host

UPD. я паникер. В общем если делать сначала запись, например time dd if=/dev/nvme0 of=/dev/null bs=16M count=1000, а уже потом чтение - то всё вполне ок…

bx1_host
() автор топика
Ответ на: комментарий от bx1_host

[root@epyc1 ~]# time dd if=/dev/nvme0n1 of=/dev/null bs=16M >count=1000 1000+0 records in 1000+0 records out 16777216000 bytes (17 GB, 16 GiB) copied, 0.957488 s, 17.5 GB/s

вот - уперся в трубу PCIe 4 x8

yum install google-perftools google-perftools-deve -y

поставил либу, хедер и все побежало? даже ничего не пересобирал? невозможно, скорее «наверно, салатиком отравился» (с) анекдот

kindof
()
Ответ на: комментарий от bx1_host

[root@epyc1 ~]# cat /sys/module/nvme_core/parameters/multipath N

эт как включить то говоришь? =)

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/managing_storage_devices/enabling-multipathing-on-nvme-devices_managing-storage-devices

В BIOS включается же ж? Или на самом диски тоже как то?

В microcode диска. На той стороне трубы кто-то же должен отвечать )

kindof
()
Ответ на: комментарий от cobold

Попробуй fio на centos с тем же кол-вом потоков и размером блока что и на винде

Вот да, тут (на LORe) модно я смотрю игнорировать рекомендации в тредах о помощи, а потом кричать «он слиииился» )))

kindof
()
Ответ на: комментарий от cobold

А где в приведённой команде запись на накопитель?

)))

да похоже просто включил, mq включился, и таки да. проехали.

kindof
()
Ответ на: комментарий от Nastishka

Удваиваю. Нет смысла разбараться дальше, пока проблема не подтверждена как положено.

i586 ★★★★★
()
Ответ на: комментарий от bx1_host

Для ссд надо сначала записать и потом записанные читать. Иначе там фейковое чтение нулей со всеми вытекающими.

Nastishka ★★★★★
()
Ответ на: комментарий от bx1_host

а уже потом чтение - то всё вполне ок…

То мы трестируем чтение из памяти. Циферки в разы превышающие заявленные производителем прозрачно на это намекают. Сбросьте кеш перед тестом хотя бы.

bugfixer ★★★★★
()
Ответ на: комментарий от bugfixer

То мы трестируем чтение из памяти. Циферки в разы превышающие заявленные производителем прозрачно на это намекают. Сбросьте кеш перед тестом хотя бы.

точнее, PCIe 4 x8

память на supermicro h12dst-b в разы быстрее

kindof
()
Ответ на: комментарий от kindof

точнее, PCIe 4 x8

Почти был готов согласится, но: (а) by-default dd не использует DIRECT_IO (только что проверил), и (б) - 17.5 GB/s превышает теоретические 16GB/s (хотя может быть погрешностью измерений).

ПыСы: я считаю ко всем этим циферкам нарисованным маркетологами нужно относится очень философски - они достижимы только на синтетических тестах после массы приседаний и при удачной фазе луны. Под реальными нагрузками если Вы хотя бы половину от заявленного увидите - уже хорошо.

bugfixer ★★★★★
()
Ответ на: комментарий от bugfixer

Почти был готов согласится, но: (а) by-default dd не использует >DIRECT_IO (только что проверил)

но вполне могло повлиять blk_mq

(б) - 17.5 GB/s превышает теоретические 16GB/s (хотя может быть погрешностью измерений).

скорее погрешности, связанные, например с тем, что контроллер nvme шлет данные, которые ему самому читать не надо (не было записи), буферизацией, частотой шины, наконец

kindof
()
Ответ на: комментарий от bugfixer

ПыСы: я считаю ко всем этим циферкам нарисованным маркетологами нужно относится очень философски - они достижимы только на синтетических тестах после массы приседаний и при удачной фазе луны. Под реальными нагрузками если Вы хотя бы половину от заявленного увидите - уже хорошо.

ну масс-юзеру это может и не ведомо, быстро и хорошо.))

а вот энертпрайз там всякий с датацентрами может и подтянуть за спеки )

Там много от microcode зависит, я писал выше.

kindof
()
Последнее исправление: kindof (всего исправлений: 1)
Ответ на: комментарий от kindof

но вполне могло повлиять blk_mq

Всегда считал blk_mq проявляет себя только в multithread (и понятно почему), что очевидно не «наш случай». Но это всё не имеет значения - главный поинт в том что полученные циферки однозначно левые, как ни посмотри.

bugfixer ★★★★★
()
Ответ на: комментарий от kindof

а вот энертпрайз там всякий с датацентрами может и подтянуть за спеки )

Не, не удастся. Эти же гаврики тоже не дураки - ни в одном спеке Вы guaranteed throughput не найдёте.

bugfixer ★★★★★
()
Ответ на: комментарий от bugfixer

Всегда считал blk_mq проявляет себя только в multithread (и понятно почему), что очевидно не «наш случай».

ну а кто сказал что в kernel blkio нет threads )

Но это всё не имеет значения - главный поинт в том что полученные циферки однозначно левые, как ни посмотри.

Да, хотелось бы увидеть результаты fio, но ТС упорно игнорирует )

kindof
()
Ответ на: комментарий от bugfixer

Не, не удастся. Эти же гаврики тоже не дураки - ни в одном спеке Вы guaranteed throughput не найдёте.

ну это к юристам, а вот тут

NVMe samsung PM1735 low read/write Centos 7 (комментарий)

есть ссылка на рисёч AMD, там они спеки даже обгоняют. местами )

kindof
()
Ответ на: комментарий от kindof

ну а кто сказал что в kernel blkio нет threads )

а вот тут есть ссылка на рисёч AMD, там они спеки даже обгоняют. местами )

Гораздо более увлекательное чтиво, как по мне. В те времена MQ был на этапе «concept proof prototype», но тем не менее - очень познавательно.

bugfixer ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.