Elektrine
Log in Register
Paige Chat Timeline Gallery Friends Email Drive DNS Private DNS Domains VPN Kairo Nerve
Remote

Matt Keeter

@mjk@hachyderm.io
mastodon 4.7.3
  • Open on hachyderm.io

Weird CAD and graphics research; embedded software at @oxidecomputer@hachyderm.io

1397 Followers
991 Following
39 Posts
Joined November 13, 2022
Homepage:
https://mattkeeter.com
Github:
https://github.com/mkeeter
Location:
Cambridge, MA
Open post
Matt Keeter @mjk@hachyderm.io
· 2mo ago
good news: my GPU-based SSAO implementation is looking good bad news: I'm discovering all of the ways that my CPU-based implementation is wrong
19
0
5
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago

tired: "Just trust the compiler, it's smarter than you are"
wired: "You are going to generate a fucking jump table, so help me god"

(this has made my GPU bytecode interpreter 1.5× faster)

50
12
12
0
Open post
Matt Keeter @mjk@hachyderm.io
· 4mo ago

Got my first PR to a rust-lang repo merged 🎉

https://github.com/rust-lang/rust-analyzer/pull/22432

github.com
18
1
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 3mo ago
Before going on leave, I published a small crate named ‘datamap’ If you, like me, have stored addressed chunks of non-overlapping data in a BTreeMap> then been annoyed at handling all the edge cases, this is the crate for you! https://docs.rs/datamap/latest/datamap/
docs.rs
8
1
4
0
Open post
Matt Keeter @mjk@hachyderm.io
· 4mo ago

It's a weird feeling to get an email which

- asks questions about one of your open-source projects
- references specific files in the repo
- those files are definitely not in the project

Are you from a parallel universe? Do they have any cool Fanta or Kit-Kat flavors over there?

11
0
1
0
Open post
Matt Keeter @mjk@hachyderm.io
· 5mo ago

It's best practice for Rust crate docs to start with at least one research paper citation, which must be read before continuing.

13
1
1
0
Open post
Matt Keeter @mjk@hachyderm.io
· 4mo ago

quick thoughts on the Bun rewrite:

12
0
4
0
Open post
Matt Keeter @mjk@hachyderm.io
· 4mo ago

My "This is clearly a legitimate WebGPU rendering crate, not malware" t-shirt is raising questions—

11
1
2
0
Open post
Matt Keeter @mjk@hachyderm.io
· 21mo ago

I've just announced my new (blazing-fast) kernel for implicit surfaces: https://mattkeeter.com/projects/fidget

It's got something for everyone: Cool graphs! Multithreaded WebAssembly! Terrible mesh topology! JIT compilers!

After three years, I'm excited to finally show it off to a wider audience 😎

mattkeeter.com
145
10
77
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago

If this whole "computers" thing doesn't work out, I've got a bright future in aftermarket crib accessories!

18
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 4mo ago

...is this dolphin telling me to commit crimes?

8
1
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 6mo ago
Replying to
alternatively, you can read this meme instead
12
1
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 5mo ago

bytecode serialization: 0.3 ms
GPU compute kernel: 8 ms
waiting for the WebGPU polling thread: 100 ms
GPU-to-CPU buffer copy: 2ms

someone help me budget this, my framerate is dying
https://bugzilla.mozilla.org/show_bug.cgi?id=1870699

bugzilla.mozilla.org

1870699 - Don

ASSIGNED (jimb) in Core - Graphics: WebGPU. Last updated 2026-09-24.

8
1
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 6mo ago
Replying to
there are many blog posts that you can read today, but only one of them includes the sentence "the thing debugs like a goldfish with logorrhea"
9
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 5mo ago

Email Subject Lines With Threatening Auras

3
2
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 4mo ago

gonna go see the new adaptation of The Odyssey that everyone is talking about:

2
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago

hey chat is it good when a house on my block is held together by 2x4s?

4
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago
Replying to
@lisyarus@mastodon.gamedev.place It's a bytecode interpreter for rendering implicit surfaces on the GPU! Bytecode lets us generate simplified sub-expressions while rendering (staying on the GPU the whole time), which overcomes the fact that GPUs kinda suck at running bytecode VMs. (I'm basically porting + revamping https://www.mattkeeter.com/research/mpr/ to run with Rust + WebGPU)
mattkeeter.com

Massively Parallel Rendering of Complex Closed-Form Implicit Surfaces

4
2
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago

with apologies to https://bsky.app/profile/getequipped.bsky.social/post/3mg3v5m3rku2p

Bluesky Social

Get Equipped With (@getequipped.bsky.social)

3
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago
Replying to
@lisyarus@mastodon.gamedev.place That's where all the FLOPS are!
3
2
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 6mo ago
Replying to

@whitequark@social.treehouse.systems I got nerd-sniped on bluesky to look at the actual wasm

The tailcall implementation does use return_branch_indirect as expected: https://gist.github.com/mkeeter/66df08eaf580f293c5f950baa43703b5

The traditional bytecode VM, on the user hand, uses br_table, at the end of a 250-deep stack of blocks (!): https://gist.github.com/mkeeter/66df08eaf580f293c5f950baa43703b5

It's kinda incredible: each opcode is its own block, and they each end with a break N instruction to break back out to the top level.

gist.github.com
2
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 6mo ago
Replying to
@gustav@merveilles.town It's a good question – if someone had come to me and said "I'll implement a rough draft of the x86-64 backend for $35", I'm not sure how I would have reacted. And there's also the question of whether the vibes be different if I did this experiment with a local model, instead of paying Anthropic? I care about the craft of programming and quality of the resulting code, which is why I spent days rewriting the initial implementation (git shows 924 insertions(+), 1504 deletions(-) on a 2351-line file), but I wouldn't have gotten started without the AI boost – too much else on my plate, and the barrier to getting started was high...
2
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago
Replying to
and if you want to see it, the code is right here: https://github.com/oxidecomputer/crucible/blame/2b58dba8/downstairs/src/extent_inner_raw.rs#L258-L424
github.com
2
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 5mo ago

between Porchfest and opening day for the Union Square Farmer's Market, it's a big Saturday for aging millenials in Somerville

1
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago
Replying to
@8bit@social.lol and obviously I work with a tremendous team of talented coworkers who make this possible, up and down the stack!
1
2
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago
Replying to
@lesley@mastodon.gamedev.place I wish this was possible on the GPU, but it's a long ways off! (especially because WebGPU is the least common denominator of all the other graphics APIs)
1
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 21mo ago
Replying to
@jcreed@mastodon.social Two things are happening here: you're clipping into the near plane (as you suspected), and then interval arithmetic is proving that those regions are entirely full (because they're fully inside the sphere) and not subdividing down to voxels. Normals are only rendered after per-voxel evaluation; tiles which are skipped due to interval evaluation write to the heightmap (so they block tiles behind them), but not to the normal map. (There's nothing inherent about this behavior, that's just how I've coded it at the moment)
1
2
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 6mo ago
Replying to
@folkertdev@hachyderm.io Awesome, I was secretly hoping that a non-trivial example could be helpful to folks working on the feature 😊 Thanks for pushing it forward – I'm (obviously) very excited about it!
0
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 21mo ago
Replying to
@josi@fosstodon.org It is! (Well, the demo is Rhai, which is a Rust-native scripting language, but the library as a whole is in Rust)
0
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago
Replying to
@dominikg@mastodon.gamedev.place Not available in WGSL, unfortunately 🥲
0
6
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 21mo ago
Replying to
@sarna@types.pl I've very much enjoyed following Ian's work, and definitely need to chat with them at some point 😄
0
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 4mo ago

Waymo spotted in Inman Square 👀

0
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 4mo ago

if only there was a high-throughput way to convert a large memory-unsafe codebase into a memory-safe language

https://github.com/v12-security/pocs/tree/main/fragnesia-5db89c99566fc

github.com
0
0
0
0
Open post
Matt Keeter @mjk@hachyderm.io
· 7mo ago
Replying to
Of course, this would be inefficient to do for just me – you'd want to have larger caches that could be used by multiple people, to amortize the cost of restocking them.
0
0
0
0
Back
313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

I2P eepsite

j6b6cyk6gjmepjih7jjadxgxvvf3lzzujljuu2v4biemzpg3naya.b32.i2p

Platform

  • Email
  • Chat
  • Timeline
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ
  • Lite (no JS)

Legal

  • Terms of Service
  • Privacy Policy
  • Transparency Report
  • Report Abuse
  • Warrant Canary
  • VPN Policy

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 10:33:06 UTC