Replies

This profile is from a federated server and may be incomplete. Browse more on the original instance.

litherum, to random
@litherum@masto.ai avatar

You know what GLSL needs?

Inline assembly. So you can write snippets of SPIR-V in your GLSL shader.

(I'm only mostly joking)

dneto,
@dneto@mastodon.gamedev.place avatar
dneto,
@dneto@mastodon.gamedev.place avatar

@litherum

My team added the Vulkan SPIR-V backend to DXC starting in 2017. Vulkan benefitted by getting the latest greatest HLSL compiler. I don't speak for Microsoft but I can guess they benefitted by expanding the audience for and usage of HLSL.

(As I like to say, a programming language is a cultural artifact. Network effects matter a lot.)

dneto,
@dneto@mastodon.gamedev.place avatar

@litherum
Also the SPIR-V feature was clearly only for Vulkan, AFAIK

nh, to random
@nh@mastodon.gamedev.place avatar

Atomic loads and stores are sufficient for multi-threaded programming without tears, but they can't guarantee multi-threaded programming without tears.

dneto,
@dneto@mastodon.gamedev.place avatar

@nh
Well you might also want a progress guarantee...

litherum, to random
@litherum@masto.ai avatar

only in C++ could there simultaneously be:

  • rule of 3
  • rule of 5
  • rule of 0
dneto,
@dneto@mastodon.gamedev.place avatar

@litherum

Without looking I don't know any of them.
Then there's ODR which would be a rule of 1.

dneto,
@dneto@mastodon.gamedev.place avatar

@litherum figured it was that.

gfxstrand, to random
@gfxstrand@mastodon.gamedev.place avatar

This week's project: Reworking NVK cbuf support. We've had a lot of issues with too much internal stalling and I think a lot of them come down to the fact that we're re-binding cbufs every draw call.

My plan for root constants, is to do inline updates with the LOAD_CONSTANT_BUFFER command. I don't know how much of a difference there is but I strongly suspect this pipelines much better.

For bound cbufs, I'm planning to just make our dirty tracking way more competent.

We'll see how it goes!

dneto,
@dneto@mastodon.gamedev.place avatar

@gfxstrand

Do you have a benchmark suite that you trust and curate? It would take the guesswork out of these tradeoffs. (Of course, mainly pushing it to the curation process.)

thephd, to random
@thephd@pony.social avatar

It's time.

RAII in C, and why nobody's getting it right with the increasingly "simple" juggling that keeps getting tossed to me like table scraps for a dog.

The Pasture | Why Not Just Do Simple C++ RAII in C? | https://thephd.dev/just-put-raii-in-c-bro-please-bro-just-one-more-destructor-bro-cmon-im-good-for-it

dneto,
@dneto@mastodon.gamedev.place avatar

@gob @gfxstrand @thephd

Yep. This is the dumbest part of Clspv. By dumb I mean the highest difficulty-to-intrinsic-value ratio, and often error prone.
The folks pushing this change have waved away the concerns expressed by the GPU community. Right there in the RFC discussion.

dneto,
@dneto@mastodon.gamedev.place avatar

@gob @gfxstrand @thephd

I know this isn't your main point but
"10 hours" is far too low.

If you're not writing thousands of tests you're not building a production compiler.
And the C++ spec is over 1000 pages.

If you didn't test it it doesn't work.

dneto, to random
@dneto@mastodon.gamedev.place avatar

I use "circle to search" all the time now. It's so much easier.

dneto,
@dneto@mastodon.gamedev.place avatar

@oblomov
New Android feature. There's always solid line at the bottom of the screen. you tap that and the whole.screen goes ghost-like. You circle a part of an image for an image search, or circle or strike through words or a phrase to do a Google text search. The results overlay the bottom half of the screen. You can refine or restart, or discard the whole thing. The key is how easy it is to do without needing to get to a new screen

dneto,
@dneto@mastodon.gamedev.place avatar
dneto,
@dneto@mastodon.gamedev.place avatar
litherum, to random
@litherum@masto.ai avatar

I think it’s semi-hilarious that there’s a blog post going around which basically says Metal Shading Language is by far the best shading language (without actually saying it)

https://xol.io/blah/death-to-shading-languages/

Also the author gets bonus points for mentioning WGSL, but the loses them all again for complaining that WGSL isn’t more expressive than the languages it compiles to

dneto,
@dneto@mastodon.gamedev.place avatar

@gob @litherum

The machine readable grammar is in the WGSL spec source.

https://github.com/gpuweb/gpuweb/blob/main/wgsl/syntax.bnf

I even wrote a strict LALR(1) verifier to make sure we never broke that property. That's also in that source subdir. Written in Python.

dneto,
@dneto@mastodon.gamedev.place avatar

@litherum @gob

That proposal seemed focused on ergonomics but entirely missed the interesting/hard parts of shading languages: uniformity and the implications thereof. We were talking past each other.
(Even today almost all programmers assume wrong things about how subgroup operations behave, including folks who should know better.)

Also nobody wanted a NEW language. I still get flack for this. Obligatory https://xkcd.com/927/

tojiro, to random
@tojiro@mastodon.social avatar

It bothers me far more than it should that sharps and flats are stateful in musical notation.

dneto,
@dneto@mastodon.gamedev.place avatar

@tojiro
But only until the end of the bar!

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • khanakhh
  • kavyap
  • thenastyranch
  • everett
  • tacticalgear
  • rosin
  • Durango
  • DreamBathrooms
  • mdbf
  • magazineikmin
  • InstantRegret
  • Youngstown
  • slotface
  • JUstTest
  • ethstaker
  • ngwrru68w68
  • cisconetworking
  • modclub
  • tester
  • osvaldo12
  • cubers
  • GTA5RPClips
  • normalnudes
  • Leos
  • provamag3
  • anitta
  • lostlight
  • All magazines