Edited slightly to reflect info on 2308 chip + STP by jgreco below - thanks!
Any PCIe 3.0 8x card, really, is the answer. (But HBA not RAID). Get the cheapest you trust. A full list of available cards and their controllers/specs is
here at servethehome.com. (But dont skimp on the cables!!). Here's why:
ZFS likes HBAs rather than RAID controllers, so that it can directly manage the individual disks. But almost overwhelmingly, HBAs seem to be powered by the LSI/Avago/Broadcom 2xxx/3xxx chips, with 2008/2xxx (other than 2308) being PCIe 2.0 based with slower CPUs, and 3008/3108/3xxx (and 2308) being PCIe 3.0 based with faster CPUs. So those are really your choices simply because there aren't many others.
However because you only want HBA capability, we can say that all 2xxx based cards (except the 2308) are alike, and all 3xxx based cards are alike. (2308 based cards are closer to 3xxx when dealing with SATA SSDs, so I'll group 3xxx/2308 cards together for this question). Any other differentiating features wont matter, because yiu simply wont ever be using them in a ZFS based build. So the limiting factor on performance, and the *only* real differentiating factors, will be the number of devices supported, and the limits of the PCIe bandwidth itself.
These 8-device cards almost all have PCIe 8x connectors. A PCIE 2.0 8x link can handle 4.0 GB/s in each direction, and a PCIe 3.0 8x can handle about 7.88 GB/s bandwidth in each direction. For 8 devices that means:
- Almost all 2xxx cards except 2308 ( PCIe 2.0 8x) hosting 8 SSDs provide simultaneous peak PCIe bandwidth of about 500 MB/s per device each way.
- Almost all 3xxx + 2308 cards (PCIe 3.0 8x) hosting 8 SSDs provide simultaneous peak PCIe bandwidth of about 985 MB/s per device each way.
You dont say which SSDs youll use, but we can assume they are SATA 3 based (6 Gb/s), because you didn't highlight NVMe and because SAS SSDs just arent so common. SATA 3 maximum bandwidth is 600 MB/s and modern SATA SSDs can max out a SATA 3 link. (Because the 3xxx + 2308 cards use SAS 3, which allows for tunnelling of SATA plus higher 12 Gb/s SAS speeds, its possible that an SSD could have even higher than 600 MB/s bandwidth if being used by a SAS card, I guess -- I can't think how else to explain the 826 MB/s figure in one of the above posts!)
So the answer is simple. 8x modern SATA SSDs will have a good chance to swamp any 2xxx card/PCIe 2.0 8x connection (500 MB/s x 8 devices max) apart from 2308 based, although that would require all disks to be reading or writing simultaneously at peak which won't actually be so common due to timing and because many IOs will be smaller block sizes and limited that way. But it's quite possible. But they will have no chance at all of swamping any 3xxx or 2308 based card/PCIe 3.0 8x connection (985 MB/s x 8 devices max).
And so we can immediately say that all 3xxx and 2308 based cards with a PCIe 3.0 8x connection, will be effectively identical. So it really doesn't matter which of them you choose.
Get the cheapest. Like I said, a full list of available cards and their controllers/specs is
here at servethehome.com. You can always
crossflash to LSI firmware (the only ones I wouldn't are Supermicro's 3xxx based HBA cards, because they have that good a reputation generally for kit). You can also crossflash the RAID "IR" versions of these cards to HBA "IT" firmware as well.
But....
Get good quality cables! Do not skimp on those. Good cables will cost a lot. But I've had more issues with these cards due to poor quality 4 way fanout cables than anything else, and
so have other people. Your best bet are cables by MicroSemi (used to be Adaptec, or took them over). Personally I pretty much would not buy any other brand. Their part number is 2280100-R ("ACK-I-HDmSAS-4SAS-SB-.8M"). Ignore the dangly ribbon cable attached to it!
You may also need SATA to MOLEX (old 4 pin) power connector adapters/splitters, because modern home user PSUs provide SATA connectors but these cables will require a MOLEX connector. Check that as well.