]> git.baikalelectronics.ru Git - kernel.git/commit
drm/vc4: improve throughput by pipelining binning and rendering jobs
authorVarad Gautam <varadgautam@gmail.com>
Wed, 17 Feb 2016 13:38:21 +0000 (19:08 +0530)
committerEric Anholt <eric@anholt.net>
Mon, 14 Mar 2016 00:05:05 +0000 (17:05 -0700)
commit662a0b7f29ffd4f84fee5a77454e1f57e890f002
tree25e4b6777ecfb6844739479949dac3c32479ea4a
parent6a6d317146d59e8ebd5ac5e24f332ec7cb3c9e6e
drm/vc4: improve throughput by pipelining binning and rendering jobs

The hardware provides us with separate threads for binning and
rendering, and the existing model waits for them both to complete
before submitting the next job.

Splitting the binning and rendering submissions reduces idle time and
gives us approx 20-30% speedup with some x11perf tests such as -line10
and -tilerect1.  Improves openarena performance by 1.01897% +/-
0.247857% (n=16).

Thanks to anholt for suggesting this.

v2: Rebase on the spurious resets fix (change by anholt).

Signed-off-by: Varad Gautam <varadgautam@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/vc4/vc4_drv.h
drivers/gpu/drm/vc4/vc4_gem.c
drivers/gpu/drm/vc4/vc4_irq.c