Ricardo Hassan
Ricardo Hassan

Reputation: 31

How does Intel Xeon CPU handle cores contending for AVX units?

I'm designing a signal processing application to run an an Intel Xeon CPU using linux. It will have several parallel threads, each allocated to it's own core. Each will also use the IPP library to speed up calculations using the AVX units. What will happen if I run more AVX unit dependent threads that there are AVX units? Will threads just block until an AVX unit is available? Can they be shared somehow? Something more sinister?

Upvotes: 2

Views: 294

Answers (1)

A Fog
A Fog

Reputation: 4608

Each core can run two threads. It is likely that the operating system will put two threads in the same core if you run many threads and do not explicitly assign threads to different cores. Two threads running in the same core will compete for the same execution units. If execution unit throughput is a bottleneck then there is no advantage in hyperthreading.

Upvotes: 1

Related Questions