From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 91880] Radeonsi on Grenada cards (r9 390) exceptionally unstable and poorly performing Date: Wed, 13 Sep 2017 22:41:15 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1915422548==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 5B4E36E8E6 for ; Wed, 13 Sep 2017 22:41:15 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1915422548== Content-Type: multipart/alternative; boundary="15053424754.b212BDb6.14426"; charset="UTF-8" --15053424754.b212BDb6.14426 Date: Wed, 13 Sep 2017 22:41:15 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D91880 --- Comment #172 from Jon Doane --- (In reply to Thomas DEBESSE from comment #171) > > This sounds a lot like what I've been doing manually which sounds nice. > > Thanks for the input. I honestly would like a solution that doesn't cau= se my > > machine to draw an additional 90 watts at idle though. >=20 > Unlike the kernel patch above, that systemd service is setting the GPU to > "low battery" by default, which is the most energy saving profile. The > provided `dpm query` tool allows you to change that at any time. That's w= hat > I'm doing: at init, my GPU is set to "low battery" profile, and when I ne= ed > to do some heavy time, I do that: >=20 > dpm-query set all high performance >=20 > And then once the heavy task is done, I do that to save energy again: >=20 > dpm-query set all low battery >=20 > With the default config for the service, you just have to add your own us= er > to the "video" group to have the right to change the profile as user. >=20 > So, even if the patch above get merged one day, this service and tool is > still useful, it's an easy way to change the default profile, whatever the > default is. >=20 > Notice that the kernel patch above only set the level to "high", but keep > the state to "balanced", so it's still adaptative. What "high balanced" d= oes > is setting the shader and memory frequencies to the max, which is drawing > more power than default, but you will notice the fan are still idling and > stopped if you do nothing because it's still saving a lot of energy. If y= ou > set "high performance" the fan will almost instantaneously start because > there is no saving anymore. So "high balanced" is less energy saving that > "auto balanced", but is still saving a lot of energy because it does not > have to cold the chip while doing nothing (meaning the chip does nothing > strong enough to get hot). Unless something has changed with how the dpm state is handled, I don't exp= ect that to make the system completely stable. They're more stable than balanced but, it's not stable enough to prevent a crash. I tried by starting off wit= h: echo low > /sys/class/drm/card0/device/power_dpm_force_performance_level The only method that I've had luck with while retaining clock scaling is th= is: echo 234567 > /sys/class/drm/card0/device/pp_dpm_sclk This disables the 300Mhz clock step which seems to work however, I've obser= ved that doing this also forced memory clocks to full tilt instead of idle so, = I'm uncertain if the memory clock or core clock is responsible. Something I've observed is that if my machine crashes and I use the reset button to restart it, that when X loads and if I don't force clocks up, it always crashes and that part of the old image that was on the screen when it initially crashed gets displayed, albeit rather garbled but, enough to iden= tify it which makes me think that it's related to the memory clock or how GPU me= mory is managed. One way or another, I have ways around the problem but, these are hacks that would be considered intolerable solutions by a regular user. --=20 You are receiving this mail because: You are the assignee for the bug.= --15053424754.b212BDb6.14426 Date: Wed, 13 Sep 2017 22:41:15 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Comme= nt # 172 on bug 91880<= /a> from <= span class=3D"fn">Jon Doane
(In reply to Thomas DEBESSE from comment #171)
> > This sounds a lot like what I've been doing=
 manually which sounds nice.
> > Thanks for the input. I honestly would like a solution that doesn=
't cause my
> > machine to draw an additional 90 watts at idle though.
>=20
> Unlike the kernel patch above, that systemd service is setting the GPU=
 to
> "low battery" by default, which is the most energy saving pr=
ofile. The
> provided `dpm query` tool allows you to change that at any time. That'=
s what
> I'm doing: at init, my GPU is set to "low battery" profile, =
and when I need
> to do some heavy time, I do that:
>=20
> dpm-query set all high performance
>=20
> And then once the heavy task is done, I do that to save energy again:
>=20
> dpm-query set all low battery
>=20
> With the default config for the service, you just have to add your own=
 user
> to the "video" group to have the right to change the profile=
 as user.
>=20
> So, even if the patch above get merged one day, this service and tool =
is
> still useful, it's an easy way to change the default profile, whatever=
 the
> default is.
>=20
> Notice that the kernel patch above only set the level to "high&qu=
ot;, but keep
> the state to "balanced", so it's still adaptative. What &quo=
t;high balanced" does
> is setting the shader and memory frequencies to the max, which is draw=
ing
> more power than default, but you will notice the fan are still idling =
and
> stopped if you do nothing because it's still saving a lot of energy. I=
f you
> set "high performance" the fan will almost instantaneously s=
tart because
> there is no saving anymore. So "high balanced" is less energ=
y saving that
> "auto balanced", but is still saving a lot of energy because=
 it does not
> have to cold the chip while doing nothing (meaning the chip does nothi=
ng
> strong enough to get hot).

Unless something has changed with how the dpm state is handled, I don't exp=
ect
that to make the system completely stable. They're more stable than balanced
but, it's not stable enough to prevent a crash. I tried by starting off wit=
h:
echo low > /sys/class/drm/card0/device/power_dpm_force_performance_level

The only method that I've had luck with while retaining clock scaling is th=
is:
echo 234567 > /sys/class/drm/card0/device/pp_dpm_sclk

This disables the 300Mhz clock step which seems to work however, I've obser=
ved
that doing this also forced memory clocks to full tilt instead of idle so, =
I'm
uncertain if the memory clock or core clock is responsible.

Something I've observed is that if my machine crashes and I use the reset
button to restart it, that when X loads and if I don't force clocks up, it
always crashes and that part of the old image that was on the screen when it
initially crashed gets displayed, albeit rather garbled but, enough to iden=
tify
it which makes me think that it's related to the memory clock or how GPU me=
mory
is managed.

One way or another, I have ways around the problem but, these are hacks that
would be considered intolerable solutions by a regular user.


You are receiving this mail because:
  • You are the assignee for the bug.
= --15053424754.b212BDb6.14426-- --===============1915422548== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1915422548==--