From: bugzilla-daemon@freedesktop.org
To: dri-devel@lists.freedesktop.org
Subject: [Bug 85596] SB is used only after GPR check / GPR max is not dynamic
Date: Wed, 29 Oct 2014 21:36:27 +0000 [thread overview]
Message-ID: <bug-85596-502-YVVQzmBYqq@http.bugs.freedesktop.org/> (raw)
In-Reply-To: <bug-85596-502@http.bugs.freedesktop.org/>
[-- Attachment #1.1: Type: text/plain, Size: 1402 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=85596
--- Comment #2 from Vadim Girlin <ptpzz@yandex.ru> ---
(In reply to Lauri Kasanen from comment #0)
> Many big shaders that currently fail with
> r600_shader_select - Failed to build shader variant (type=1) -12
> r600_shader_from_tgsi - GPR limit exceeded - shader requires foo registers
>
> would actually work if the GPR check was moved to after SB, as SB reduces
> the GPR usage quite nicely.
>
> Another thing is that 128 is the lowest common denominator, and many cards
> have 192 or 256, which could be checked with the radeon_info ioctl.
As Alex said, ISA encoding doesn't allow to address more than 128 registers in
the instructions. IIRC we also by default reserve 4 GPRs as temporary (they are
not preserved between ALU clauses), so the actual limit is 124 (or even 120?).
It's also the reason why we can't simply move the GPR check, the shader is
passed from TGSI translator to SB in the ISA encoding which can't represent the
code that uses more than 128 registers.
If anyone would like to revive a direct TGSI->SB translator that solves the
problem, here is the branch:
http://cgit.freedesktop.org/~vadimg/mesa/log/?h=wip-sb-tgsi
There were no piglit regressions with that branch on evergreen when it was
implemented, but now I suspect it's a bit outdated.
--
You are receiving this mail because:
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 2348 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2014-10-29 21:36 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-29 11:37 [Bug 85596] New: SB is used only after GPR check / GPR max is not dynamic bugzilla-daemon
2014-10-29 11:37 ` [Bug 85596] " bugzilla-daemon
2014-10-29 13:31 ` bugzilla-daemon
2014-10-29 21:36 ` bugzilla-daemon [this message]
2014-10-30 12:34 ` bugzilla-daemon
2016-04-19 9:54 ` bugzilla-daemon
2019-09-18 19:16 ` bugzilla-daemon
2019-09-18 19:17 ` bugzilla-daemon
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=bug-85596-502-YVVQzmBYqq@http.bugs.freedesktop.org/ \
--to=bugzilla-daemon@freedesktop.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox