Live data from Hacker News

On FPGAs as PC Coprocessors (1996)

fpgacpu.org

1–10 of 33 posts

Re: On FPGAs as PC Coprocessors (1996)

#3

>So as long as FPGAs are attached on relatively glacially slow I/O buses -- including 32-bit 33 MHz PCI GPUs are on the PCI bus, aren't they? Has something changed in the last two decades to increase bandwidth?

Increase bandwidth? Absolutely. Increase relative bandwidth? Not so much.

But PCIe 3 is a whole different beast than PCI.

Re: On FPGAs as PC Coprocessors (1996)

#4

>So as long as FPGAs are attached on relatively glacially slow I/O buses -- including 32-bit 33 MHz PCI GPUs are on the PCI bus, aren't they? Has something changed in the last two decades to increase bandwidth?

GPUs worked well because you could transfer all your large art assets upfront and then only communicate your mesh and shader logic as the game ran. They don't work so well if you need frequent access to system memory.

Re: On FPGAs as PC Coprocessors (1996)

#5

>So as long as FPGAs are attached on relatively glacially slow I/O buses -- including 32-bit 33 MHz PCI GPUs are on the PCI bus, aren't they? Has something changed in the last two decades to increase bandwidth?

PCI: 33 * 32 = ~1 Gbit/s

PCIe 3: 16 lanes * 8 Gtransfers/s * 128/130 (encoding) : ~126 Gbit/s

So, yes, it has changed quite a bit!

But so has everything else.

If you want performance, you still better do it through DMA transfers that bypass the CPU, because otherwise, the CPU will still be waiting for thousands of cycles to fetch data from the device on the other side of the bus.

And the transfers that are done by the CPU should be write-only to the bus as much as possible.

Re: On FPGAs as PC Coprocessors (1996)

#8

>So as long as FPGAs are attached on relatively glacially slow I/O buses -- including 32-bit 33 MHz PCI GPUs are on the PCI bus, aren't they? Has something changed in the last two decades to increase bandwidth?

Data transfer from the host CPU to the GPU card can kill the performance of offloading. You need a hefty data-parallel kernel, with a high-ish work-per-element, to get speedup that's worth the data transfer costs.

Re: On FPGAs as PC Coprocessors (1996)

#9

>So as long as FPGAs are attached on relatively glacially slow I/O buses -- including 32-bit 33 MHz PCI GPUs are on the PCI bus, aren't they? Has something changed in the last two decades to increase bandwidth?

The AGP bus was invented to remove the bottleneck for video cards the year this article was written, which wasn't phased out until PCIe became common in the mid 00s.
Post reply on HN