4 ms·
That's why I thought of Bluearc - it was a storage system so the overall throughput was ultimately limited by hard disks. The FPGAs were used to optimise all of
by mprovost 11y ago
That's why I thought of Bluearc - it was a storage system so the overall throughput was ultimately limited by hard disks. The FPGAs were used to optimise all of the front end protocol and filesystem processing. I imagine the same is true of most key-value stores, at scale you're going to have to store the values somewhere slow and optimising key lookups only gains you so much.
My impression of FPGAs is that yes, Moore's law does help, but at this point it's mostly by adding transistors. If your design doesn't take advantage of them, don't they just sit idle? Whereas Intel puts a lot of effort into making those extra transistors speed up even single threaded legacy code.
Your example of network hardware is interesting where you can keep the whole problem domain local I imagine it's a better use case.
- bravo22 11y agoKV would be stored in DDR memory in this case, which on an FPGA you can have many channels all working in parallel. In fact you could design a system that could saturate a 10Gbps network link and give you deterministic, 1ms or less, I/O latency. That is difficult to match for a regular CPU system. You'll find that a lot of high-throughput CPU systems end up using FPGAs on PCIe cards to the same thing in order to achieve the needed performance.