• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

How does Xeon Phi get 4 threads per core?

Joined
Apr 27, 2023
Messages
20 (0.05/day)
Location
Noitacol Ave, Smurof, Purewophcet State, Tenretni
System Name ROG Flow X16 / MBP 13 2019
Processor R9 6900HS / i5-8279U
Motherboard Asus GV601RW / MacBook 15,2
Cooling Triple Fan / Dual Fan
Memory 2x16GB DDR5-4800 / 2x4GB LPDDR3-2133
Video Card(s) 680M + 3070 Ti / Iris Plus 655
Storage 1TB / 256GB
Display(s) 2560x1600 165Hz 16" / 2560x1600 60Hz 13"
Case ROG Flow X16 GV601 / MacBook Pro 13 2019
Audio Device(s) Bose Noise Cancelling Headphones 700
Power Supply 240W / 61W
Mouse Xiaomi Silent Mouse
Keyboard Chiclet Keyboard / Butterfly keyboard
Software Windows 11 / MacOS Monterey
I was looking through the CPU database today and found Xeon Phi's to seemingly have four threads per core, how does that work? As far as I know, HT only goes up to 2 threads.
 
Joined
Apr 24, 2020
Messages
2,563 (1.75/day)
Same way as POWER9's implementation of hyperthreading goes up to 8 threads per core. They changed the hardware to support more threads.

Dunno how else to say it. Why does a gearbox have 5 gears when the last version had 4 gears and some other car has 6 gears? Well... because there's 5 gears in this gearbox.

-----------

NVidia supports like 8 warps per SM or something like that, and AMD Vega supports like 32 wavefronts per CU. Etc. etc. All these numbers are arbitrary, 2 threads per core, 4-threads, 8-threads, or more and more. Its whatever the computer designer thought might be best.
 
Joined
Nov 26, 2021
Messages
1,352 (1.53/day)
Location
Mississauga, Canada
Processor Ryzen 7 5700X
Motherboard ASUS TUF Gaming X570-PRO (WiFi 6)
Cooling Noctua NH-C14S (two fans)
Memory 2x16GB DDR4 3200
Video Card(s) Reference Vega 64
Storage Intel 665p 1TB, WD Black SN850X 2TB, Crucial MX300 1TB SATA, Samsung 830 256 GB SATA
Display(s) Nixeus NX-EDG27, and Samsung S23A700
Case Fractal Design R5
Power Supply Seasonic PRIME TITANIUM 850W
Mouse Logitech
VR HMD Oculus Rift
Software Windows 11 Pro, and Ubuntu 20.04
I was looking through the CPU database today and found Xeon Phi's to seemingly have four threads per core, how does that work? As far as I know, HT only goes up to 2 threads.
No, simultaneous multi-threading or hyper threading in the Intel parlance, can go beyond two threads. For our common chips, 2 threads are reasonable as these CPUs are focused on minimizing latency. If you can afford to sacrifice latency for throughput, then increasing the number of simultaneously executing threads is the way to go. Power 8 can execute 8 threads simultaneously. For Knights Landing, SMT improves performance in many workloads as Chips and Cheese found out. I would recommend reading the entire article.

1685720583354.png
 
Joined
Mar 21, 2021
Messages
4,403 (3.89/day)
Location
Colorado, U.S.A.
System Name HP Compaq 8000 Elite CMT
Processor Intel Core 2 Quad Q9550
Motherboard Hewlett-Packard 3647h
Memory 16GB DDR3
Video Card(s) Asus NVIDIA GeForce GT 1030 2GB GDDR5 (fan-less)
Storage 2TB Micron SATA SSD; 2TB Seagate Firecuda 3.5" HDD
Display(s) Dell P2416D (2560 x 1440)
Power Supply 12V HP proprietary
Software Windows 10 Pro 64-bit
I always thought that more than two threads made no sense; the first thread might occupy the core to say 75% and the second thread a good part of the remaining 25%, so I never saw the logic in further threads.
 
Joined
Nov 26, 2021
Messages
1,352 (1.53/day)
Location
Mississauga, Canada
Processor Ryzen 7 5700X
Motherboard ASUS TUF Gaming X570-PRO (WiFi 6)
Cooling Noctua NH-C14S (two fans)
Memory 2x16GB DDR4 3200
Video Card(s) Reference Vega 64
Storage Intel 665p 1TB, WD Black SN850X 2TB, Crucial MX300 1TB SATA, Samsung 830 256 GB SATA
Display(s) Nixeus NX-EDG27, and Samsung S23A700
Case Fractal Design R5
Power Supply Seasonic PRIME TITANIUM 850W
Mouse Logitech
VR HMD Oculus Rift
Software Windows 11 Pro, and Ubuntu 20.04
I always thought that more than two threads made no sense; the first thread might occupy the core to say 75% and the second thread a good part of the remaining 25%, so I never saw the logic in further threads.
It depends upon what the machine is expected to run. A lot of commercial applications have low ILP; even the widest CPU may struggle to get more than 0.5 IPC for these workloads. For such tasks, increasing the number of threads is an excellent way to increase throughput while keeping die size In check compared to adding more cores.
 
Joined
Apr 24, 2020
Messages
2,563 (1.75/day)
I always thought that more than two threads made no sense; the first thread might occupy the core to say 75% and the second thread a good part of the remaining 25%, so I never saw the logic in further threads.

It depends on the workload, and the architecture.

If the first thread is 100% memory operations, then it actually uses like 1%, maybe 0.5% of the core, as memory operations are 99%+ waiting for DDR4 and/or DDR5 to execute. While one thread is all memory, the 2nd thread could be CPU-heavy AVX instructions, which would use up 100% of the core.

So the split in practice is Thread#1 is 1% and Thread#2 is 99%.

Later, when Thread#2 becomes memory heavy (usually code reads/writes to memory, then computes, then reads/writes to memory later), Thread#1 becomes compute-heavy. So then it switches to 99% Thread#1 and 1% Thread#2.

All the while, neither Thread#1 nor Thread#2 experience any slowdown. You see, they would have been "waiting for memory anyway" and sitting idle.
 
Joined
Apr 27, 2023
Messages
20 (0.05/day)
Location
Noitacol Ave, Smurof, Purewophcet State, Tenretni
System Name ROG Flow X16 / MBP 13 2019
Processor R9 6900HS / i5-8279U
Motherboard Asus GV601RW / MacBook 15,2
Cooling Triple Fan / Dual Fan
Memory 2x16GB DDR5-4800 / 2x4GB LPDDR3-2133
Video Card(s) 680M + 3070 Ti / Iris Plus 655
Storage 1TB / 256GB
Display(s) 2560x1600 165Hz 16" / 2560x1600 60Hz 13"
Case ROG Flow X16 GV601 / MacBook Pro 13 2019
Audio Device(s) Bose Noise Cancelling Headphones 700
Power Supply 240W / 61W
Mouse Xiaomi Silent Mouse
Keyboard Chiclet Keyboard / Butterfly keyboard
Software Windows 11 / MacOS Monterey
No, simultaneous multi-threading or hyper threading in the Intel parlance, can go beyond two threads. For our common chips, 2 threads are reasonable as these CPUs are focused on minimizing latency. If you can afford to sacrifice latency for throughput, then increasing the number of simultaneously executing threads is the way to go. Power 8 can execute 8 threads simultaneously. For Knights Landing, SMT improves performance in many workloads as Chips and Cheese found out. I would recommend reading the entire article.

View attachment 298893
Oh, I didn't know that. Always thought only 2 threads per core was possible with HT, guess I learned something new today:)
 
Top