Issue 8666 in angleproject: Make glUniform calls lockless

1 view
Skip to first unread message

syous… via monorail

unread,
Apr 11, 2024, 9:51:26 PM4/11/24
to angleproj...@googlegroups.com
Status: Available
Owner: ----
CC: m.ma...@samsung.com
Priority: Medium
Type: Enhancement

New issue 8666 by syou...@chromium.org: Make glUniform calls lockless
https://bugs.chromium.org/p/angleproject/issues/detail?id=8666

Currently, these calls do a lot, including making backend calls. Instead, the calls can simply become a uniform shadow memory update in the program with some dirty bits. When the program is drawn with next, it can process all those uniforms at once.

--
You received this message because:
1. The project was configured to send all issue notifications to this address

You may adjust your notification preferences at:
https://bugs.chromium.org/hosting/settings

syous… via monorail

unread,
Apr 15, 2024, 12:36:32 AM4/15/24
to angleproj...@googlegroups.com
Updates:
Components: Performance
Labels: OS-All

Comment #1 on issue 8666 by syou...@chromium.org: Make glUniform calls lockless
https://bugs.chromium.org/p/angleproject/issues/detail?id=8666#c1

(No comment was entered for this change.)

syous… via monorail

unread,
Apr 16, 2024, 11:06:45 PM4/16/24
to angleproj...@googlegroups.com
Updates:
Owner: rom...@google.com

Comment #2 on issue 8666 by syou...@chromium.org: Make glUniform calls lockless
https://bugs.chromium.org/p/angleproject/issues/detail?id=8666#c2

Git Watcher via monorail

unread,
Apr 26, 2024, 2:00:15 PM4/26/24
to angleproj...@googlegroups.com

Comment #3 on issue 8666 by Git Watcher: Make glUniform calls lockless
https://bugs.chromium.org/p/angleproject/issues/detail?id=8666#c3

The following revision refers to this bug:
https://chromium.googlesource.com/angle/angle/+/89caa0e1d99e45f3d6f355f6e14c147f8de3e0e5

commit 89caa0e1d99e45f3d6f355f6e14c147f8de3e0e5
Author: Roman Lavrov <rom...@google.com>
Date: Tue Apr 23 19:32:52 2024

Cleanup: replace DirtyObjectType check with constexpr generator

Static assert was meant to avoid kDirtyObjectHandlers getting out of
sync, but it doesn't achieve that goal as it's just comparing values
with ints which is confusing.

Replacing with constexpr generated std::array. C++20 allows to easily
validate that all values are set by _not_ default-initializing
`handlers`. C++17 makes it trickier, addeded static_assert on an
additional static constexpr bool (silly but I can't find a more concise
way)

Bug: angleproject:8666
Bug: b/335295728
Change-Id: Idf9bbd087d09d5ba253a7587ce0503cae3fcf3a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5478231
Reviewed-by: Shahbaz Youssefi <syou...@chromium.org>
Commit-Queue: Roman Lavrov <rom...@google.com>

[modify] https://crrev.com/89caa0e1d99e45f3d6f355f6e14c147f8de3e0e5/src/libANGLE/State.cpp
[modify] https://crrev.com/89caa0e1d99e45f3d6f355f6e14c147f8de3e0e5/src/libANGLE/State.h

Git Watcher via monorail

unread,
May 13, 2024, 3:28:15 PM5/13/24
to angleproj...@googlegroups.com

Comment #4 on issue 8666 by Git Watcher: Make glUniform calls lockless
https://bugs.chromium.org/p/angleproject/issues/detail?id=8666#c4


The following revision refers to this bug:
https://chromium.googlesource.com/angle/angle/+/3b470cf502e9846e0c355a826cd844a4cf46fda0

commit 3b470cf502e9846e0c355a826cd844a4cf46fda0
Author: Roman Lavrov <rom...@google.com>
Date: Mon May 13 16:43:25 2024

Move PPO executables to ProgramExecutable

This will allow to recursively deal with PPO uniforms


Bug: angleproject:8666
Bug: b/335295728
Reply all
Reply to author
Forward
0 new messages