You are not logged in.
Pages: 1
For those running it @ PCIe 3.0 4x, would you mind posting a quick benchmark? You can grab iozone from the AUR. My results on an 4ext file system:
% iozone -e -I -a -s 10M -r 4k -i 0 -i 1 -i 2
Just a quick 10 MB file read and write test. I ran it 3 times.
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite
10240 4 256179 296262 321619 366988 60181 258892
10240 4 256089 292220 324440 372175 62855 233257
10240 4 227819 294998 305572 347943 62760 213239
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
Btrfs on Fedora 24 (same options)
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
10240 4 141181 138513 221774 240659 47423 94889
10240 4 142861 160794 215992 235640 48769 103616
10240 4 102301 159124 197305 240976 57110 150376
(Linux 4.5.4-300.fc24.x86_64)
`iozone -a` is about a magnitude better.
Offline
Btrfs on Fedora 24 (same options)
random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 10240 4 141181 138513 221774 240659 47423 94889 10240 4 142861 160794 215992 235640 48769 103616 10240 4 102301 159124 197305 240976 57110 150376
(Linux 4.5.4-300.fc24.x86_64)
`iozone -a` is about a magnitude better.
@johnp - Is your 950 connected to a PCIe 3.0 4x compat. board or PCIe 2.0? Unless BTRFS is the blame for the lower throughput, I can't explain the data you got.
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
@johnp - Is your 950 connected to a PCIe 3.0 4x compat. board or PCIe 2.0? Unless BTRFS is the blame for the lower throughput, I can't explain the data you got.
@graysky: PCIe 3.0. It's a Fujitsu D3417-B running an Intel E3-1225 v5.
Just ran the same command on the ext4 boot partition:
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
10240 4 202639 194344 283154 280156 52681 186222
10240 4 210487 240182 273936 244386 53022 160715
10240 4 213235 268978 289315 293661 53291 166023
So looks like Btrfs is at least one of the reasons. I assume you used your 4.5.x-ck kernel?
If not, I could check against the rawhide kernel. Any relevant mount options?
Offline
My mount options are pretty basic: defaults,relatime,discard The test machine is on 4.5.5-ck-1 but the results are similar to 4.5.5-ARCH-1 (which I compiled since 4.5.4 is the latest in [core]. Your numbers are lower though...
I am using blk-mq which does make a difference in my experience. You can easily set it in your boot loader by the kernel command: scsi_mod.use_blk_mq=1 ... in testing it against the various schedulers on my older 840 Pro SSD (SATA3), I found it as-good or better-than cfq for read, rnd read, and rnd-wright operations; haven't yet tested it on my new 950 Pro. Anyway, you wanna try it on your kernel and see if you notice a speed-up?
Last edited by graysky (2016-05-23 19:04:10)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
Seems Fedora or Anaconda already enabled blk-mq for the nvme device and adding the kernel command line option only changes the dvd burner to use it too ?! Anyway, it's in `/sys/class/nvme/nvme0/nvme0n1/mq/` and ` /sys/class/nvme/nvme0/nvme0n1/queue/scheduler`==none.
Just booted into 4.6.0 from the kernel-stabilization copr, but only see regressions.
ext4:
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
10240 4 200207 209001 188363 185961 51445 143355
10240 4 189370 218192 187298 188533 51276 152080
10240 4 201408 203570 215053 209055 51563 136911
10240 4 196794 204989 207522 260388 52870 143693
10240 4 200665 231837 225352 225535 51678 147737
Btrfs:
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
10240 4 127513 164168 208851 141046 44105 94983
10240 4 113190 160443 219926 207065 45133 98466
10240 4 79760 159531 222695 205941 44367 102881
10240 4 93245 150637 229072 160645 43898 90747
10240 4 117941 164215 200023 117269 44169 93656
Adjusted mount-options, enabled discard and ran fstrim on ext4 and defrag+balance on btrfs, no significant changes.
Booted back into 4.5.4, same as before. Waiting for bodhi to mash the 4.5.5 update, but I don't really expect a change
Any UEFI-Tuning on your machine, aka disabled SpeedStep or Turboboost?
CPU with Hyperthreading, allowing blk-mq to run more queues (I should probably have gone with the E3-1245v5...)? If yes and you have the time, could you try disabling?
If nothing explains the difference I'll boot an Arch Live ISO once I'm at the location on Wednesday or Thursday. Now I really want to solve this
Offline
@johnp - No special tuning that I am aware of... not even overclocking the system. SS and TB are enabled as are all CPU options of which I am aware. My CPU is an i7-4970k and my motherboard is a Z97 chipset but I don't know if that matters for this... I can disable HT and blk-mq and post back.
EDIT: OK... HT disabled and I removed the scsi_mod.use_blk_mq=1 from my kernel option but catting the following suggests there are no schedulers for the device. I am rather new to NVMe stuff so perhaps normal schedulers (noop, deadline, cfq) don't apply to them?
% cat /sys/class/nvme/nvme0/nvme0n1/queue/scheduler
none
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
10240 4 250881 253797 320743 367761 62629 219404
10240 4 252271 294982 320419 368876 59978 255411
10240 4 247928 291040 323682 369396 62706 230387
Last edited by graysky (2016-05-23 21:38:37)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
It's almost behaving like your system is not using PCIe 3.0 4x...
Here are the numbers of my system using the built in M.2 port with is only PCIe 2.0 2x (my PCIe 3.0 is due to the addon controller which is in a PCIe 3.0 4x slot):
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
10240 4 175345 195494 216075 235960 57218 165741
10240 4 176274 173753 223283 244699 60472 191932
10240 4 176054 195360 228790 251504 60457 190663
There your system is mostly faster by about 20% with the exception of the rnd read and rnd write (12% slower and 7% slower respectively).
Last edited by graysky (2016-05-24 00:50:48)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
This [1-2] might be related, I know yours are not nucs but you never know if the problem is not somewhat similar. But it might also be something else entirely.
[1] http://www.anandtech.com/show/10327/int … ylake-nucs
[2] http://anandtech.com/show/10303/choosin … keu-system
R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K
Offline
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frew
10240 4 138152 199516 222328 259747 56919 182840
10240 4 142683 197969 222193 237674 56385 174833
10240 4 151704 202140 234015 264325 55500 169831
This is on an old Z68 mobo with Award BIOS. It's supposed to have PCI-E 3.0, but I'm not sure I trust Gigabyte to have got that working with no bugs or issues based on other things I heard about that era of motherboards by them. I'll try switching the PCI-E slot and running it with blk-mq tomorrow. Partition is ext4.
Having moved the SSD to the slot originally for the video card:
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
10240 4 200355 248930 317065 318644 57834 186928
10240 4 176872 237685 239503 244554 59231 199933
10240 4 163078 231162 245099 256217 56433 167303
10240 4 167205 231433 297355 307414 59026 200500
Then I decided to try 100M instead of 10.
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
102400 4 230198 241831 321506 321869 57324 261362
102400 4 202448 284097 323116 271993 56457 230738
Last edited by crispyambulance (2016-05-26 21:00:41)
Offline
My mount options are pretty basic: defaults,relatime,discard
@graysky Careful with the discard option on NVMe - the wiki advices to drop that option in favour of a fstrim-cronjob: https://wiki.archlinux.org/index.php/So … rives/NVMe
I'm no expert myself, so I just followed the wiki...
Manual run: systemctl start fstrim.service
Recurring run: systemctl enable fstrim.timer
Last edited by zenlord (2016-06-04 06:09:10)
Offline
I think my Dell XPS 13 9350 also contains a 256G Samsung 950 Pro:
# lsblk -o MODEL
PM951 NVMe SAMSUNG 256GB
PCIe busses:
# lspci -vv | grep -E 'PCI bridge|LnkCap'
00:1c.0 PCI bridge: Intel Corporation Device 9d10 (rev f1) (prog-if 00 [Normal decode])
LnkCap: Port #1, Speed 8GT/s, Width x2, ASPM L1, Exit Latency L0s unlimited, L1 <16us
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1) (prog-if 00 [Normal decode])
LnkCap: Port #5, Speed 8GT/s, Width x1, ASPM L1, Exit Latency L0s <1us, L1 <16us
00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1) (prog-if 00 [Normal decode])
LnkCap: Port #6, Speed 8GT/s, Width x1, ASPM L1, Exit Latency L0s <1us, L1 <16us
00:1d.0 PCI bridge: Intel Corporation Device 9d18 (rev f1) (prog-if 00 [Normal decode])
LnkCap: Port #9, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L0s <1us, L1 <16us
LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L1, Exit Latency L0s <4us, L1 <8us
LnkCap: Port #0, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1 <64us
LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L0s <4us, L1 <64us
I'm using BTRFS on my / partition, and this is the result of the iozone command:
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
10240 4 96553 124327 180761 201721 39089 94681
10240 4 113408 121800 169938 181860 39924 109458
10240 4 111499 115368 178093 202876 39009 84114
Stock kernel and scheduler.
Mount options: btrfs (rw,relatime,ssd,space_cache,subvolid=5,subvol=/)
Any hints on optimization?
Last edited by zenlord (2016-06-04 13:06:19)
Offline
Pages: 1