-1

I'm curious about SAS data transfer speed. Maximum is 12Gbps in the whole bus (not per drive) as far as I understand, but I have a scenario where I would like to have a faster data rate (hopefully around 40 to 80 gbps), stored into RAID-10 (thinking of SSD).

Why such a high speed is required? Because I need to read and write data of a common storage in a HPC-cluster system using infiniband as a low-latency netwok, with frequent read/write ops, and if 12Gbps is the max I'll get to write I don't see the point.

How can I speed up that number, or if there are performance improvements to be used.

Thank you in advance.

3
  • if the storage array and your computer are both on infiniband and it is only the hard drives that are on SAS, then there are plenty of ways the storage array can speed things up, like using cache, multiple controllers, etc. a faster solution is nvme which works over infiniband.
    – toppk
    Sep 14, 2022 at 2:09
  • I see... I would need to consider a NVMe based raid solution then for the storage server?
    – zRISC
    Sep 14, 2022 at 14:52
  • 2
    you have not demonstrated that the SAS bandwidth is a significant limiting factor. we are still at the point of computing that local memory is significantly faster than remote persistent storage and there are lots of viable techniques to avoid disk access in performance critical paths. Not only do storage arrays use those techniques, but many applications setup in memory caches etc. Certainly an all flash nvme array with lots of ram will make any application design quicker, but it is important to remember your application design is always the limiting factor for performance,
    – toppk
    Sep 14, 2022 at 15:09

1 Answer 1

1

SAS doesn't use a bus like Parallel SCSI. SAS uses dedicated point-to-point links. Each link negotiates its own link rate. An 8-port 12G SAS RAID controller or HBA has an external, aggregated bandwidth of 96 Gbit/s. It may be limited to lower processing rates though, depending on its internal design.

You simply scale up your array performance by adding drives. If there aren't enough SAS ports you need to upgrade the RAID controller.

If you're serious about speed you should check out PCIe-attached NVMe. But as @toppk has pointed out, your entire design (hardware, OS, application) defines the achievable throughput, not just a single detail. For SSDs, make sure they can cope with your write workload.

If you've got a specific performance in mind you'll need to evaluate complete solutions (platform, storage, memory subsystem, network subsystems, and of course the software) whether or not they meet those requirements. Going shopping and grabbing various "high-end" components might not play all too well together. Pretty much every serious vendor offers pre-sales support that provides specific information, especially on performance.

1
  • Hi, thanks for the clarification. With that, then I shouldn't have to change the design, only evaluate after doing a thorough performance logging and proper analysis of the data from the storage server then.
    – zRISC
    Oct 28, 2022 at 17:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .