• 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
22 (0.03/day)
Location
Noitacol Ave, Smurof, Purewophcet State, Tenretni
System Name 2029 pc
Processor Ryzen 9 13800X3D
Motherboard ROG Strix X1270-F Gaming WiFi 7
Cooling DeepCool AK700
Memory 2 x G.Skill Trident Z6 Neo 16GB
Video Card(s) Radeon 10800 XT
Storage WD SN1150X 4TB
Display(s) 3840x2160 240Hz
Case Fractal Meshify 5
Audio Device(s) things
Power Supply 850W
Mouse something
Keyboard thing
Software doors 11
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,866 (1.57/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,878 (1.50/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
5,472 (3.65/day)
Location
Colorado, U.S.A.
System Name CyberPowerPC ET8070
Processor Intel Core i5-10400F
Motherboard Gigabyte B460M DS3H AC-Y1
Memory 2 x Crucial Ballistix 8GB DDR4-3000
Video Card(s) MSI Nvidia GeForce GTX 1660 Super
Storage Boot: Intel OPTANE SSD P1600X Series 118GB M.2 PCIE
Display(s) Dell P2416D (2560 x 1440)
Power Supply EVGA 500W1 (modified to have two bridge rectifiers)
Software Windows 11 Home
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,878 (1.50/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,866 (1.57/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
22 (0.03/day)
Location
Noitacol Ave, Smurof, Purewophcet State, Tenretni
System Name 2029 pc
Processor Ryzen 9 13800X3D
Motherboard ROG Strix X1270-F Gaming WiFi 7
Cooling DeepCool AK700
Memory 2 x G.Skill Trident Z6 Neo 16GB
Video Card(s) Radeon 10800 XT
Storage WD SN1150X 4TB
Display(s) 3840x2160 240Hz
Case Fractal Meshify 5
Audio Device(s) things
Power Supply 850W
Mouse something
Keyboard thing
Software doors 11
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