So, I have been trying to google for this answer, but I cannot find a direct technical answer to the question. (Or if it did, it was in a confusing way)
So, say you have a program/game that uses 2 threads, and only 2 threads. With a quad-core CPU and hyper threading on, will it always know to still use two PHYSICAL cores instead of just 2 threads, using 50% of the cpu instead of 25% of it? Does Hyper-threading every cause problems of this type, artificially using half of what it really could/should do? How does Windows know how to handle all of this?
Does having the cores split up in threads decrease the efficiency vs. using 1 thread for 1 core, is essentially what I'm asking. I have seen some discussions and benchmarks related to hyper threading not affecting performance too much in one way or the other, but I am curious how it works.
Thanks! Sorry if the way I asked the question was odd, just trying to be clear over concise.
So, say you have a program/game that uses 2 threads, and only 2 threads. With a quad-core CPU and hyper threading on, will it always know to still use two PHYSICAL cores instead of just 2 threads, using 50% of the cpu instead of 25% of it? Does Hyper-threading every cause problems of this type, artificially using half of what it really could/should do? How does Windows know how to handle all of this?
Does having the cores split up in threads decrease the efficiency vs. using 1 thread for 1 core, is essentially what I'm asking. I have seen some discussions and benchmarks related to hyper threading not affecting performance too much in one way or the other, but I am curious how it works.
Thanks! Sorry if the way I asked the question was odd, just trying to be clear over concise.