Running tasks on an APU

Message boards : Questions and problems : Running tasks on an APU
Message board moderation

To post messages, you must log in.

1 · 2 · Next

AuthorMessage
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75035 - Posted: 31 Dec 2016, 9:17:03 UTC
Last modified: 31 Dec 2016, 9:17:49 UTC

I am running BOINC 7.6.33 on Windows 10 64-bit on an APU (A6-6400k).
Now the issue is that when I add projects I get both CPU and GPU tasks and as this APU has 2 CPU cores and 1 GPU, I am able to run 3 tasks at a time (2 on CPU and 1 on GPU). Somehow when I run all three tasks my CPU frequency keeps on changing and is not stable, but when I only run the CPU tasks the frequency is stable.

All I want is that my system runs at full potential at all times and that unstable frequency does not look good to me. I want to run both CPU and GPU tasks at my system's maximum potential.
ID: 75035 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15477
Netherlands
Message 75037 - Posted: 31 Dec 2016, 9:48:16 UTC - in response to Message 75035.  

Most OpenCL applications like it best when they have a full CPU core for themselves, not to share it with CPU work running on it. So in this case, to stabilize things, you may have to reduce the "Use at most N% of the CPUs" to 50%, to tell BOINC to use only one CPU core and leave the other free for the GPU.

If you still want to be fully loading all CPU cores and the GPU, you'll need a better CPU and a separate (not built-into the CPU or motherboard) GPU. And even then running OpenCL work on such a GPU likes one CPU core free.
ID: 75037 · Report as offensive
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75039 - Posted: 31 Dec 2016, 10:33:13 UTC - in response to Message 75037.  

Done what you suggested, but still the frequency dips and is not stable.
ID: 75039 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15477
Netherlands
Message 75040 - Posted: 31 Dec 2016, 10:44:21 UTC - in response to Message 75039.  

Is it switching between 3.9GHz and 4.1GHz? The latter is the Turbo that's built into the CPU. It can be disabled from the BIOS/UEFI.
If you see a different lower speed than the 3.9GHz, it's possible the chip has an idle-low power speed.

If that's the case, check that you aren't throttling BOINC (Use at most N% of CPU Time < 100%)
ID: 75040 · Report as offensive
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75041 - Posted: 31 Dec 2016, 11:50:28 UTC - in response to Message 75040.  
Last modified: 31 Dec 2016, 11:51:10 UTC

The CPU frequency goes as low as 3.0GHz and as high as 4.1GHz and it keeps fluctuating between this range. This is only resolved when I do not run any GPU tasks, then its a solid 4.1GHz.
If that's the case, check that you aren't throttling BOINC (Use at most N% of CPU Time < 100%)

I tried it on 50% and 100% but still the frequency keeps on fluctuating on both settings, also if I run the GPU task exclusively then also the frequency fluctuates. The GPU task is from seti@home, maybe application specific issue?
ID: 75041 · Report as offensive
Juha
Volunteer developer
Volunteer tester
Help desk expert

Send message
Joined: 20 Nov 12
Posts: 801
Finland
Message 75059 - Posted: 2 Jan 2017, 16:36:55 UTC - in response to Message 75035.  

How hot it runs? Running GPU tasks adds a lot of heat and the chip could be doing thermal throttling.
ID: 75059 · Report as offensive
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75074 - Posted: 3 Jan 2017, 5:37:01 UTC - in response to Message 75059.  
Last modified: 3 Jan 2017, 5:43:36 UTC

I have AMD Overdrive installed on my computer and according to it the APU is working well in its thermal limits.
Thermal margin is about 50℃, I don't think that it's thermal throttling because when a 2 CPU task(Cosmology@home) runs along with a GPU task I get a stable 4.1 GHz. This erratic clock speed is present only when two different CPU tasks are running with a GPU task or only GPU task is running.
ID: 75074 · Report as offensive
Juha
Volunteer developer
Volunteer tester
Help desk expert

Send message
Joined: 20 Nov 12
Posts: 801
Finland
Message 75129 - Posted: 6 Jan 2017, 20:40:12 UTC - in response to Message 75074.  

Maybe the OS thinks it doesn't need to run the CPU at full speed all the time. Changing the OS power plan to maximum performance might stabilise the frequency.

If you want to run the CPU at 4.1 GHz always I think you should just set manual overclock. The turbo boost thing is essentially automatic overclocking. The chip might not be happy about something and drop frequency even if you don't see anything wrong anywhere. When running only one task the i5 on my laptop runs between 2.69 and 2.79 GHz. I think I read somewhere that when running AVX code Intel's processors drop the boost frequency one notch. And then when I run two or more tasks it practically never goes to 2.79 GHz any more. If I run the laptop on battery or load both CPU and GPU hard the frequency drops even more and HWiNFO lists some voltage and current reasons for the reduced speed.
ID: 75129 · Report as offensive
Raistmer

Send message
Joined: 9 Apr 06
Posts: 302
Message 75135 - Posted: 7 Jan 2017, 12:59:24 UTC
Last modified: 7 Jan 2017, 13:01:02 UTC

CPU throttling (and GPU throttling/overclocking also!) can take place not only due to thermal reasons but for allowed max power consumption also.
So, even if APU well-cooled it can reduce CPU frequency in case of too much current consumption (will be in case of running GPU app also). From other side, there can be turbo-boost option that can increase CPU (and/or) GPU frequency if current load and temperature allow.
For desktop devices such boost can be regulated via BIOS. For some notebooks it's completely firmware-driven and can't be disabled w/o special software (can be unavailable for particular model).

For example, A10-5700 in MSI board has option to disable boost completely and CPU part will operate on 3400MHz no matter what real load is.
Another example is Acer C-60 based netbook where all regulation completely in firmware.
Fortunately, there is special software that allows to change CPU Power (P#) states. So, frequency change in CPU can be eliminated. But no such software for GPU part of C-60 so GPU will be boosted (there is thermal throttling of CPU but it can be avoided by proper external cooling) completely in auto-mode.
ID: 75135 · Report as offensive
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75146 - Posted: 8 Jan 2017, 6:02:04 UTC - in response to Message 75129.  
Last modified: 8 Jan 2017, 6:05:03 UTC

Juha, the OS power plan is already set to maximum performance and I tried disabling turbo core from AMD OverDrive and setting the clock speed to 4.1Ghz but still it was not stable and dipped as low as 3GHz.

Raistmer, could you tell me the software which I can use to eliminate CPU frequency fluctuation?
ID: 75146 · Report as offensive
Raistmer

Send message
Joined: 9 Apr 06
Posts: 302
Message 75160 - Posted: 9 Jan 2017, 18:59:18 UTC - in response to Message 75146.  


Raistmer, could you tell me the software which I can use to eliminate CPU frequency fluctuation?

On C-60 netbook I use BrazosTweaker for that.
ID: 75160 · Report as offensive
Juha
Volunteer developer
Volunteer tester
Help desk expert

Send message
Joined: 20 Nov 12
Posts: 801
Finland
Message 75163 - Posted: 9 Jan 2017, 20:54:33 UTC - in response to Message 75146.  

Before locking the CPU frequency I'd try to find out why it's dropping. If there is, say, problems with voltage stability you are risking your system stability if you prevent the CPU from adjusting the frequency. Like I said, HWiNFO lists quite a few possible reasons for an i5, I'm not sure how much information AMD's CPUs give. There are surely other similar programs, that's just an example. Likewise GPU-Z tells my 940MX is capped by VRel=Limit by reliability voltage and VOp=Limit by operating voltage.
ID: 75163 · Report as offensive
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75168 - Posted: 10 Jan 2017, 5:25:19 UTC - in response to Message 75163.  

Ok, so did a bit of troubleshooting myself and decided to test out other GPU applications. To do this I got myself enrolled with the PrimeGrid project as they have applications for AMD GPUs.

Now currently a PrimeGrid task is running on GPU and two pogs tasks are running on CPU cores and to my surprise the clock speed is now stable. It has dropped only to 3.9GHz for a very short period which I guess is okay. So I think this issue was with SETI@home's GPU applications.
ID: 75168 · Report as offensive
Raistmer

Send message
Joined: 9 Apr 06
Posts: 302
Message 75196 - Posted: 11 Jan 2017, 12:12:28 UTC - in response to Message 75168.  

Ok, so did a bit of troubleshooting myself and decided to test out other GPU applications. To do this I got myself enrolled with the PrimeGrid project as they have applications for AMD GPUs.

Now currently a PrimeGrid task is running on GPU and two pogs tasks are running on CPU cores and to my surprise the clock speed is now stable. It has dropped only to 3.9GHz for a very short period which I guess is okay. So I think this issue was with SETI@home's GPU applications.

If CPU freq dropped before and now stays high it says most probably about current/power overall consumption restrictions (provided cooling is already tested and OK).
That would mean SETI app consumes more power for processing. Can be in the case of its better optimization (better GPU usage, less stalls).
Usually it also express itself in GPU temperature (at constant fan airflow). So check if your new GPU apps can heat GPU as much as SETI can.
ID: 75196 · Report as offensive
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75203 - Posted: 11 Jan 2017, 17:28:10 UTC - in response to Message 75196.  
Last modified: 11 Jan 2017, 17:29:19 UTC

Thermal throttling should not be an issue as CPU temps are way under its thermal limits when running full load and as for the GPU it seems it doesn't have an appropriate thermal sensor as I get absurd readings.
I use AMD OverDrive and HWMonitor for monitoring various parameters. One discrepancy is present between the CPU load percent provided by the HWMonitor/AMD OverDrive and Windows Task Manager. I have noticed that when the clock speed is fluctuating Windows Task Manager states that CPU is loaded only 80% whereas HWMonitor and AMD OverDrive report 100% CPU load. Clock speed shown by Task Manger and HWMonitor/AMD OverDrive is identical.
Also when I have a stable clock speed both Task Manager and HWMonitor report 100% CPU load.
I think maybe somehow Windows 10 is creating this issue, it thinks that the CPU is not fully loaded and hence reduces the CPU clock speed.

I don't know if this is related but it was super annoying, today when I rebooted my computer and then ran BOINC the clock speed was around 1.7 Ghz, Task Manager shows 45% load whereas HWMonitor 100% load. This was resolved by completely shutting down the computer and then turning it back on. (CPU was under its thermal limits)
ID: 75203 · Report as offensive
Juha
Volunteer developer
Volunteer tester
Help desk expert

Send message
Joined: 20 Nov 12
Posts: 801
Finland
Message 75207 - Posted: 11 Jan 2017, 20:36:39 UTC - in response to Message 75203.  
Last modified: 11 Jan 2017, 20:43:55 UTC

I think that previously Windows' Task Manager has defined 100% as all cycles used at the current speed and now it's defined as all cycles used of the maximum non-boost non-overclocked speed.

edit:

I tried setting power plan to high performance and suspended BOINC. The CPU staid at the maximum turbo boost frequency. How your system reacts when you suspend BOINC?
ID: 75207 · Report as offensive
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75212 - Posted: 12 Jan 2017, 3:25:27 UTC - in response to Message 75207.  

My system too stays at maximum speed after suspending BOINC. This is also true when I only suspend GPU.
ID: 75212 · Report as offensive
Juha
Volunteer developer
Volunteer tester
Help desk expert

Send message
Joined: 20 Nov 12
Posts: 801
Finland
Message 75299 - Posted: 13 Jan 2017, 18:34:29 UTC - in response to Message 75212.  

Ok. I think the power plan is set up correctly and I don't think it's Windows having issues. It's probably as Raistmer said running the CPU and GPU both can exceed the CPU+GPU package's total power limit.

On my i5 running CPU only uses about 12 watts, GPU only about 7 watts and then there's RAM about 2 watts. The package is configured for 15 watts so clearly I can't have both CPU and GPU run at full speed. I tried loading them both and the system reduced their speed so that the total power remained just under 15 watts. Neither one was running particularly hot.
ID: 75299 · Report as offensive
Clark
Avatar

Send message
Joined: 17 Dec 16
Posts: 23
India
Message 75308 - Posted: 14 Jan 2017, 11:19:59 UTC - in response to Message 75299.  

So you mean to say that collectively CPU and GPU draw much more power on full load than they are designed for? Aren't these chips designed and tested to be on full load at all times?

Also this doesn't explain the fact that I was able to run PrimeGrid task and two CPU tasks at the same time with CPU and GPU both under 100% utilization without CPU being "power throttled".
ID: 75308 · Report as offensive
Richard Haselgrove
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 5077
United Kingdom
Message 75309 - Posted: 14 Jan 2017, 11:28:45 UTC - in response to Message 75308.  

I would imagine that PrimeGrid is performing almost exclusively integer mathematics, allowing the CPU's floating point unit to draw close to zero power.

You would very sophisticated monitoring software (or a thermal imaging camera) to find out which logical part(s) of your CPU package are actually running at that full 100%.
ID: 75309 · Report as offensive
1 · 2 · Next

Message boards : Questions and problems : Running tasks on an APU

Copyright © 2024 University of California.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.