my question to you is this - is it the "taskmgr.exe" process (the task manager itself) that consumes an entire CPU core when MW@H is running,
Yes , MW seperator shows about 1-2%
if F@H only consumes 80-90% of the CPU while MW@H is running, then some other process (or processes) is consuming the remaining 10-20% of the CPU...
Yes, & as I mentioned, as measured by Task Info 2000 (yes its ancient lol), the remainder is used by various background tasks, TI2000 itself uses ~3%, but only when MW is running. MW seperator itself supposedly uses less than 1%!
hmm...this is a new one for me - i've never seen the task manager itself consume a full CPU core (or even a significant fraction of a core), regardless of what other applications and processes were running at the time. you are correct that a MW@H GPU Separation task should consume less than 1% of the CPU (or less than 4% of a single core on a quad-core CPU). let me ask you this - when you look at a MW@H task running in the BOINC manager, does it say "Running (0.05 CPUs + 1.00 ATI GPUs)"? these numbers aren't actual CPU and GPU consumption readings - they're estimates of what the application
should consume CPU-wise and GPU-wise. sometimes when people have high CPU usage problems, the CPU consumption estimate as displayed by BOINC will often also read high, for example 0.25 CPUs or 0.50 CPUs...i just want to make sure your tasks aren't displaying abnormally high CPU usage estimates in BOINC.
what has me stumped is that fact that its not the MW@H task consuming most of a single core - its the task manager itself. the fact that the MW@H task is consuming 1-2% of the CPU (and not < 1% like it should be) in and of itself isn't that big a deal - its the fact that whenever MW@H is running, its causing other processes to consume a full core, or 25% of the CPU. i've never seen anything like this w/ MW@H before.
the only other thing i can think of that will definitely allow you to play w/ CPU usage is to use the app_info.xml file you wanted to avoid using. as you already know, the --cpu-target-frequency cmdline parameter should allow you to improve GUI lag at the expense of crunching efficiency, and vice versa. i'm not too familiar w/ the --gpu-wait-factor and --gpu-polling-mode cmdline parameters, as i've never had to use them before. but you're supposed to be able to use polling mode to cut down on CPU usage without sacrificing crunching efficiency or increasing task run times. here's a quote from Matt on the MW@H forums about it:
I've updated all of the separation applications to 1.00. For changes people might care about,
- The old CAL version is gone; it's replaced with the OpenCL application. On AMD/ATI GPUs (older than 79xx) it is using some hackery to use the same IL kernel as before so it should be as fast. However this also means the Radeon 38xx cards aren't supported with new stuff.
- Radeon 79xx stuff should work
- The occasional validate errors from empty / truncated stderr should stop
- AVX will be used if available on Linux and Windows (64 bit only for Windows)
- I've increased the default GPU target frequency [to 60] so GPU stuff should make things less laggy on average. You can now also configure this with the web preferences now so you don't need to use app_info stuff if you want to play with that.
- Partial workaround with high CPU usage with recent Nvidia drivers.*
As usual post problems you run into here.
* It should cut down on the CPU usage a bit while not sacrificing too much. I would recommend not using it unless you are very unhappy with the CPU usage on Nvidia. There are options to change the polling mode if you want to lower the CPU usage further while not slowing it down. (--gpu-wait-factor (default = 0.75) and --gpu-polling-mode (default = - 2) work similarly to how they did with the old CAL one, but slightly different). With the default of -2 it will use mode -1 unless it is an Nvidia driver newer than the one that introduced the high CPU issue, where it will use mode 0. Mode -1 uses the correct waiting method, mode 0 use the correct waiting method with an initial sleep based on time estimates, and modes > 0 are a polling period in milliseconds. The wait factor is a sort of correction of the time estimate used for the initial wait. The default is 0.75, to wait for 75% of the estimated time before trying to poll.
...granted, i guess Matt intended the --gpu-wait-factor and --gpu-polling-mode cmdline parameters for nVidia users w/ unusually high CPU consumption. but i don't see why these parameters wouldn't do the same thing for ATI/AMD cards. so maybe it's worth a try, if you're willing to use an app_info.xml, if only for experimentation at first. i have a full app_info.xml i can post for you if you'd like, so let me know if you're interested...