Live data from Hacker News

On FPGAs as PC Coprocessors (1996)

fpgacpu.org

11–20 of 33 posts

Re: On FPGAs as PC Coprocessors (1996)

#11
Something I've often dreamed about is an fpga board in pcie card form with a sane toolset along side it so I can treat it as software instead of getting advanced degrees in desktop cable management and I/O pin mapping. Does something like that exist?

Re: On FPGAs as PC Coprocessors (1996)

#12
post #10

Probably a stupid question: Instead of 6 core or 8 core CPUs, why Intel doesn't make 4 traditional cores + 2 FPGA cores on same die?

Because 2 FPGA cores don't give you the same bang for your computational buck as 2/4 general purpose cores. You're better off hanging an FPGA off a fast internal bus with an expansion card, rather than try and cram an FPGA on a CPU die.

Think of them like graphics cards, but even more niche. Trying to stick them directly into the CPU isn't going to provide the power of a dedicated add on.

Re: On FPGAs as PC Coprocessors (1996)

#13
post #10

Probably a stupid question: Instead of 6 core or 8 core CPUs, why Intel doesn't make 4 traditional cores + 2 FPGA cores on same die?

Because supporting different instructions sets or extensions through FPGAs would lead to the beginning of the end for x86-64.

Re: On FPGAs as PC Coprocessors (1996)

#14
post #10

Probably a stupid question: Instead of 6 core or 8 core CPUs, why Intel doesn't make 4 traditional cores + 2 FPGA cores on same die?

My rule of thumb from a few years ago: given the same semiconductor process, you roughly have a 40x area difference between ASIC and FPGA for the same amount of random logic.

There are few things that can be done very well on a FPGA, but most things are not, and the market for it tiny.

If you really have an application that's perfect for a CPU/FPGA combo, just buy a PCIe card with a beefy FPGA.

It will cost you, but the development of the FPGA logic will cost way more.

Re: On FPGAs as PC Coprocessors (1996)

#15
post #11

Something I've often dreamed about is an fpga board in pcie card form with a sane toolset along side it so I can treat it as software instead of getting advanced degrees in desktop cable management and I/O pin mapping. Does something like that exist?

Depending on how you define "sane toolset", they do exist[1]...except they're in that class where if have to ask the price you probably can't afford it, and it doesn't relieve a developer of vendor place-and-route toolchain to build the application pipeline.

[1] https://www.nallatech.com/solutions/all-fpga-cards/

Re: On FPGAs as PC Coprocessors (1996)

#16
post #11

Something I've often dreamed about is an fpga board in pcie card form with a sane toolset along side it so I can treat it as software instead of getting advanced degrees in desktop cable management and I/O pin mapping. Does something like that exist?

What you're describing is OpenCL, yes it exists, both Xilinx and Intel produce toolsets. No they aren't sane by software standards, but they're fantastic compared to hardware engineering. A card will cost you ~$10k for something you'd actually get acceleration from (https://www.xilinx.com/products/boards-and-kits/alveo/u250.h...) and you'll still need a degree in electronic engineering to produce something that convincingly accelerates your task.

Re: On FPGAs as PC Coprocessors (1996)

#17
post #11

Something I've often dreamed about is an fpga board in pcie card form with a sane toolset along side it so I can treat it as software instead of getting advanced degrees in desktop cable management and I/O pin mapping. Does something like that exist?

Adding to my siblings, Lattice Semiconductor also has a line of FPGA boards with PCI-E connectors: http://www.latticesemi.com/pci-express

I caution you to not dismiss the entire field of computer hardware engineering as "cable management". If that's your view, best just stick to whatever you're doing now.

Re: On FPGAs as PC Coprocessors (1996)

#18
post #10

Probably a stupid question: Instead of 6 core or 8 core CPUs, why Intel doesn't make 4 traditional cores + 2 FPGA cores on same die?

It's a good question: the answer is that they have done this. (or atleast they are doing this) https://www.nextplatform.com/2018/05/24/a-peek-inside-that-i...

What's proving to be a problem though is where does this fit? If you don't have a clear need for an FPGA then just buy a normal Xeon. If you do need an FPGA then why compromise your Xeon? Have an FPGA card, or hell a group of FPGA cards.

The only place this makes sense is if you can think of a use case where you have an FPGA task that needs low latency communication with your CPU. Even with this chip though you have an uphill struggle because the cache hierarchy of a Xeon makes access to memory non-deterministic which traditionally isn't what FPGAs are designed for. It's much more difficult to design your algorithm on FPGA to deal with arbitrary memory latency.

So the question back to you is: What would you use it for?

Re: On FPGAs as PC Coprocessors (1996)

#19
post #10

Probably a stupid question: Instead of 6 core or 8 core CPUs, why Intel doesn't make 4 traditional cores + 2 FPGA cores on same die?

Because 2 FPGA cores don't give you the same bang for your computational buck as 2/4 general purpose cores. You're better off hanging an FPGA off a fast internal bus with an expansion card, rather than try and cram an FPGA on a CPU die. Think of them like graphics cards, but even more niche. Trying to stick them directly into the CPU isn't going to provide the power of a dedicated add on.

Although if they are on-die, you can benefit from shared L2/L3 cache, and lower power/increased performance of the CPU-FPGA coupling, shared memory path (lower cost than dedicated, although they can compete/starve each other if there isn't good synergy at the OS level.)

Re: On FPGAs as PC Coprocessors (1996)

#20
post #16
post #11

Something I've often dreamed about is an fpga board in pcie card form with a sane toolset along side it so I can treat it as software instead of getting advanced degrees in desktop cable management and I/O pin mapping. Does something like that exist?

What you're describing is OpenCL, yes it exists, both Xilinx and Intel produce toolsets. No they aren't sane by software standards, but they're fantastic compared to hardware engineering. A card will cost you ~$10k for something you'd actually get acceleration from ( https://www.xilinx.com/products/boards-and-kits/alveo/u250.h... ) and you'll still need a degree in electronic engineering to produce something that con…

If you run Linux and are happy with 4 64-bit ARM cores, 154K logic elements and 2GB LDDR4, $250 is the new low bar for low-cost acceleration[1]. [1] https://www.xilinx.com/products/boards-and-kits/1-vad4rl.htm...
Post reply on HN