!MFogdGJfnZLrDmgkBN:matrix.org

WebGPU

35 Members
The future of graphics and compute on the Web - unofficial channel4 Servers

Load older messages


Timestamp Message
27 Feb 2020
17:13:54@jasperrlz:matrix.orgjasperrlzI've been told not to bring religion into the workplace...
17:14:38@kangz:matrix.orgKangzxD but seriously, these languages are not great language to develop with. Yet everybody uses them. WGSL with lexical scopes is basically the same "level" of usability.
17:15:05@jasperrlz:matrix.orgjasperrlzAre there places where I think GLSL and HLSL made the wrong choices, causing them to be less ergonomic in some parts? Absolutely. But they still try and think about these things.
17:16:18@jasperrlz:matrix.orgjasperrlzI strongly disagree that "WGSL with lexical scopes" (assuming that means, effectively, the Tint showed in the slide deck, excluding any extra sugar) approaches the level of ergonomics and "safety" afforded by HLSL.
17:16:22@jasperrlz:matrix.orgjasperrlz * I strongly disagree that "WGSL with lexical scopes" (assuming that means, effectively, the Tint showed in the slide deck, excluding any extra sugar) approaches the level of ergonomics and "safety" afforded by HLSL.
17:16:38@jasperrlz:matrix.orgjasperrlz"Safety" here including design decisions meant to keep the user on sane, fast paths, like the float/int implicit conversions.
17:16:49@jasperrlz:matrix.orgjasperrlz * "Safety" here including design decisions meant to keep the user on sane, fast paths, like the float/int implicit conversions.
17:18:42@kangz:matrix.orgKangzJust to make sure I understand, you worry that exposing a nice syntax for SPIR-V is not enough for a human-writable language because real languages should stir their users towards a "pit of performance"?
17:19:29@kangz:matrix.orgKangzI'd be interested in knowing what GLSL and HLSL do for that. You mentioned float promotion to avoid SDiv, what else?
17:20:11@jasperrlz:matrix.orgjasperrlzI don't know if I can name a list off the top of my head. I didn't even think about SDiv until I saw the discussion about typecasting this morning, which brought it into my brain.
17:22:36@jasperrlz:matrix.orgjasperrlzI would really encourage you to reach out to shading language designers and IHVs to think about the concerns they have when they design these languages. Fair warning that I might be exaggerating the cause and effect in certain places. float/int conversion was likely because of how HLSL evolved as a syntax from register combiners, from before GPUs even had integer ALUs. But then, the lack of investment on the GPU side into efficient integer division is likely because HLSL's design made it unnatural and rare. That's just a guess at one of many explanations. History is intertwined.
17:22:57@jasperrlz:matrix.orgjasperrlzThe end result is that these are things that designers of a new high-level shading language need to know about to make effective decisions
17:32:47@kangz:matrix.orgKangzI don't think there's that much planning happening for GLSL and HLSL. Maybe in the initial versions but evolution after that seems to be mostly about how to expose new hardware capabilities in a portable manner.
17:33:33@kangz:matrix.orgKangzThe only other changes I can see are changes to the bindings model in GLSL (introduction of the layout keyword, explicitly numbered locations etc.)
17:34:25@kangz:matrix.orgKangzBut if you see opportunities in WGSL for stirring developers in the right direction without breaking the transparent bijectivity with SPIR-V please open an issue!
17:34:33@kyren:kyju.orgkyren I feel unqualified to say anything in this discussion, so forgive the intrusion, but would it be possible to encourage fast paths in shaders WITHOUT having to resort to implicit numeric conversion? For example, by the / operator refusing to work with integers and instead forcing something uglier like a function call? I hate that there's tension pulling towards implicit conversion because (for me at least) magical behavior, even towards more performance not less, has made it more difficult for me to understand what mistakes I've narrowly avoided in the past
17:35:56@kyren:kyju.orgkyrenI guess this might not be the place for this discussion anyway
17:36:05@dj2:matrix.orgdj2there are no plans, and as far as i know, no desire, to add implicit conversions to wgsl
17:36:26@kyren:kyju.orgkyrenokay that's good then!
17:36:46@kyren:kyju.orgkyren * I feel unqualified to say anything in this discussion, so forgive the intrusion, but would it be possible to encourage fast paths in shaders WITHOUT having to resort to implicit numeric conversion? For example, by the / operator refusing to work with integers and instead forcing something uglier like a function call? I hate that there's tension pulling towards implicit conversion because (for me at least) magical behavior, even towards more performance not less, has made it more difficult for me to understand what mistakes I've narrowly avoided in the past
17:36:51@kangz:matrix.orgKangzThis is a fine place to discuss WGSL but any change to the language will have to go through the group (like an issue in the GitHub repo).
17:37:50@dj2:matrix.orgdj2keeping folks on the fast path is good. denying the ability to do things because it could be a slow path i don't see as something we'd want to do
17:41:40@jasperrlz:matrix.orgjasperrlz Kangz: as I said, the synergies could be accidental, but that still doesn't mean they're not there.
17:43:01@jasperrlz:matrix.orgjasperrlzI don't believe they are. I've talked with some of the designers behind HLSL, and they know how important this stuff is.
19:52:21@jasperrlz:matrix.orgjasperrlz It's probably worth mentioning that I'm part of a semi-secret cabal of game developers (both IHVs and ISVs) who are keeping close eyes on this stuff, and are already starting to complain quite loudly. Most of us don't want the WG to take this direction, we're jaded enough to know it will not turn out the way the WG wants it to. We're trying to do the legwork here to prove to you why it won't work, but nobody seems to be listening. I don't really know how we can make our voices more heard. The web is an important future target for a lot of us, and we don't want all of this work to be wasted. The process doesn't seem reflective of our wants or needs, nor does the WG seem to respect our past experience.
19:55:32@kvark:matrix.orgkvark jasperrlz: I think releasing a blog post that clearly explains your worries, or even filing an issue, would be helpful. We definitely don't want to be deaf to your concerns! But please, no inflammatory tweets, that's not the voice that helps.
20:03:02@dj2:matrix.orgdj2We are listening. We also want to make progress on the shading language which has been stuck for a long time. This is the path forward we were able to find that looks like it could work.
20:15:43@bartwe:matrix.orgbartwe joined the room.
20:25:52@bartwe:matrix.orgbartwe set a profile picture.
23:59:04@kusma:matrix.orgkusma joined the room.

There are no newer messages yet.


Back to Room List