News for hackers. Stuff that matters.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by dhruvdh on Sunday January 03, 2021 @06:04PM (#25626134)
I can't help but think most commentators haven't actually read the article or the patent. This isn't about having an FPGA embedded into the CPU or near the CPU, it's about having a programmable FPGA like execution unit that can be programmed to be say a 4-bit floating point adder, or any other weird execution unit one might need.

Why is this important? Have a program that does a lot of integer multiplications? Let's program all of these programmable execution units to multiply integers on the fly, etc. Now your integer multiply throughput is higher, as per the current program's needs.

Have lots of weird old x86 instructions you are forced to support but no one actually uses? Don't waste transistors on them just program an execution unit to execute that instruction on the fly, etc.

I think it's great, and that most people are missing the point.

Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by ajross on Sunday January 03, 2021 @06:41PM (#25626390)
> Have lots of weird old x86 instructions you are forced to support but no one actually uses? Don't waste transistors on them

That's been the role of microcode for like three decades now. Why does it matter if the instruction no one uses is implemented with FPGA gates or uops? No one uses them.

Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by webmobdev on Sunday January 03, 2021 @06:58PM (#25626498)
Theoretically, Now you can create "micro-codes" in the CPU for your specific needs - e.g. scientists do a lot of calulation and would like a processor optimised for that. Now they can use the FPGA to do it. You want a CPU instruction that is optimised for something else - you can program the FPGA for that.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by asimpletune on Sunday January 03, 2021 @07:34PM (#25626718)
Or maybe a compiler could recognize that optimization is possible and create it for you
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by Kuinox on Sunday January 03, 2021 @08:48PM (#25627154)
More likely a JIT can do that.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by LeifCarrotson on Sunday January 03, 2021 @09:04PM (#25627232)
The FPGA can't be reprogrammed fast enough for the JIT approach to work, unless you're running computations that take many minutes or hours. I suppose that does apply to some workloads, but it would be tough to ask your JIT to solve the halting problem and guess whether a workload will last 10 seconds or take longer than that.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by penteract on Sunday January 03, 2021 @09:13PM (#25627277)
For a JIT, the easy way to guess is to wait until it's already taken 10 seconds and if it hasn't stopped, assume it will take at least 10 more.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by Kuinox on Monday January 04, 2021 @06:01AM (#25629784)
I would say that program that are run and exit immediatly are a minority of what is produced with languages. A lot of web server, services, gui are produced in JIT languages and have a timespan of multiple minutes. AFAIK FPGA reprogrammation time depends on the size of your edit, and your hardware, the article says that they expect to reprogramm it on a program load, so I don't think it will be that slow.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by bcrosby95 on Monday January 04, 2021 @01:21AM (#25628359)
Why can't a JIT program the FPGA based upon previous runs through the same set of code? IIRC the JVM won't rest on its final optimizations until it runs a chunk of code hundreds (or thousands? I forget) of times.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by pjmlp on Monday January 04, 2021 @01:40AM (#25628436)
Depends pretty much on which JVM we are talking about, Java is like C, plenty to chose from.

In what concerns OpenJDK that is configurable via the -XX flags.

Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by snicker7 on Monday January 04, 2021 @01:26AM (#25628379)
In scientific computing, that is the typical workload. That is why, say, Julia exists despite having a ridiculous JIT overhead.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by chippiewill on Monday January 04, 2021 @01:07PM (#25635379)
Isn't that a general warm-up problem with JITs though?
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by pjmlp on Tuesday January 05, 2021 @04:02AM (#25643594)
With any kind of compilation process, a balancing act between time spend waiting and the quality of generated machine code.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by robomartin on Monday January 04, 2021 @07:56PM (#25640545)
I've been doing that for years. I have created custom microcoded CPU's in FPGA's for tasks where it would provide an advantage. One example I remember was a microcoded real time image warping engine.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by pjmlp on Monday January 04, 2021 @01:38AM (#25628431)
Six actually, given that microcode was the approach taken on most mainframes that started around Burroughs timeframe.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by mhh__ on Sunday January 03, 2021 @06:36PM (#25626347)
> Don't waste transistors on them just program an execution unit to execute that instruction on the fly, etc.

Possible, but the "x86" part is already a big decoder in front of a murky processor underneath so this is already what the CPU does - if you removed the reference to an FPGA, rewriting old x86 instructions in terms of "new" ones is microcode.

Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by justinclift on Monday January 04, 2021 @12:34AM (#25628191)
Wonder how that'd work - in practical terms - with modern systems?

eg, you could be running (say) 3 or 4 primary applications at the same time. Which one gets to use the FPGA pieces, or are they re-written every time, on every context switch? ;)

Re-writing them on every context switch sounds extremely unlikely, so it'd be more some kind of resource locking thing instead. Which could mean that FPGA-using applications at least start out being fairly niche, as only one could run "per core" or something.

Maybe dedicated cores per application instead or something?

Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by freeqaz on Monday January 04, 2021 @01:04AM (#25628306)
The work is already being put in with modern NUMA (non-uniform memory access) systems to pin apps to specific cores. This seems like it would overlap if this ended up being used in production.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by apsient on Monday January 04, 2021 @05:58AM (#25629762)
how about having FPGA execution units in addition to the normal units and os deciding how and who will use these new EUs based on the most CPU intensive apps running currently
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by laydn on Monday January 04, 2021 @04:41AM (#25629269)
I think the point is that what you're describing existed for years. Any Xilinx Zynq chip or Altera SoC chip can do this already. Just because the data doesn't travel through the AXI/AMBA bus does not make this novel.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by andy_ppp on Monday January 04, 2021 @05:39AM (#25629648)
Of course it does because you get access to the CPU as well so you can hop from an instruction you built on the FPGA to another “silicon” instruction with the same registers and processor state. This is extremely clever and doesn’t involve shuffling code from the main processor over a slow bus, executing some stuff all on the fpga and shuffling it back.
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by nitrogen on Sunday January 03, 2021 @09:23PM (#25627343)
It sounds like that's exactly how another processor worked: https://news.ycombinator.com/item?id=25623763
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by shuringai on Monday January 04, 2021 @08:11PM (#25640660)
this won't be a question of what the user wants to do with these parts. I bet it won't even be accessible for common programmers. Applications will simply constantly racing between each other and reprogram the field programmable part of my cpu every startup
Re:AMD Patent Reveals Hybrid CPU-FPGA Design That Could Be E... by av3csr on Sunday January 03, 2021 @06:58PM (#25626497)
Sounds like a more general version of what Sambanova is doing with their Dataflow unit.