Intel Files Patent For Software-Defined Super Cores, Allowing 2 or More Cores to Function as One

The FPS Review may receive a commission if you purchase something after clicking a link in this article.

Image: Intel

Intel has filed a patent for an interesting technique that would enable multiple cores to pair up via software management. Labeled as “Software defined super cores“, the 124-page patent filing details a process whereby multiple cores could work together as one in processing select instruction tasks.

Image: Intel (via Google Patents)

Per Intel:

“Software defined super cores (SDC) seek to aggregate the Instructions-per-Cycle (IPC) capabilities of neighboring cores into a “super core.” A super core is a virtual construct grouping of two or more cores (in some examples, physically adjacent core) that are virtually “fused” such that they each run different portions of an application’s instructions, but retire the instructions in original program order. Thus, the virtually fused “super cores” gives to software applications and/or an operating system the semblance of being a single core.”

Intel further states that focusing on turbo clock boosts is an inefficient use of energy, and instead, SDC would be a more efficient approach. From reverse hyperthreading to speculation that this could be leftovers of Intel’s cancelled Royal Core project (Reddit via VideoCardz), folks are already guessing as to what form SDC will take. Of course, a big elephant in the room is how the software component needed for SDC would function, as there could potentially be major concerns regarding latency and scheduling. While it remains unknown exactly how SDC would mitigate this, Intel did share the following, further clarifying how SDC could function.

Per Intel:

“In some examples, a SDC software framework splits (or rather steers) a thread of a program such that each constituent core of the “super core” executes distinct blocks of the program simultaneously. SDC software can be run as part of a JIT compiler, a static compiler, and/or directly on legacy binaries requiring no recompilation. The SDC hardware component adds a small amount of hardware to each core (e.g., to a memory execution cluster) for faster memory communication across the component cores.”

Essentially, these fused virtual cores would share memory to complete their tasks. Intel claims this single-thread approach could deliver better performance per watt than traditional means. It’s also interesting that this patent has been filed as Intel has somewhat abandoned hyperthreading with some of its recent CPU offerings, as it continues to focus on its E-core/P-core architecture introduced with Alder Lake in 2021. It would be interesting to see how SDC would take advantage of these cores.

Join the discussion in The FPS Review Forums...

Discussion (19 replies)

Join Discussion →
S
Stoly 👍 1

This has been the wholly grail ever since hyperthreading and multicore were introduced. It's literally been decades since I saw the first efforts to make multicores work as one.

Grimlakin

I wonder how much the software puts on overhead. This could be awesome for msql servers though. Especially considering license costs.

S

"Grimlakin, post: 97738, member: 215" wrote:

I wonder how much the software puts on overhead. This could be awesome for msql servers though. Especially considering license costs.


SQL server is muticore happy, so I don't think it would benefit as much.

Brent_Justice
Brent_Justice 👍 2

My worry is OS scheduling problems; history has proven that desktop Windows is terrible at it and it takes MS forever to catch up with support, and then it's still not perfect.

Grimlakin

"Stoly, post: 97739, member: 1474" wrote:

SQL server is muticore happy, so I don't think it would benefit as much.


Yes and no.. it is multithreaded happy but being able to reduce core count to accelerate your threads would a boon for some and save on licensing.

Riccochet

"Grimlakin, post: 97749, member: 215" wrote:

Yes and no.. it is multithreaded happy but being able to reduce core count to accelerate your threads would a boon for some and save on licensing.


You're still paying for those cores. And SQL already uses parallelism for query acceleration.

Grimlakin

"Riccochet, post: 97752, member: 4" wrote:

You're still paying for those cores. And SQL already uses parallelism for query acceleration.


We don't know that. If this is a bios level change like SMT to Hyperthreading but in reverse it will appear to the OS as fewer cores... and fewer cores = more performance. Right now we build some of our critical infrastructure with 50% more cores than we need to use day to day, but we turn 1/2 of them off in the bios. Having them available if we need the performance later.

So for us being able to just enable all cores and get the performance for our heavily threaded use, then we can save on core count licensing for SQL and have more performance at the same time for the same cost we would spend on those servers. IT's a win win. And since we JUST refreshed, our next cycle is a few years out as it stands so that would let this product stack mature as well.

Skillz
Skillz 👍 1

Not all MySQL queries can be parralled to decrease execution time.

Some things have to go in a specific order 1 at a time.

If this can make the "single core" performance of that accelerate then I'm very interested.

Grimlakin

"Skillz, post: 97758, member: 137" wrote:

Not all MySQL queries can be parralled to decrease execution time.



Some things have to go in a specific order 1 at a time.



If this can make the "single core" performance of that accelerate then I'm very interested.

Thank vendors that haven't updated their database design in 20+ years and just keep it compatible with current SQL revisions.

Riccochet

"Grimlakin, post: 97755, member: 215" wrote:

We don't know that. If this is a bios level change like SMT to Hyperthreading but in reverse it will appear to the OS as fewer cores... and fewer cores = more performance. Right now we build some of our critical infrastructure with 50% more cores than we need to use day to day, but we turn 1/2 of them off in the bios. Having them available if we need the performance later.



So for us being able to just enable all cores and get the performance for our heavily threaded use, then we can save on core count licensing for SQL and have more performance at the same time for the same cost we would spend on those servers. IT's a win win. And since we JUST refreshed, our next cycle is a few years out as it stands so that would let this product stack mature as well.

Vast majority of SQL environments are virtualized. And being a VMWare engineer myself I can't think of one reason why I'd want core reduction/binding at the BIOS level on my hosts. That would limit my ability to provision cores for multi-threaded applications.

Grimlakin

"Riccochet, post: 97761, member: 4" wrote:

Vast majority of SQL environments are virtualized. And being a VMWare engineer myself I can't think of one reason why I'd want core reduction/binding at the BIOS level on my hosts. That would limit my ability to provision cores for multi-threaded applications.


You're not running very big SQL servers. :) I don't want to run servers with 32 cores and 512+ gigs of ram as a VM. Not without a 100 gig backbone for vm migration. OOF.

Grimlakin

Smaller SQL boxes... SURE all day every day but the core reducing/binding isn't for those environments. some VM infrastructure you can just assign more priority to existing threads .. but SQL licensing is just so damn expensive you need to be running a cluster for all SQL for it to make sense.

Skillz
Skillz 👍 1

"Grimlakin, post: 97759, member: 215" wrote:

Thank vendors that haven't updated their database design in 20+ years and just keep it compatible with current SQL revisions.

I've tried to update mine, but it got way, way worse performance. I had to move it back to MYISAM. InnoDB was 3x slower even when I tried implementing parallel processing.

Brian_B
Brian_B 👍 1

"Grimlakin, post: 97755, member: 215" wrote:

We don't know that.


How do we not know this? MSSQL has been out for ages, and it's one of the most well documented servers out there.

The fact that the server can use parallelism is a totally different question than if a particular query can use it though...

S

"Grimlakin, post: 97749, member: 215" wrote:

Yes and no.. it is multithreaded happy but being able to reduce core count to accelerate your threads would a boon for some and save on licensing.


apples and oranges my friend, apples and oranges.

I think SQLserver would be the worst example. AFAIK SQLserver benefits more from more cores than faster cores.

Peter Brosdahl
As a child of the 70’s I was part of the many who became enthralled by the video arcade invasion of the 1980’s. Saving money from various odd jobs I purchased my first computer from a friend of my dad, a used Atari 400, around 1982. Eventually it would end up being a lifelong passion of upgrading and modifying equipment that, of course, led into a career in IT support.

Recent News