From: "Christian König" <deathsimple@vodafone.de>
To: Lauri Kasanen <cand@gmx.com>
Cc: "dri-devel@lists.freedesktop.org" <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH] drm/radeon: Inline r100_mm_rreg
Date: Fri, 11 Apr 2014 14:32:20 +0200 [thread overview]
Message-ID: <5347E0D4.3040205@vodafone.de> (raw)
In-Reply-To: <20140411125417.ce34db7e.cand@gmx.com>
Am 11.04.2014 11:54, schrieb Lauri Kasanen:
> On Fri, 11 Apr 2014 10:33:08 +0200
> Christian König <deathsimple@vodafone.de> wrote:
>
>>>> Actually direct register access shouldn't be necessary so often. Apart
>>>> from page flips, write/read pointer updates and irq processing there
>>>> shouldn't be so many of them. Could you clarify a bit more what issue
>>>> you are seeing here?
>>> Too much cpu usage for such a simple function. 2% makes it #2 in top-10
>>> radeon.ko functions, right after evergreen_cs_parse. For reference, #3
>>> (radeon_cs_packet_parse) is only 0.5%, one fourth of this function's
>>> usage.
>> I think you misunderstood me here. I do believe your numbers that it
>> makes a noticeable difference.
>>
>> But I've did a couple of perf tests recently on SI and CIK while hacking
>> on VM support, and IIRC r100_mm_rreg didn't showed up in the top 10 on
>> those systems.
>>
>> So what puzzles me is who the hack is calling r100_mm_rreg so often that
>> it makes a noticeable difference on evergreen/NI?
> The biggest caller is cayman_cp_int_cntl_setup. Before inlining it took
> 0.0013%, after it takes 1%.
Sounds like somebody is constantly turning interrupts on and off.
> This is on a Richland APU, so Aruba/Cayman. Urban Terror is an ioq3
> game with a lot of cpu-side vertex submissions.
That will probably be the difference, I only tested lightsmark.
Anyway, I would do like Ilia suggested and only put the else branch into
a separate, not inlined function.
BTW: It's probably a good idea to do the same for the write function as
well.
Christian.
> - Lauri
next prev parent reply other threads:[~2014-04-11 12:32 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-10 13:08 [PATCH] drm/radeon: Inline r100_mm_rreg Lauri Kasanen
2014-04-10 16:19 ` Ilia Mirkin
2014-04-10 18:46 ` Lauri Kasanen
2014-04-10 18:52 ` Ilia Mirkin
2014-04-10 19:30 ` Christian König
2014-04-11 7:52 ` Lauri Kasanen
2014-04-11 8:33 ` Christian König
2014-04-11 9:54 ` Lauri Kasanen
2014-04-11 12:32 ` Christian König [this message]
2014-04-11 16:47 ` Lauri Kasanen
2014-04-11 17:38 ` Lauri Kasanen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5347E0D4.3040205@vodafone.de \
--to=deathsimple@vodafone.de \
--cc=cand@gmx.com \
--cc=dri-devel@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.