back
user profile

raphlinus

13,685karma·1,846submissions·March 7, 2014
about
I do research on fundamental UI technology and 2D graphics, with a focus on Rust and fonts. @raph@mastodon.online
recent activity (1,846 total)
comment
+1 to always measuring. That said, we have done some experiments regarding power, including on Android, and it looks favorable. The general rule of thumb is that a GPU has about 10x the raw throughput…
2y ago·view thread
comment
So this is a little bit more complicated as a tradeoff. The main reason Skia is faster is that it's generating fewer primitives (quadratic Béziers instead of lines or arcs). Depending on the deta…
2y ago·view thread
comment
Good catch! We took the mmark CPU numbers out (in response to review feedback) because they made the graphs hard to read, but it scales very much the same way as the Nehab timings dataset. The raw CPU…
2y ago·view thread
comment
The technique works for both fills and strokes, and is used by Vello for both, including for the text rendering. One of the nice things we found is that lowering Euler spirals to arcs works particular…
2y ago·view thread
comment
The description of "project manager mathematicians" reminded me of "A letter to my old friend Jonathan" [1] and the followup [2] by Edsger Dijkstra from 1975. It was written as sat…
2y ago·view thread
comment
There's a bit more information at [1], but I think the details are not public. The hardware is tracking a separate program counter (and call stack) for each thread. So in the CAS example, one t…
2y ago·view thread
comment
I'm not aware of any similarly mature GPU-based JSON parser, but I believe such a thing is possible. My stack monoid work [1] contains a bunch of ideas that may be helpful for building one. I…
2y ago·view thread
comment
One of the other major things that's changed is that Nvidia now has independent thread scheduling (as of Volta, see [1]). That allows things like individual threads to take locks, which is a pret…
2y ago·view thread
comment
There's also a recent Mastodon thread[1] that has the highlights of this blog post and links to it. [1]: https://mastodon.online/@johncarlosbaez@mathstodon.xyz/11258... …
2y ago·view thread
comment
Until that video comes out, you can read the proposal[1]. This appears to be quite recent (the timestamp says 4 days ago). I personally found the writing style of the proposal to be clearer than the t…
2y ago·view thread
comment
Personally, I would say writing compute shaders to do nontrivial tasks like parsing, sorting, and handling data structures. There's a lot of this in Vello. There's a small community of peopl…
2y ago·view thread
comment
I think that to some extent represents the dream, with caveats. A few pieces need to fall into place. 1. You need to formalize the semantics of unsafe Rust. Ralf Jung's pioneering RustBelt[1] wor…
2y ago·view thread
comment
It's a good question. I touch on it a little in my thesis (mostly chapter 2). First, there is psychology literature from the 50's [1] that indicates that curvature minima and maxima are sali…
2y ago·view thread
comment
That's a joke answer, as you meant it to be trivially true for any curve family, but there is an important sense in which it is not true - Hobby splines are not closed under subdivision. So if yo…
2y ago·view thread
comment
No. Among other things, they'd have a higher degree of continuity if they were. I personally find this a fascinating topic, so much so that I did a PhD on it. The most natural loss function to op…
2y ago·view thread
comment
Most of the applications of Hobby's spline would be better served by using Euler spirals instead. These are G2 continuous and have less curvature varation (in fact, Euler spirals are solutions of…
2y ago·view thread
comment
As a counterpoint, I appreciated this recent post by Martin Kleppmann[1]: I've worked out why I don't get much value out of LLMs. The hardest and most time-consuming parts of my job involve …
2y ago·view thread
comment
It's... ok. What kurbo does is lower to quadratic Béziers[1], then the analytic solution to nearest for a quadratic Bézier is the solution to a cubic equation[2]. I'm not sure this is the be…
2y ago·view thread
comment
Cool to see! The tweak suggested in the blog post when you're near the vertex of the parabola is valid, and the implementation that was in Vello did something very similar. This is also the fla…
2y ago·view thread
comment
For the math aficionados in this thread, I have a frequency domain related set of ideas I'd like to develop into a more rigorous mathematical theory. Basically, represent a curve as Chebyshev pol…
2y ago·view thread
comment
To me it recalls "This has made a lot of people very angry and has been widely regarded as a bad move," which is a bit from the introduction and first chapter of the Hitchhiker's Guide.
2y ago·view thread
comment
Very cool project, and I love to see more work in this space. Something else to look at is the Vortex project from Georgia Tech[1]. Rather than recapitulating the fixed-function past of GPU design, I …
2y ago·view thread
comment
I think you've got a point here. 2D rendering is reasonably well defined. The problem is the overwhelming complexity of the GPU ecosystem. If you just had a decent parallel computer, it wouldn&#x…
2y ago·view thread
comment
I'm looking forward to doing careful benchmarking, as this renderer absolutely looks like it will be competitive. It turns out that is really hard to do, if you want meaningful results. My init…
2y ago·view thread
comment
Good further reading on this change is "Windowless controls are not magic"[1] from Raymond Chen, and the followup "Windows are not cheap objects"[2]. It's a fascinating tradeo…
2y ago·view thread
comment
Often does it actually improve the title? I think the actual use case is stuff like "how I cross-compiled Eliza to the IBM 1401 using Zig", where it is a little cleaner without.
2y ago·view thread
comment
Indeed. I learned color theory from "The Measurement of Appearance" by Richards Hunter and Harold, and one of the strengths of that work is that goes well beyond simple color into things lik…
2y ago·view thread
comment
Indeed, and there's a most excellent essay that goes into considerably more detail on this: https://www.exurbe.com/tools-for-thinking-about-censorship/ , written partly in r…
2y ago·view thread
comment
I joined Android in April 2012. Looking back, at that time Android was incredibly lean for what it was accomplishing. The entire Frameworks team reported to one manager, and we would fit in a medium s…
2y ago·view thread