Directing Traffic to Maximize the Use of Hybrid Chips

‘Behind the Builders:’ Senior Principal Engineer Rajshree Chabukswar explains how Intel Thread Director decides which cores on a computer chip work best for different workloads.

author-image

By

Senior Principal Engineer Rajshree Chabukswar points to hospitals or Formula One race cars when explaining the technology she helped develop along with hardware architecture and operating system (OS) teams at Intel.

It’s called Intel® Thread Director, and it was unveiled during August’s Intel Architecture Day. It basically makes sure a new breed of “hybrid” computer chips assigns the right threads, or workloads, to the right types of processor cores.

She explains: Let’s say a player injures a leg in a soccer game and must go to the hospital. The hospital has two doctors available: a family practitioner and an orthopedic surgeon. The hospital administrator assigns the patient to the orthopedic specialist who knows more about sprains, broken bones or ligament damage – ensuring the patient gets optimal treatment.

“Thread Director is the same way as the hospital assignment system,” Chabukswar explains. “It looks at all these low-level stats to figure out which software thread will get the most benefit from Performance-cores and which ones are more suited for Efficient-cores.”

Intel’s newest hybrid architecture mixes Efficient-cores and Performance-cores. Alder Lake, Intel’s latest system-on-chip (SoC) for PCs, will be the first computer chip to use the combination of these cores and Intel Thread Director.

“With traditional operating systems, if you have 16 threads running and you have 16 cores, the OS doesn't know which thread would get more benefit and performance going to which cores,” says Chabukswar. “This is where Thread Director comes in. It adds that richness to make optimized scheduling recommendations. And it’s not software layers making the decision. It’s in the hardware, tracking run-time telemetry at nanosecond granularity and helping software make the right decisions.”

Hardware and Software Working Together

After receiving her master’s degree from Syracuse in computer engineering, Chabukswar, now a mother of 7-year-old twins, joined Intel 20 years ago. She was interested in optimizing software for customers, a role she has been in from the onset. Her team in Intel’s Client Computing Group “brings a different perspective to future cores and platforms” as they work with software partners to identify common performance, power and user experience bottlenecks.

In 2019, Chabukswar and Intel’s OS software teams traveled to Israel to work with the Alder Lake hardware architecture team to figure out Thread Director.

“While our team fixes immediate issues by targeted software optimizations,” she says, “we also collaborate with hardware teams and architects to feed software analysis back into future hardware design considerations.”

Chabukswar said when she and software teams joined forces with the hardware team in Israel, they knew the OS on these new P-cores and E-cores needed to handle a wide range of common client activities, such as gaming, streaming, content creation and productivity.

That wide range of usages, she explains, illustrates the need for this new hybrid approach. While many of the most demanding applications run great on one or a few cores, an emerging set of applications will use as many cores as available. A hybrid design like Alder Lake provides an answer to both.

They also “wanted to eliminate the need for software developers to have to re-write their existing code,” and to remove the overhead of handling the scheduling task in software.

“The team quickly realized only a hardware solution could meet all these requirements,” Chabukswar says.

With that, Intel Thread Director was born.

Helping the OS Make More Intelligent Decisions

The tech, Chabukswar explains, allows the chip to provide smarter assistance to the OS by monitoring the instruction mix, the current state of each core and the relevant microarchitecture telemetry at a granular level. This, she says, “allows the OS to utilize information it didn’t previously have and visibility into at the time of making its scheduling decisions.”

Traditionally, the OS would have made decisions based on the limited information that was available, such as foreground versus background but without other insights when the number of foreground threads was more than the number of P-cores. Thread Director adds a new dimension with hardware telemetry, so threads that would benefit most from P-cores are assigned to those first.

A Formula One Race Car

Taking us to the finish line, think of a Formula One race car as you think about Thread Director.

A hybrid streetcar uses hybrid technology to get the most miles out of a tank of gas. The conventional notion of hybrid computing aims to get the most hours out of a battery. Formula One speedsters use hybrid technology also for performance. Their turbocharged engines give them top speeds and adequate gas mileage to complete a race on a tank of gas, but they’re also equipped with electric power to blast them out of corners with acceleration that cannot be achieved with conventional engines.

“Formula One cars are not sacrificing performance over efficiency,” Chabukswar says. “And we are not trading off performance for power with our hybrid designs.”

‘It’s the Journey that Matters’

Chabukswar is an avid hiker, having trekked along the ridgelines of California’s Half Dome, Mount Whitney and Mount Diablo, to name a few. She often climbs with her husband and children “to spend time with each other without electronic distractions.” But the hobby, she adds, helps build the right attitude applicable to work.

“When I look at Thread Director and having collaborated with hardware architecture and design teams, machine learning and OS groups to bring out the goodness in Alder Lake,” she says, “it’s the journey that matters.”