Max Slater's Avatar

Max Slater

@thenumb.at

https://thenumb.at Computer Graphics, Programming, Math, OxCaml, C++

339
Followers
264
Following
29
Posts
09.06.2023
Joined
Posts Following

Latest posts by Max Slater @thenumb.at

There's already github.com/janestreet/c... and github.com/janestreet/a..., though it looks like the concurrent scheduler and IO library aren't released yet (and both are very wip). Parallel_scheduler also supports concurrency, but it's work-stealing

05.02.2026 01:30 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Also fyi, the compiler doesn't pack record/unboxed product fields yet, small ints still take up a word. Arrays of unboxed numbers are packed, though

04.02.2026 04:44 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Our OxCaml concurrency and IO libraries are getting close to usable - would like to see how writing a web server with them compares :^)

04.02.2026 04:32 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

hmm yes we should get around to fixing that

27.01.2026 04:12 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Indexing and array primitives for untagged ints by jra4 Β· Pull Request #4779 Β· oxcaml/oxcaml Completes the array and indexing primitives for small integers. In particular, for arrays, strings, bigstrings, bytes: Support storage of int8s, int16#s (including creation of such arrays). Suppor...

Not yet, github.com/oxcaml/oxcam...

27.01.2026 04:11 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

🫠https://github.com/oxcaml/oxcaml/pull/5299

25.01.2026 18:04 πŸ‘ 1 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0
Post image

@docjade.com πŸ¦€πŸ¦€πŸ¦€

18.01.2026 02:07 πŸ‘ 14 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0
Preview
Holding an OxCaml tutorial at ICFP/SPLASH 2025

Then I dive into the tutorial we held about Oxidised OCaml, the performance-oriented fork at oxcaml.org that @yminsky.bsky.social announced earlier this summer. Try the tutorial in a convenient devcontainer, and take our quiz to help develop the language! @thenumb.at anil.recoil.org/notes/icfp25...

23.10.2025 13:12 πŸ‘ 5 πŸ” 2 πŸ’¬ 2 πŸ“Œ 0

I'll be at ICFP/SPLASH if anyone wants to chat about OxCaml!

10.10.2025 04:30 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 1

And if you’re interested in OxCaml, we have a tutorial on Sunday at ICFP walking through it conf.researchr.org/track/icfp-s... (materials will be online for anyone afterwards. Just the minor detail of finishing writing them first)

03.10.2025 14:32 πŸ‘ 10 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0
Post image

wave_tracer 0.1 released
wavetracer.dev

wave_tracer combines path tracing and wave optics in a novel way, for practical general-purpose wave simulations across a variety of EM modalities and applications.

30.08.2025 15:23 πŸ‘ 88 πŸ” 21 πŸ’¬ 1 πŸ“Œ 1

We've seen how to define and apply Monte Carlo integration, but there's a whole world of techniques for reducing variance.
Part five (thenumb.at/QMC) covers Quasi-Monte Carlo: negative correlation, stratified and adaptive sampling, and low-discrepancy sequences.

02.08.2025 19:57 πŸ‘ 47 πŸ” 9 πŸ’¬ 0 πŸ“Œ 0
The Saga of Multicore OCaml
The Saga of Multicore OCaml YouTube video by Jane Street

I had a lot of fun giving this talk in Singapore about the many-years-long saga of multicore OCaml, and in particular, the work over the least 2.5 years of getting it ready for production work within Jane Street's walls.

www.youtube.com/watch?v=XGGS...

24.07.2025 21:29 πŸ‘ 46 πŸ” 9 πŸ’¬ 0 πŸ“Œ 1

I am getting increasingly excited by the runtime metaprogramming extensions coming into OxCaml. They deal with the fundamental non-portability of most of the modern vector extensions in CPUs (across all architectures), but don't expose any of their decision trees in the interface of the OCaml lib

21.07.2025 16:18 πŸ‘ 10 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Video thumbnail

Our #SIGGRAPH2025 paper "Augmented Vertex Block Descent" presents an extremely fast and stable physics solver with hard constraints for handling joints and collisions.

The project page has a 2D demo with source code and more details:
graphics.cs.utah.edu/research/pro...

23.06.2025 03:43 πŸ‘ 38 πŸ” 9 πŸ’¬ 1 πŸ“Œ 0

There's also the aliased key example in the second tutorial (which already works), but that's not exactly what you want

20.06.2025 17:28 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

True but those axes are more restrictive than portability/contention, ie every stateless function is already portable and any value captured at immutable could be captured at contended

20.06.2025 07:43 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

There is a way to express shared borrowing, but safely using it in parallel tasks will require support for forking local closures

20.06.2025 07:32 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Post image

Rendering nerds! Check out our latest work "Vector-Valued Monte Carlo Integration Using Ratio Control Variates" that has just gotten the best paper award at SIGGRAPH 2025. This paper presents a method that reduces variance of a wide range of rendering and diff. rendering tasks with negligible cost.

14.06.2025 17:26 πŸ‘ 89 πŸ” 22 πŸ’¬ 7 πŸ“Œ 0

We've been working on this for years πŸ“ˆ

13.06.2025 14:15 πŸ‘ 14 πŸ” 4 πŸ’¬ 0 πŸ“Œ 0
A break from programming languages

I have published my first new blog post in four years lexi-lambda.github.io/blog/2025/05...

29.05.2025 16:25 πŸ‘ 120 πŸ” 22 πŸ’¬ 20 πŸ“Œ 6
Preview
Understanding The Math Behind ReSTIR GI Recently, I had the pleasure of contributing to Nvidia’s Zorah project, the flagship demo for the RTX 50 Series GPUs. My primary role was to provide technical support for light transport in Zorah, whi...

Here is a new blog post of mine, where I dive deep into the theory and math behind ReSTIR GI.

Big thanks to Markus Kettunen for verifying the theory, reviewing the article, and catching a key detail I had missed.

agraphicsguynotes.com/posts/unders...

10.05.2025 00:11 πŸ‘ 102 πŸ” 30 πŸ’¬ 1 πŸ“Œ 1
Sobol' Sequences with Guaranteed-Quality 2D Projections, supplementary video
Sobol' Sequences with Guaranteed-Quality 2D Projections, supplementary video YouTube video by Nicolas Bonneel

A thread on Monte Carlo integration, Sobol' sequences and our new awesome Siggraph paper "Sobol' Sequences with Guaranteed-Quality 2D Projections". by @dcoeurjo.bsky.social , J-C Iehl, V. Ostromoukhov and me. The tl;dr is our video: www.youtube.com/watch?v=8A4Z...
[1/16]

04.05.2025 19:38 πŸ‘ 29 πŸ” 7 πŸ’¬ 1 πŸ“Œ 2
Post image

Apologies for the delay of part 5...

04.05.2025 15:52 πŸ‘ 5 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

Hence we're making it local πŸ™‚

21.04.2025 13:48 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

That's what I'm working on for part 5 :^)

20.04.2025 01:37 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Monte Carlo has many uses, but path tracing is one of my favorites. Part four (thenumb.at/Rendering/) explores how Monte Carlo integration is used to simulate light transport.

19.04.2025 19:39 πŸ‘ 41 πŸ” 6 πŸ’¬ 2 πŸ“Œ 1

Monte Carlo methods require randomly sampling complicated domains, which can be difficult in of itself.
Part three (thenumb.at/Sampling/) discusses how to create samplers using rejection, inversion, and changes of coordinates.

12.04.2025 19:36 πŸ‘ 70 πŸ” 11 πŸ’¬ 3 πŸ“Œ 3
Post image

Graphics Programming weekly - Issue 386 - April 6th, 2025 www.jendrikillner.com/post/graphic...

07.04.2025 14:03 πŸ‘ 65 πŸ” 21 πŸ’¬ 1 πŸ“Œ 1

Monte Carlo integration lets us integrate high-dimensional functions exponentially faster than traditional methods!
Part two (thenumb.at/Monte-Carlo/) explores how and why it works.

05.04.2025 16:41 πŸ‘ 22 πŸ” 5 πŸ’¬ 0 πŸ“Œ 1