Skip to content

Commit a7be2d5

Browse files
feat(video): Thought I Ran Out of PCIe Lanes... I Was Wrong
1 parent 92f2a44 commit a7be2d5

File tree

2 files changed

+129
-0
lines changed

2 files changed

+129
-0
lines changed

_posts/2025-04-12-oculink-nvme.md

+129
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
---
2+
layout: post
3+
title: "Thought I Ran Out of PCIe Lanes... I Was Wrong"
4+
date: 2025-04-26 08:00:00 -0500
5+
categories: homelab
6+
tags: homelab hardware oculink nvme icy-dock
7+
image:
8+
path: /assets/img/headers/oculink-nvme-hero.webp
9+
lqip: data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/AABEIAAUACgMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP5PfgN4w0LVdQkttP8Ahn4J8Kz6d4V1W6udV0C88f3eo6slhpNwk1veR+LvHHirR4E1SeWC8vpdN0ixninsoE0yTT7aS8t7rWlNwkmu6XS3vNRvqntf5rTrcmNuXZK6a69brvf8TD+IOsy6r498b6pcxlrjUvF/iW/nZpN7NNeaze3EpZ/LXexeRiW2ruPOBnFbVW5VKkna8pzbslFXcm3aMUoxXZRSSWiSQQSjCEVe0YxSu3J2SSV5Ntt92223q3c//9k=
10+
---
11+
12+
I thought I had no PCIe lanes left — but OCuLink opened a new path.
13+
14+
{% include embed/youtube.html id='6gKOi56npgQ' %}
15+
📺 [Watch Video](https://www.youtube.com/watch?v=6gKOi56npgQ)
16+
17+
## Info
18+
19+
Today, I expand my home server with more NVMe storage, put a Samsung 990 Pro and Intel Optane head-to-head, and show just how much you can still get out of a packed system.
20+
21+
## Tests
22+
23+
I decided to test each drive to be sure that I wasn't being throttled and that I was getting the highest speeds my motherboard would support.
24+
25+
### Sequential Performance
26+
27+
Here is the command I ran to test sequential read and writes. Keep in mind that although the drives and adapter support PCIe gen 4, my board only supports gen 3.
28+
29+
### Sequential Read/Write (Large Files, 1MiB Block Size)
30+
31+
```bash
32+
fio --name=seqreadwrite \
33+
--filename=/dev/nvme3n1 \
34+
--ioengine=libaio \
35+
--direct=1 \
36+
--rw=readwrite \
37+
--bs=1M \
38+
--numjobs=2 \
39+
--iodepth=32 \
40+
--runtime=30 \
41+
--time_based \
42+
--group_reporting
43+
```
44+
45+
| Drive | Read Speed | Write Speed |
46+
|--------------------------|------------|-------------|
47+
| **Samsung 990 Pro** | 3041 MB/s | 3042 MB/s |
48+
| **Intel Optane P1600X** | 689 MB/s | 694 MB/s |
49+
50+
### Random 4K Performance
51+
52+
Random 4K tests were using 4k block size, random read/write (`randrw`).
53+
54+
### Random Read/Write 4KiB (IOPS/Small Files Test)
55+
56+
```bash
57+
fio --name=random4k \
58+
--filename=/dev/nvme3n1 \
59+
--ioengine=libaio \
60+
--direct=1 \
61+
--rw=randrw \
62+
--bs=4k \
63+
--numjobs=4 \
64+
--iodepth=32 \
65+
--runtime=30 \
66+
--time_based \
67+
--group_reporting
68+
```
69+
70+
| Drive | Read Speed | Write Speed |
71+
|--------------------------|------------|-------------|
72+
| **Samsung 990 Pro** | 1940 MB/s | 1939 MB/s |
73+
| **Intel Optane P1600X** | 629 MB/s | 629 MB/s |
74+
75+
## Latency Comparison (4K Random Read, 1 Queue Depth)
76+
77+
I then wanted to test latency, since that's where Intel Optane drives are claimed to excel.
78+
79+
### Latency Focused Test (1 I/O at a Time, 4KiB Random Read)
80+
81+
```bash
82+
fio --name=latency_test \
83+
--filename=/dev/nvme3n1 \
84+
--ioengine=sync \
85+
--direct=1 \
86+
--rw=randread \
87+
--bs=4k \
88+
--iodepth=1 \
89+
--numjobs=1 \
90+
--runtime=10 \
91+
--time_based \
92+
--group_reporting
93+
```
94+
95+
| Drive | Avg Latency (µs) | IOPS | Bandwidth (MB/s) |
96+
|-----------------------|------------------|----------|------------------|
97+
| Samsung 990 Pro | 25.6 µs | 37.3k | 146 MB/s |
98+
| Intel Optane P1600X | 9.1 µs | 97.2k | 380 MB/s |
99+
100+
*Note: µs = microseconds (one millionth of a second)*
101+
102+
## Observations
103+
104+
Quick observations:
105+
106+
- Optane P1600X had almost 3x lower latency.
107+
- Optane handled more than 2.5x the IOPS.
108+
- Samsung 990 Pro crushes when it comes to raw transfer speeds
109+
110+
## 📦 Products in this video 📦
111+
112+
- ICY Dock NVMe to U2. Adapter: <https://amzn.to/3Yk882t>
113+
- OCuLink to NVMe U.2 Cable: <https://amzn.to/432ArFa>
114+
- Samsung NVMe: <https://amzn.to/4m6dfO7>
115+
- Intel Optane: <https://amzn.to/4lO3zHL>
116+
117+
## Join the conversation
118+
119+
<blockquote class="twitter-tweet" data-dnt="true" data-theme="dark">I thought I had no PCIe lanes left — but OCuLink opened a new path.<a href="https://t.co/q6K6TUTXtr">https://t.co/q6K6TUTXtr</a> <a href="https://t.co/4Prk054Jic">pic.twitter.com/4Prk054Jic</a></p>&mdash; Techno Tim (@TechnoTimLive) <a href="https://twitter.com/TechnoTimLive/status/1916146585295114703?ref_src=twsrc%5Etfw">April 26, 2025</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
120+
121+
## Links
122+
123+
🛍️ Check out the new Merch Shop at <https://l.technotim.live/shop>
124+
125+
⚙️ See all the hardware I recommend at <https://l.technotim.live/gear>
126+
127+
🚀 Don't forget to check out the [🚀Launchpad repo](https://l.technotim.live/quick-start) with all of the quick start source files
128+
129+
🤝 Support me and [help keep this site ad-free!](/sponsor)
112 KB
Binary file not shown.

0 commit comments

Comments
 (0)