• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

DirectStorage 1.2 BulkLoadDemo Benchmark

winjer

Gold Member
I compiled the new version of the BulkLoadDemo with Direct Storage 1.2 so we could test our drives ad get a feel for what the future holds for our games.

https://drive.google.com/file/d/1-PbYIwZ-lXwhdqb3rKciTOlDuDDZLEjL/view?usp=sharing
This is a compiled version of Microsoft's Bulk Load Demo.

Run the exe in "DirectStorage_1_2\Release\Output\BulkLoadDemo\BulkLoadDemo.exe"
Please post a screenshot of your result and the GPU and SSD with the PCIe version it uses.

This is my result with a few drives:
6800XT

Sabrent Rocket 2TB - PCIe Gen3
53047062166_f130a09135_o_d.jpg


HDD Seagate Barracuda 2TB - SATA
53051974109_14cd995b55_o_d.jpg


SSD Crucial BX100 512GB - SATA
53052221069_9cb2cc775f_o_d.jpg
 

Gaiff

SBI’s Resident Gaslighter
Is this a ratchet and clank is only possible through DS thread?
On the contrary, the DirectStorage 1.2 discussion has been hijacked by stupid system warriors in the R&C threads.

I'll try this demo later when I'm home. Any word on Starfield using it?
 
Last edited:

Del_X

Member
Seems like there’s really no reason to buy gen 4 or 5 cards if you can find very cheap gen 3 stuff.
 

KyoZz

Tag, you're it.
A few days ago I tried the previous bench and got this:

Firecuda 530 2TB PCIe 4.0 / RTX 4090
image.png


Btw I have a question, I'm still using W10 and I'd like to know if switching to W11 would do any benefit?
 

RespawnX

Member
I looked for the slowest drive I had around, an old 160GB that I think came with my PS3 Slim.

Results with USB adapter and 3070 Laptop.

Wvgn8LE.jpg


530MB/s seems horrible, but this is what the drive benches at.

D4nFZir.jpg

Very impressive, so I guess that explains how they got Rift Apart to run. Surely a few seconds loading window, but should still be playable. That makes the 2.4 GB/s of the Xbox Series drives around 10 GB/s?
 

hlm666

Member
3080 samsung 970 pro,

Ic3HGg4.jpg


The clocks seem to be boosting to normal during the decomp then drop back down, so you don't seem to need to set max performance anymore to get the right results after the first pass.
Sabrent rocket in a pcie3 slot is get ~15GBs.

edit: tried it on a shitty old western digital 2.5 inch bus powered usb drive, 1.5GB/s and it sustains about 80MB/s read in general os file operations.
edit 2: Just realised I still had the gpu locked to 40% power during these tests (was playing warframe and only need 40% power to maintain 144fps). It doesn't make a big difference, results increased to 21GB/s at 100%
 
Last edited:

YCoCg

Member
These results are interesting on the SATA side, here's my tests with a 3060 Ti GPU...

WD Black SATA HDD [10,000rpm]
1.96GB/s

Samsung 860 EVO SATA SSD
1.93GB/s

Samsung 870 EVO SATA SSD (via USB3.1)
1.64GB/s

Hitachi SATA HDD [7,200rpm]
0.83GB/s

PNY CS900 SATA SSD
0.57GB/s

Toshiba HDD [5,400rpm] (via USB3.0)
DNF

So the BEST performing drive was actually a HDD (WD Black 10,000rpm) just narrowly edging out the Samsung 860 Evo SSD, where as the WORST performing drive outside of the laptop 5,400rpm drives that just didn't finish was some cheap PNY SSD drives.
 

hlm666

Member
But if the GPU is doing the heavy lifting, shouldnt this affect the GPU benchmarks?
Not sure it would matter result wise as long as they are all using the same benchmark and decompressing the same data etc the work load should be the same. Like when benching a game you would use the same area and settings or built in benchmark on all gpus as long as direct storage is enabled on all gpus being tested the results should be valid.
 

Pedro Motta

Member
MGKLIjm.png


3090Ti
WD SN850 2Tb gen4.

Not sure in which slot this drive is, if it's using CPU lanes or other.

EDIT:
PS: Actually, I have multiple GPU's in this machine, how can I choose which one is used? And what about the drives? Is it the drive where I decompressed is used?
 
Last edited:

Fafalada

Fafracer forever
Very impressive, so I guess that explains how they got Rift Apart to run.
This benchmark is seemingly testing with data that is compressed around 5-6:1. So no - this level of efficiency wouldn't broadly apply to Rift Apart, or any game really (the real world data compression you can expect in games is gonna be closer to 2:1, though it will vary with different data).

That makes the 2.4 GB/s of the Xbox Series drives around 10 GB/s?
Assuming the same data as this benchmark, potentially (not sure we ever got confirmation of what the decompression hardware maxes out at). But again - this isn't representative of anything at scale.

Anyway side-note, just did some quick tests with handhelds.
Using an eGPU 2080Ti, the bandwidth maxes out around 8-9GB/s (even with a PCI4 internal NVME), I assume that's not the GPU limiter (a 2080ti should be able to get the full 5x - ie. closer to 20GB/s) but the USB4 bus-speed to the GPU enclosure (the compressed data can only be transferred over so fast).
Loading off an external USB mechanical laptop drive, I get 1GB/s - which does look like it's maxing out the drive (150-200MB/s), and that's actually the more impressive of the two as we're finally getting utilization of PC drives that was really hard before DS.

For whatever reason can't run it off the internal-GPU (app just crashes) - may be something to do with the APU drivers. 6800U/7840U Might be a way to get a ballpark idea what a Series-S could do, if it didn't use dedicated hw but its own GPU instead.
 
Last edited:
Is this benchmark dependent on the speed of your CPU in any way?

I ran it yesterday on my 2 TB Samsung 970 EVO Plus (boot) and 2 TB Samsung 980 PRO NVMe M.2 SSDs and got 12 GB/sec and 18 GB/sec respectively. I have an Intel Core i5-13600 CPU and a RTX 4080 Founders Edition graphics card with 32 GB of DDR4 3600 memory.

Just wondered how others were getting 21+ GB/sec on the same Samsung 980 PRO drive?
 
Last edited:
i'm running it right now.... does the benchmark end? it seems to be repeating non stop.

how do i select which drive to bench? i have 3 different drives in my system. one is a pcie 3 and 2 are pcie 4.
 

winjer

Gold Member
Is this benchmark dependent on the speed of your CPU in any way?

I ran it yesterday on my 2 TB Samsung 970 EVO Plus (boot) and 2 TB Samsung 980 PRO NVMe M.2 SSDs and got 12 GB/sec and 18 GB/sec respectively. I have an Intel Core i5-13600 CPU and a RTX 4080 Founders Edition graphics card with 32 GB of DDR4 3600 memory.

Just wondered how others were getting 21+ GB/sec on the same Samsung 980 PRO drive?

No, it depends very little on the CPU.
It depends mostly on the SSD, the pcie gen and the GPU.
 

octiny

Banned
I still don't understand why some users have 4Gb loaded, other 6Gb and other 8Gb. Is it based on GPU memory?

Correct.

Anything 16gb & above should have a measured load of 8.63gb, cards w/ 12gb have a measured load around 6gb & the measured loads continue to decrease as available GPU memory is lowered. It's just the way the test is configured to prevent issues.

So it's best to compare loaded times w/ someone that has the same VRAM available to them.
 
Last edited:

Cryio

Member
5700 XT + R5 3600 + Samsung 990 PCIe 4.0 NVME:

16.8 GB/s bandwidth

GDeflate: 4.3 GB/s
 
Last edited:

Mr Moose

Member
Can this technology be used on Xbox consoles?
Always-Has-Been.png

DirectStorage on Windows Samples

DirectStorage is a feature intended to allow games to make full use of high-speed storage (such as NVMe SSDs) that can can deliver multiple gigabytes a second of small (eg 64kb) data reads with minimal CPU overhead. Although it is possible to saturate a drive using traditional ReadFile-based IO the CPU overhead of increases non-linearly as the size of individual reads decreases. Additionally, most games choose to store their assets compressed on disk in order to reduce the install footprint, with these assets being decompressed on the fly as load time. The CPU overhead of this becomes increasingly expensive as bandwidth increases.

Video game consoles such as the XBox Series X|S address these issues by offloading aspects of this to hardware - making use of the NVMe hardware queue to manage IO and hardware accelerated decompression. As we expect to see more titles designed to take advantage of the possibilities offered by this architecture it becomes important that Windows has similar capabilities.

The DirectStorage API already exists on Xbox and in order to ease porting of titles between Xbox and Windows, the two APIs are as similar as possible.

DirectStorage only supports read operations.
 

Sentenza

Member
It's 19.35 GB/s in what I presume is my OS NVMe.
...How do I choose to test a different drive? Do I have to copy and execute the benchmark on it?
 

Bo_Hazem

Banned
Does this have a toll on the TBW (harddrive lifespan)? Apple's usage of SSD as a RAM could hit 50TBW for some users within few months.
 

Hoddi

Member
Here's ~650MB of content for download if anyone wants to see more than just avocados. You only need to dump them in the main directory and it will load them automatically.

I've included two files that are either uncompressed or Zlib compressed. You can move them out of the directory if you want to exclude them but they're useful to toy with as they're reported separately in the demo.

NtRt8bm.png
 

Raploz

Member
GPU RX 570 4GB. Windows 11.

Weirdly enough the hard drive is faster than my crappy Kingston SSD. 😂

WD10EZEX HD - Sata:

hd-wd-ezex-sata.png


Kingston SA400 SSD - Sata:

sata-sa400-kingston.png
 
Last edited:
Yes, it keeps repeating until the user stops it.

To select a drive, just place the folder into that drive.
There are commands to do this, explained in the github page. But it's easier to just copy the folder.
thanks!

my results are below. i don't know if it matters but my CPU is 7950X3D, 64GB RAM, and RTX 4080 GPU with 16GB VRAM.

500GB PCIE 3 (boot drive)

oV2ck6G.jpg


2TB PCIE 3 (storage drive)

Hj7REmw.jpg


2TB PCIE 4 (game drive)

ejAN6Jd.jpg
 
Last edited:
Top Bottom