Skip to content
August 10, 2008 / steve8

RiDATA Ultra-S Plus 64GB SSD

Let’s take a look at how RiDATA’s $270 64GB SSD compares with OCZ’s Core SSD:

Read Performance:

random read linear

random read log

Here we see read performance being fantastic, yet not as good as the OCZ Core series I reviewed the other day.

so lets consider the following:

random_read_latency+transfer_request_size/STR_read = seconds_per_io

so lets consider 512Byte and 700MiB transfers to calculate random_read_latency and STR_read.

700MiB:

random-read_latency+700*1024KiB/STR_read = seconds_per_io = 1/.174214 = 5.74

512Byte:

random_read_latency+0.5KiB/STR_read = seconds_per_io=1/ios_per_second = 1/ 2170.88

now subtract the 2nd equation from the 1st and the result:

(700*1024 – .5)/STR_read = 5.74- 1/2170.88 = 5.73960617

716799.5/5.73960617 = STR_read= 124886.53 KiB/sec

=>The average sequential read throughput is  121.96 MiB/sec

let’s plug that back into the 512Byte equation:

random_read_latency + .5KiB/(124886.53KiB/sec) = 1/2170.88

random_read_latency = .000456639 seconds

=> The average random read latency is 0.457ms

For a sanity check:

random read linear_vsexpected

random read log_vsexpected

Here we see the random read latency and STR I calculated to characterize the performance very well… but around 512KiB request sizes, the performance is slightly lower than expected.

Overall I can say with confidence that the drives read specs are

122MiB/sec average read STR

0.457ms average random read latency

write performance:

random write linear

random write log

Write performance is very similar to the OCZ Core SSD, although the STR is clearly a bit less on the RiDATA.

since random_write_latency + request_size/STR_write = 1/iops

[random_write_latency+ 700MiB/STR_write = 1/.097486]

– [random_write_latency+ .5KiB/STR_write = 1/4.04]

—————————————————————————-

(700*1024-1/2)/STR_write = 1/.097486 – 1/4.04 = 10.257883 – .24752475 = 10.01035824

STR_write = 71605.78 KiB/sec

=> average writing sequential transfer rate is 69.93 MiB/sec

so, random_write_latency + .5KiB/71605.78 = 1/4.04

random_write_latency = .2475 seconds

=> average random write latency is 247.5 ms

sanity check:

random write linear_vsexpected

random write log_vsexpected

So, while in the ballpark, this fixed random write latency model fails to characterize actual performance with enough precision.  As we did with the OCZ, lets assume that often on writes significant in size relative to the drive’s cluster size (minimum read-modify-erase-write block size), the write gets hit with 2 penalties, at the beginning and the end of the write, where both the start and stop points do not lie on the edge of one the drive’s clusters.

random write linear_vsexpected2

random write log_vsexpected2

So this makes sense, writes over 2MiB in size tend to incur 2 write penalties a significant percent of the time.

writelatency

Here we see as write size goes up, the odds of getting 2 (erase-block) penalties increases to nearly 100%.

In Conclusion:

The RiDATA Ultra-S Plus NSSD-S25-64-CO4MM-PM is great for reads, amazing for tiny random reads, but mediocre for writes, and amazingly terrible for small random writes.  This unit is on par with the OCZ Core SSD, at roughly the same price.

RiDATA Ultra-S Plus NSSD-S25-64-CO4MM-PM reads writes
random access latency >0.457 ms 247.5 ms
sequential transfer rate 122 MiB/sec 70 MiB/sec
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: