@raph@mastodon.online
@raph@mastodon.online avatar

raph

@raph@mastodon.online

I do fundamental research on 2D graphics, UI programming, and fonts, and am active in the Rust community. Currently on Google Fonts team. 🌈

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

kissane, to random
@kissane@mas.to avatar

Hey it’s that time again.

The contention that using high-filtration masks to prevent transmission of respiratory disease is “unscientific” and “lacking evidence” when we have reams of aerosol and transmission studies is a display of either unawareness/scientific illiteracy (super fixable! non-shameful!) or of an intentional disregard of the evidence for emotional or ideological reasons (common but troubling).

raph,
@raph@mastodon.online avatar

@kissane Apologies. Would you prefer I delete my reply?

raph,
@raph@mastodon.online avatar

@kissane Super common. Even people who I otherwise respect, like @lemire , are pushing this narrative.

I'm calling him out not because he believes it (as he's entirely entitled to do), but because he cited it as established fact (https://lemire.me/blog/2024/05/14/learning-from-the-object-oriented-mania/).

I think there's a deeper truth here. A belief in the efficacy or non-efficacy of masks is a tribal affiliation, as is the preference for object oriented programming. I personally believe there's an objective truth, but not everyone does.

raph,
@raph@mastodon.online avatar

@kissane Having thought about it, I deleted it. I think the topic of a lot of things people think about as scientific debates actually being tribal affiliations is an interesting subject, but your thread is not the best place to have that conversation. Thanks.

raph, to random
@raph@mastodon.online avatar

I just found out that Prof Wirth has died. He was a major inspiration for me as a kid. I eagerly read his book on Pascal, at the time not appreciating how unusual it was for its elegance and simplicity. I also followed with interest his development of the Oberon language and Lilith workstation. When I was 13, he gave a talk not too far away, I think it might have been Johns Hopkins, and my dad took me to it. It was a wonderful experience, he was very kind and encouraging, as the photo shows.

raph, to random
@raph@mastodon.online avatar

A major project I've been working on for many months is rendering vector graphics strokes on GPU. @armansito and I recently wrote a paper on our techniques, and it's now available on arXiv (and also submitted to a relevant conference): https://arxiv.org/abs/2405.00127

There's accompanying code and some more resources in the repo: https://github.com/linebender/gpu-stroke-expansion-paper. And of course there's the implementation in Vello.

I'm very proud of this work. Fingers crossed the paper gets accepted.

raph, to random
@raph@mastodon.online avatar

Some extremely exciting news: Google Fonts is funding four developers from the open source community to work on Rust UI in 2024. Goals include demonstrating extremely high performance, using Vello for GPU-accelerated 2D rendering, and a port to Android.

All the work is in the open, and we look forward to working with others in the Rust UI ecosystem.

More details here: https://linebender.org/blog/xilem-2024/ I'm excited about what we'll build together!

raph, to webgpu
@raph@mastodon.online avatar

Are you interested in working on parallel sorting algorithms in ? If so, get in touch. I'm especially interested in segmented merge sort (https://moderngpu.github.io/segsort.html), but other classic parallel sort algorithms including bitonic and radix are on the table.

I would find this fascinating to work on myself (and that still might happen), but my time is pretty packed. Even so, I'm excited about the prospects to where I might be able to fund some work out of my own pocket. Let's discuss.

raph,
@raph@mastodon.online avatar

I got a bunch of responses to this, some private. Thanks for those!

I also did a bit of an exploration myself, including a bit of a fusion of FidelityFX sort and Onesweep ported to WebGPU, with the warp-local multi-split adapted to use shared memory instead of subgroups (warp operations). Details are in this Zulip thread: https://xi.zulipchat.com/#narrow/stream/197075-gpu/topic/Sorting.20revisited

This is a preliminary investigation, which shows that performant WebGPU sorting is likely feasible. I hope it gets that conversation started.

raph, to webgpu
@raph@mastodon.online avatar

An update on my exploration into GPU sorting, particularly a fast algorithm that can be ported to . There's a lot of really cool work going on in the space. I've created a page on the Linebender wiki that has a survey of papers, resources, and implementations: https://linebender.org/wiki/gpu/sorting/

I think it's a reasonably good snapshot of the current state, and hope to update it as things progress. Also contributors welcome! Should be useful to people doing Gaussian splatting in particular.

raph, to random
@raph@mastodon.online avatar

I'll be giving my talk on Xilem at #rustnl2024 this afternoon (14:40 CEST). It'll be on the conference livestream: https://2024.rustnl.org/live/

There'll be a lot to present. Among other things, we did the 0.1 release of Xilem last night. Things are moving!

raph, to random
@raph@mastodon.online avatar

Among other creative outlets, I am a semi-pro voice actor. Last week, I filled in at the last minute for a spot that Google Maps needed, and you can now see it here: https://www.youtube.com/shorts/s-p-BIAT-qE

One of my life ambitions is to do voice for a video game. The window for that may be closing thanks to AI, but I also know I have lots of gamedev followers here. Get in touch!

raph, to random
@raph@mastodon.online avatar

We'll be posting monthly updates on Xilem progress. Here's the one for January: https://linebender.org/blog/tmix-01/

This one is largely planning and getting things ready (no screenshots this time). I'm very hopeful about joining forces with winit, as I think we'll get a lot more collaboration with the rest of the Rust UI ecosystem.

raph, to random
@raph@mastodon.online avatar

Another edition of This Month in Xilem: https://linebender.org/blog/tmix-03/

There's a lot of work here that's under the surface: GPU stroke expansion, progress on the Masonry refactor (which, among other things, will enable using the widgets with different language bindings or reactive layers), and font loading.

We're also really looking forward to @rustnl next month. That will be a great place for people interested in Rust UI to come together.

raph, to random
@raph@mastodon.online avatar

Another Xilem community blog post, this one by https://mastodon.online/@PoignardAzur, setting forth the roadmap for the Xilem widget tree in 2024: https://linebender.org/blog/xilem-backend-roadmap/

Some of the proposals there may be controversial, but I'm hoping that stirs passionate discussion. In any case, I'm excited about what this will bring.

In related news, we're now seriously exploring joining forces with winit for window creation. You'll hear more about that when we have something to show.

raph, to random
@raph@mastodon.online avatar

I'm on the train to Delft for #rustnl2024 . I still have more work to do on the slides, and am a bit tired from the flight, but I'm sure it's going to be a great experience and I'm looking forward to meeting lots of people.

I was not able to do a lot of implementation work on Xilem because I was trying to meet a paper deadline, but the community has really come together, and I think the demo will be impressive. It's come a long way just in the last couple of weeks.

raph, to random
@raph@mastodon.online avatar

I just published a blog post, "A note on Metal shader converter": https://raphlinus.github.io/gpu/2023/06/12/shader-converter.html

As I discuss in the post, in the long term I'm hopeful for a future with robust GPU compute infrastructure, based on well-documented standards and rigorous testing so that we can be confident that GPU hardware will actually run our code (including sophisticated lock-free algorithms). We have a long way to go, and I think is a better path toward that future than proprietary GPU languages.

raph, to random
@raph@mastodon.online avatar

I now have a tattoo of an Euler spiral!

raph, to random
@raph@mastodon.online avatar

I'm on my way to Florence for #RustLab, where I'll be talking about Vello, high performance 2D graphics rendering in Rust. I'm excited about the conference, looking forward to meeting people there. Then I'll enjoy a week of vacation.

I've been on the quiet side, but Vello has seen significant progress in the past few months. GPU-side stroke expansion, with the full set of styles and correct handling of transforms, is in flight and close to landing. The near future looks bright.

raph, to random
@raph@mastodon.online avatar

My RustLab 2023 talk video is now posted: https://youtu.be/mmW_RbTyj8c. I give an overview of Vello, the high performance GPU 2D graphics renderer I've been working on.

The slides are here: https://docs.google.com/presentation/d/1O-CktOdcnPyTxtCFlFYywGp20lkgy3hNp-mNb8C4ueU/edit?usp=sharing. They contain lots of links to other resources.

raph, to random
@raph@mastodon.online avatar

I'll be giving a talk on Xilem Vector Graphics at the Bay Area Rust Meetup tomorrow evening: https://www.meetup.com/rust-bay-area/events/293165024/

It's still rough work in progress, but I'm excited about the potential. And I'm really looking forward to talking with people. It won't be livestreamed, but there will be a recording.

raph, to random
@raph@mastodon.online avatar

A week ago I figured out that the evolute of an Euler spiral (Cesàro equation κ(s) = s) is another simple power law spiral, the Cesàro equation being κ(s) = -1/s³. The writeup is at: https://linebender.org/wiki/curves/euler-spiral-evolute/

None of the math for this was very hard, in fact I can see the result being obtained hundreds of years ago if anyone had bothered to look. A challenge for math enthusiasts: does the result generalize to other spirals with a simple power law?

raph, to random
@raph@mastodon.online avatar

The video of my talk on Xilem Vector Graphics is now published: https://youtu.be/XjbVnwBtVEk

I think these are very promising ideas, and the main reason I'm putting this talk out now is to try to find open source collaborators to develop them further. But it is early days, and this is not yet a usable stack.

pervognsen, (edited ) to random
@pervognsen@mastodon.social avatar

Another thing I noticed in the SDL 3 preview (which was apparently already added in vestigial form later in SDL 2) is that they have support now for a callback-based life cycle so you can integrate properly with platforms which expect that without having to resort to inversion-of-control hacks like fibers for interop. While I always liked the "app controls the main loop" aspect of the classic SDL event pumping model, that ship has sailed if you care about cross-platform support.

raph,
@raph@mastodon.online avatar

@floooh @pervognsen Oh, it's sooooo much more complicated than this. You can do smooth resize with DX11-style blit model DXGI, but in DX12-style flip model, the system just lacks the synchronization you need. It might be possible to get it almost good in some cases, but there's no systematic way to do it.

There are some bugs open on Microsoft, I'm not sure if and when they'll fix it properly.

raph,
@raph@mastodon.online avatar

@floooh @pervognsen Yes, that's the flip model, you can do DX11 with flip, but you can't do DX12 with blit (unless you play various interop games, which will almost certainly degrade performance in the non-resizing case).

I should probably talk about the various DXGI versions to avoid confusion, but those will be less familiar to most readers.

jpanzer, to random
@jpanzer@mastodon.social avatar

"Shitshow" is putting this description of the WaPo's staff meeting mildly.

https://www.notus.org/media/washington-post-shakeup-buzbee

raph,
@raph@mastodon.online avatar

@jpanzer These days I think of "democracy dies in darkness" as a description of their value proposition, rather than a caution of what might happen without them.

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