From: Sam Ravnborg <sam@ravnborg.org>
To: Thomas Zimmermann <tzimmermann@suse.de>
Cc: daniel@ffwll.ch, deller@gmx.de, javierm@redhat.com,
geert@linux-m68k.org, kraxel@redhat.com, ppaalanen@gmail.com,
dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org
Subject: Re: [PATCH v3 5/5] drm: Add TODO item for optimizing format helpers
Date: Wed, 23 Feb 2022 21:34:29 +0100 [thread overview]
Message-ID: <YhaaVSc0oV824aUh@ravnborg.org> (raw)
In-Reply-To: <20220223193804.18636-6-tzimmermann@suse.de>
On Wed, Feb 23, 2022 at 08:38:04PM +0100, Thomas Zimmermann wrote:
> Add a TODO item for optimizing blitting and format-conversion helpers
> in DRM and fbdev. There's always demand for faster graphics output.
>
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
> ---
> Documentation/gpu/todo.rst | 22 ++++++++++++++++++++++
> 1 file changed, 22 insertions(+)
>
> diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst
> index 7bf7f2111696..7f113c6a02dd 100644
> --- a/Documentation/gpu/todo.rst
> +++ b/Documentation/gpu/todo.rst
> @@ -241,6 +241,28 @@ Contact: Thomas Zimmermann <tzimmermann@suse.de>, Daniel Vetter
>
> Level: Advanced
>
> +Benchmark and optimize blitting and format-conversion function
> +--------------------------------------------------------------
> +
> +Drawing to dispay memory quickly is crucial for many applications'
display
> +performance.
> +
> +On at least x86-64, sys_imageblit() is significantly slower than
On, at least x86-64, ...
To me the extra comma makes sense, but grammar is not my strong side.
> +cfb_imageblit(), even though both use the same blitting algorithm and
> +the latter is written for I/O memory. It turns out that cfb_imageblit()
> +uses movl instructions, while sys_imageblit apparently does not. This
> +seems to be a problem with gcc's optimizer. DRM's format-conversion
> +heleprs might be subject to similar issues.
helpers
> +
> +Benchmark and optimize fbdev's sys_() helpers and DRM's format-conversion
> +helpers. In cases that can be further optimized, maybe implement a different
> +algorithm, For micro-optimizations, use movl/movq instructions explicitly.
algorithm. (period, not comma)
> +That might possibly require architecture specific helpers (e.g., storel()
> +storeq()).
> +
> +Contact: Thomas Zimmermann <tzimmermann@suse.de>
> +
> +Level: Intermediate
With the small fixes above:
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Another option would be to re-implement imageblit() to be drm specific.
Maybe we can then throw out some legacy code and optimize only for the drm
use. And then maybe only a small part of the code would differ if this
is I/O memory or direct accessible memory.
Sam
next prev parent reply other threads:[~2022-02-23 20:34 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-23 19:37 [PATCH v3 0/5] fbdev: Improve performance of fbdev console Thomas Zimmermann
2022-02-23 19:38 ` [PATCH v3 1/5] fbdev: Improve performance of sys_fillrect() Thomas Zimmermann
2022-02-23 19:38 ` [PATCH v3 2/5] fbdev: Improve performance of sys_imageblit() Thomas Zimmermann
2022-02-23 19:38 ` [PATCH v3 3/5] fbdev: Remove trailing whitespaces from cfbimgblt.c Thomas Zimmermann
2022-02-23 20:23 ` Sam Ravnborg
2022-02-24 8:22 ` Javier Martinez Canillas
2022-02-23 19:38 ` [PATCH v3 4/5] fbdev: Improve performance of cfb_imageblit() Thomas Zimmermann
2022-02-23 20:25 ` Sam Ravnborg
2022-02-24 9:02 ` Javier Martinez Canillas
2022-02-24 10:29 ` Sam Ravnborg
2022-02-24 10:31 ` Geert Uytterhoeven
2022-02-24 8:31 ` Javier Martinez Canillas
[not found] ` <CGME20220308225225eucas1p12fcdd6e5dc83308b19d51ad7b2a13141@eucas1p1.samsung.com>
2022-03-08 22:52 ` [v3,4/5] " Marek Szyprowski
2022-03-09 8:22 ` Thomas Zimmermann
2022-03-09 9:22 ` Marek Szyprowski
2022-03-09 10:39 ` Geert Uytterhoeven
2022-03-10 19:21 ` Thomas Zimmermann
2022-03-10 19:23 ` Geert Uytterhoeven
2022-03-13 19:23 ` Thomas Zimmermann
2022-03-24 19:11 ` [PATCH v3 4/5] " Guenter Roeck
2022-03-24 19:18 ` Thomas Zimmermann
2022-03-24 21:18 ` Guenter Roeck
2022-02-23 19:38 ` [PATCH v3 5/5] drm: Add TODO item for optimizing format helpers Thomas Zimmermann
2022-02-23 20:34 ` Sam Ravnborg [this message]
2022-02-24 8:39 ` Javier Martinez Canillas
2022-03-02 19:30 ` [PATCH v3 0/5] fbdev: Improve performance of fbdev console Thomas Zimmermann
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=YhaaVSc0oV824aUh@ravnborg.org \
--to=sam@ravnborg.org \
--cc=daniel@ffwll.ch \
--cc=deller@gmx.de \
--cc=dri-devel@lists.freedesktop.org \
--cc=geert@linux-m68k.org \
--cc=javierm@redhat.com \
--cc=kraxel@redhat.com \
--cc=linux-fbdev@vger.kernel.org \
--cc=ppaalanen@gmail.com \
--cc=tzimmermann@suse.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).