OK that explains why using that feature always slowed down my games. I turned off HT in the BIOS and now the feature doesn't cause slowdown. (Did this out of curiosity.)
What would ever be the advantage in locking threads to cores? Why would that ever be better/worse than the software switching cores at will?
Maybe you want to use the other cores exclusively for something else? Like fraps.
You don't need to disable Hyper-Threading, just disable "Lock threads to cores" as I mentioned above and it won't cause slowdowns.
There's really no advantage to leaving this option enabled, all it does is prevent the Dolphin process from jumping between cores and locks the process to the first two cores/threads. Since the video thread in Dolphin is being locked to the non-physical core/thread it decreases performance in Dolphin. The Lock threads to cores option is only ever useful if you are multi-tasking while running Dolphin and want to have the other cores free for whatever else. Some people enable lock threads to cores and then use the other two cores for running fraps or another emulator.
(12-06-2010, 07:00 AM)xenofears Wrote: [ -> ]Dolphin's only using about 50% of 4/8 HT cores (that's what it looks like), giving 25% total CPU usage. What gives?
Dual-Core in on, Lock Threads off, DSPLLE on Thread off, SVN 6441 SSE4.2 64-bit.
that is because dolphin only utilizes 2 cores... so the maximum cpu usage you will get on a quadcore cpu is 50% usage.
hyperthreading seems like a useless feature to me because a physical core is going to be able to handle multiple threads anyway. for instance, running a multi-threaded program in 8 threads on a quad-core processor would have to be less efficient than running the same program in 4 threads. One of the 8 threads would undoubtedly have to stop doing something and wait on one of the other 7 threads at some point. Whereas, with 4 threads, you would run into the issue of waiting on other threads half as much. it would be like carrying two book bags with 3 books in each instead of 1 book bag with 6 books. i'm not seeing how that could be beneficial.
I'd presume Intel's engineers must have had some kind of rationale behind it...
Well doubling the number of logical cores per physical core (hyperthreading) can double performance per clock in certain applications like video encoders where pipeline stalls are common.
Ok so now what we gotta do? I enable Lock thread or not ? (I have a core i7 too).
But I don't get it. Nobody planed one day to make Dolphin use 4 cores, so we can get more performance or it's not possible?
Do not lock threads to cores if you have an i3/i5/i7.
Quote:But I don't get it. Nobody planed one day to make Dolphin use 4 cores, so we can get more performance or it's not possible?
Possible? Yes. Practical? Hell no. You could move dsp emulation onto its own thread but the speedup achieved from that would likely be under 10% and would require massive amounts of work and create desyncing problems. The short answer is no, it's not going to happen, and for good reasons.