From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
To: Rob Clark <robdclark@gmail.com>
Cc: igt-dev@lists.freedesktop.org, Rob Clark <robdclark@chromium.org>,
Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Subject: Re: [igt-dev] [PATCH igt 1/2] lib/igt_drm_fdinfo: Parse memory usage
Date: Fri, 14 Apr 2023 09:27:38 +0100 [thread overview]
Message-ID: <0cfabc58-d15d-bffe-c8ec-d40d10d7e6c3@linux.intel.com> (raw)
In-Reply-To: <CAF6AEGtqL-XGH3vpcmwSSDjsgCbnphsDbN8vL5BL55kS1D05Ug@mail.gmail.com>
On 13/04/2023 19:26, Rob Clark wrote:
> On Thu, Apr 13, 2023 at 8:19 AM Tvrtko Ursulin
> <tvrtko.ursulin@linux.intel.com> wrote:
>>
>>
>> On 07/04/2023 22:56, Rob Clark wrote:
>>> From: Rob Clark <robdclark@chromium.org>
>>>
>>> Add parsing for the memory usage related fdinfo stats.
>>>
>>> Signed-off-by: Rob Clark <robdclark@chromium.org>
>>> ---
>>> lib/igt_drm_fdinfo.c | 39 +++++++++++++++++++++++++++++++++++++++
>>> lib/igt_drm_fdinfo.h | 9 +++++++++
>>> 2 files changed, 48 insertions(+)
>>>
>>> diff --git a/lib/igt_drm_fdinfo.c b/lib/igt_drm_fdinfo.c
>>> index b850d221..6269e166 100644
>>> --- a/lib/igt_drm_fdinfo.c
>>> +++ b/lib/igt_drm_fdinfo.c
>>> @@ -124,6 +124,34 @@ static const char *find_kv(const char *buf, const char *key, size_t keylen)
>>> return *p ? p : NULL;
>>> }
>>>
>>> +static size_t find_mem_kv(const char *buf, const char *key)
>>> +{
>>> + const char *val = find_kv(buf, key, strlen(key));
>>
>> If you were asking yourself why I made strlen an argument to find_kv I
>> have to admit I micro-optimized it a bit based on profiling. Sad fact is
>> hunting for drm fdinfo in procfs sucks and gputop uses more CPU time
>> than top, to even display less data. More processes with more open files
>> there are, even when the 99.9% are not DRM, more taxing it is.
>
> Did a release build really not end up with it inlined?? If so I guess
> we can make this a macro, but it seems a bit surprising. This should
> be a thing the compiler can figure out.
AFAIR it wasn't able to figure out to evaluate the strlen at compile
time when inside find_kv. Pretty sure it was the default build
(debugoptimized) but it was also more than a year ago now so I guess I'd
need to repeat the experiment to be sure.
Regards,
Tvrtko
next prev parent reply other threads:[~2023-04-14 8:27 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-07 21:56 [igt-dev] [PATCH igt 0/2] gputop memory information Rob Clark
2023-04-07 21:56 ` [igt-dev] [PATCH igt 1/2] lib/igt_drm_fdinfo: Parse memory usage Rob Clark
2023-04-13 15:18 ` Tvrtko Ursulin
2023-04-13 18:26 ` Rob Clark
2023-04-14 8:27 ` Tvrtko Ursulin [this message]
2023-04-07 21:56 ` [igt-dev] [PATCH igt 2/2] gputop: Add memory information Rob Clark
2023-04-13 15:27 ` Tvrtko Ursulin
2023-04-07 22:10 ` [igt-dev] ✗ Fi.CI.BUILD: failure for gputop " Patchwork
2023-05-22 16:58 ` [igt-dev] ✗ Fi.CI.BUILD: failure for gputop memory information (rev2) Patchwork
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=0cfabc58-d15d-bffe-c8ec-d40d10d7e6c3@linux.intel.com \
--to=tvrtko.ursulin@linux.intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=robdclark@chromium.org \
--cc=robdclark@gmail.com \
--cc=tvrtko.ursulin@intel.com \
/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.