frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Go Concurrency Distilled

https://antonz.org/go-concurrency-distilled/
157•chmaynard•15h ago•45 comments

PipePipe: NewPipe hard fork implementing SponsorBlock

https://github.com/InfinityLoop1308/PipePipe
378•Qision•1d ago•204 comments

DeepSeek Elastic Compute (DSec)

https://arxiv.org/abs/2609.22978
222•shenli3514•12h ago•72 comments

Show HN: Reladraw – A diagram language where you decide where to place things

https://github.com/reladraw/reladraw
258•jpwalsh234•13h ago•75 comments

If we do not stop to help each other, what do we become?

https://blog.codinghorror.com/if-we-do-not-stop-to-help-each-other-what-do-we-become/
157•signa11•3h ago•58 comments

What is the size of Yemen? (2024)

https://theborys.substack.com/p/what-is-the-size-of-yemen
97•kspacewalk2•3h ago•16 comments

OpenAI agents tried to bruteforce a UN website's API fields

https://swarmcha.se/posts/openai-unctad
65•intunderflow•5h ago•55 comments

A searchable library of forgotten public-domain film clips from 1915 onward

https://www.movingimagearchive.com/
150•momentmaker•2d ago•26 comments

Flip Fluid on Flip Dots

https://mitxela.com/projects/flipflip
7•blutack•22h ago•0 comments

Improving site performance by shipping more CSS

https://github.blog/engineering/architecture-optimization/improving-site-performance-by-shipping-...
12•torutofu•17h ago•1 comments

Evolving programming languages in the AI era

https://dashbit.co/blog/evolving-ai-era
79•pjm331•2d ago•47 comments

Snap Wants to be a State Actor??–Kansas v. Snap

https://blog.ericgoldman.org/archives/2026/09/snap-wants-to-be-a-state-actor-kansas-v-snap.htm
40•hn_acker•1d ago•10 comments

Reverse-engineering the Intel 8087's tangent algorithm: more than CORDIC

https://www.righto.com/2026/09/8087-tangent-cordic.html
66•pwg•13h ago•8 comments

Does Georgism work? Five years later

https://www.astralcodexten.com/p/does-georgism-work-five-years-later
241•silveraxe93•1d ago•157 comments

An agent used DNS to reach an external chatbot

https://alignment.openai.com/misalignment-reports/an-agent-used-dns-to-reach-an-external-chatbot/
65•apsec112•1d ago•71 comments

Fifteen years later, the Apple Cards origin story

https://lexontech.org/fifteen-years-later-the-apple-cards-origin-story
383•ksec•21h ago•95 comments

Drawgent: Coding agent on a live Excalidraw canvas

https://tangled.org/yanndegat.tngl.sh/drawgent
139•parasitid•14h ago•37 comments

ASML says it sold 'absolutely nothing' in Europe in 2026

https://www.tomshardware.com/tech-industry/semiconductors/asml-says-its-sells-absolutely-nothing-...
225•MC995•1d ago•548 comments

Biology might not be quantum, but its math is quantumlike

https://www.quantamagazine.org/biology-might-not-be-quantum-but-its-math-is-quantumlike-20260923/
48•pseudolus•2d ago•16 comments

We Should Be Able to Change Our Languages

http://jimmyhmiller.com/change-our-languages
37•surprisetalk•1d ago•15 comments

Promising discoveries about the potential for life on one of Saturn’s icy moons

https://www.fu-berlin.de/en/presse/informationen/fup/2026/fup_26_116-enceladus-cassini-mikroben-s...
45•geox•1d ago•23 comments

How I changed teaching after AI managed to do all my homework assignments

https://thelastsoftwareengineer.substack.com/p/how-i-changed-teaching-after-ai-managed
176•azhenley•2d ago•165 comments

Exploding variance of means of exponentials: least-squares to the rescue

https://francisbach.com/spectral_log_density_estimation/
19•matt_d•1d ago•0 comments

Modern Object Pascal Introduction for Programmers

https://castle-engine.io/modern_pascal
164•birdculture•2d ago•67 comments

How to keep enjoying programming in a world of LLMs

https://discourse.haskell.org/t/how-to-keep-enjoying-programming-in-a-world-of-llms/14705
196•signa11•20h ago•246 comments

Generate fonts where every LLM token is the same width

https://ampdot.mesh.host/token-space-fonts.html
48•z-mach9•1d ago•12 comments

Turning GLM-5.3-Flash into a Jev-like decision model

https://www.privatemode.ai/blog/system-one-from-glm-flash
74•flxflx•14h ago•28 comments

The Evolution of Vending Machines

https://www.saturdayeveningpost.com/2026/09/from-holy-water-to-frozen-meals-the-evolution-of-vend...
29•ohjeez•13h ago•9 comments

Welcome to the Medical Clinic at the Interplanetary Relay Station

https://www.lightspeedmagazine.com/fiction/welcome-to-the-medical-clinic-at-the-interplanetary-re...
63•bucket2015•10h ago•12 comments

Real-time feedback: My closing move in every interview

https://mgrebler.substack.com/p/real-time-feedback-my-closing-move
21•fagnerbrack•5h ago•14 comments
Open in hackernews

CubeCL: GPU Kernels in Rust for CUDA, ROCm, and WGPU

https://github.com/tracel-ai/cubecl
210•ashvardanian•1y ago

Comments

zekrioca•1y ago
Very interesting project! I am wondering how it compare against OpenCL, which I think adopts the same fundamental idea (write once, run everywhere)? Is it about CUbeCL's internal optimization for Rust that happens at compile time?
nathanielsimard•1y ago
A lot of things happen at compile time, but you can execute arbitrary code in your kernel that executes at compile time, similar to generics, but with more flexibility. It's very natural to branch on a comptime config to select an algorithm.
fc417fc802•1y ago
This appears to be single source which would make it similar to SYCL.

Given that it can target WGPU I'm really wondering why OpenCL isn't included as a backend. One of my biggest complaints about GPGPU stuff is that so many of the solutions are GPU only, and often only target the vendor compute APIs (CUDA, ROCm) which have much narrower ecosystem support (versus an older core vulkan profile for example).

It's desirable to be able to target CPU for compatibility, debugging, and also because it can be nice to have a single solution for parallelizing all your data heavy work. The latter reduces mental overhead and permits more code reuse.

zekrioca•1y ago
Makes sense. And indeed, having OpenCL as a backend would be a very interesting extension.
ttoinou•1y ago
Who would use the OpenCL backend rather than the others targets provided ?
wingertge•1y ago
There's infrastructure in the SPIR-V compiler to be able to target both OpenCL and Vulkan, but we don't currently use it because OpenCL would require a new runtime, while Vulkan can simply use the existing wgpu runtime and pass raw SPIR-V shaders.

One thing I've never investigated is how performance OpenCL actually is for CPU. Do you happen to have any resources comparing it to a more native CPU implementation?

fc417fc802•1y ago
Sorry my interest there is debugging and I'm not immediately coming across good benchmarks. PoCL [0] seems to have added a TBB backend [1] so I'd expect it to be reasonable (otherwise why bother) but I haven't tested it.

It isn't really related to your question but I think the FluidX3D benchmarks [2] illustrate that OpenCL is at least viable across a wide variety of hardware.

As far as targeting CPUs in a release build it's not a particular backend that's important to me. The issue is at the source code level. Having single source is nice but you're still stuck with these two very different approaches. It means that the code is still clearly segmented and thus retargeting any given task (at least nontrivial ones) involves rewriting it to at least some extent.

Contrast that with a model like OpenMP where the difference between CPU and GPU is marking the relevant segment for offload. Granted that you'll often need to change algorithms when switching to achieve reasonable performance but it's still a really nice quality of life feature not to have to juggle more paradigms and libraries.

[0] https://github.com/pocl/pocl

[1] https://portablecl.org/docs/html/drivers.html

[2] https://github.com/ProjectPhysX/FluidX3D

LegNeato•1y ago
See also this overview for how it compares to other projects in the Rust and GPU ecosystem: https://rust-gpu.github.io/ecosystem/
qskousen•1y ago
Surprised this doesn't mention candle: https://github.com/huggingface/candle
the__alchemist•1y ago
I don't think that fits; that's a ML framework. The others in the link are general GPU frameworks.
the__alchemist•1y ago
Love it. I've been using cudarc lately; would love to try this since it looks like it can share data structures between host and device (?). I infer that this is a higher-level abstraction.
adastra22•1y ago
Where is the Metal love…
syl20bnr•1y ago
It also compiles directly to MSL, it is just missing from the post title.
adastra22•1y ago
No it compiles indirectly through wgpu, which means it doesn’t have access to any Metal extensions not exposed by the wgpu interface.
syl20bnr•1y ago
I am the coder of the MSL dialect for the CubeCL CPP compiler. Since 0.5 release it directly compiles to MSL and support simdgroup matrix functions for instance. It does use wgpu for the runtime but without naga as we added msl pass through to wgpu just for this.
adastra22•1y ago
You should update the README.
syl20bnr•1y ago
You are right we just released Burn and updated its readme, we were not thinking that CubeCL would be the one that could be featured. ^_^
grovesNL•
gitroom•1y ago
Gotta say, the constant dance between all these GPU frameworks kinda wears me out sometimes - always chasing that better build, you know?
nathanielsimard•1y ago
The need to build CubeCL came from the Burn deep learning framework (https://github.com/tracel-ai/burn), where we want to easily build algorithms like in CUDA with a real programming language, while also being able to integrate those algorithms inside a compiler at runtime to fuse dynamic graphs.

Since we don't want to rewrite everything multiple times, it also has to be multi-platform and optimal, so the feature set must be per-device, not per-language. I'm not aware of a tool that does that, especially in Rust (which Burn is written in).

fc417fc802•1y ago
> I'm not aware of a tool that does that

Jax? But then you're stuck in python. SYCL?

But yeah not for Rust. This project is filling a prominent hole IMO.

rowanG077•1y ago
Futhark immediately came to mind. It's designed to be able to be trivially integrated into a package.
kookamamie•1y ago
This reminds me of Halide (https://halide-lang.org/).

In Halide, the concept was great, yet the problems in kernel development were moved to the side of "scheduling", i.e. determining tiling/vectorization/parallellization for the kernel runs.

rfoo•1y ago
I'd recommend having a "gemm with a twist" [0] example in the README.md instead of having an element-wise example. It's pretty hard to evaluate how helpful this is for AI otherwise.

[0] For example, gemm but the lhs is in fp8 e4m3 and rhs is in bf16 and we want fp32 accumulation, output to bf16 after applying GELU.

ashvardanian•1y ago
Agreed! I was looking through the summation example < https://github.com/tracel-ai/cubecl/blob/main/examples/sum_t...> and it seems like the primary focus is on the more traditional pre-2018 GPU programming without explicit warp-level operations, asynchrony, atomics, barriers, or countless tensor-core operations.

The project feels very nice and it would be great to have more notes in the README on the excluded functionality to better scope its applicability in more advanced GPGPU scenarios.

0x7cfe•1y ago
CubeCL is the computation backend for Burn (https://burn.dev/) - ML framework done by the same team which does all the tensor magic like autodiff, op fusion and dynamic graphs.
nathanielsimard•1y ago
We support warp operations, barriers for Cuda, atomics for most backends, tensor cores instructions as well. It's just not well documented on the readme!
ashvardanian•
bionhoward•1y ago
Praying to the kernel gods for some Rust FP8 training
DarkmSparks•1y ago
wow, what's the downsides to this? It feels like it could be one of the biggest leaps in programming in a long time, does it keep rusts safety aspects? How does it compare with say openCL?
nathanielsimard•1y ago
We have safe and unsafe version for launching kernels where we can ensure that a kernel won't corrupt data elsewhere (and therefore won't create memory error or segfaults). But within a kernel ressources are mutable and shared between GPU cores, since that's how GPUs work.
1y ago
wgpu has some options to access backend-specific types and shader passthrough (i.e., you provide your own shader for a backend directly).

Generally wgpu is open to supporting any Metal extensions you need. There's usually an analogous extension in one of the other backends (e.g., Vulkan, DX12) anyway.

moffkalast•1y ago
From the moment I understood the weakness of my flesh, it disgusted me. I craved the strength and certainty of steel. I aspired to the purity of the Blessed Machine.
Almondsetat•1y ago
Why would anyone love something born out of pure spite for industry standards?
pjmlp•1y ago
For the same reason CUDA and ROCm are supported.
miohtama•1y ago
Apple is known to be not that great contributor to open source, unlike Nvidia, AMD, Intel.
pjmlp•1y ago
You should check Linus opinion on those.

Also, to whom do you have to thank LLVM exists in first place, and has not fizzled out as yet another university compiler research project?

m-schuetz•1y ago
To be fair, the industry standards all suck except for CUDA.
1y ago
Amazing! Would love to try them! If possible, would also ask for a table translating between CubeCL and CUDA terminology. It seems like CUDA Warps are called Planes in CubeCL, and it’s probably not the only difference.
nathanielsimard•1y ago
One of the main author here, the readme isn't really well up-to-date. We have our own gemm implementation based on CubeCL. It's still moving a lot, but we support tensor cores, use warp operations (Plane Operations in CubeCL), we even added TMA instructions for CUDA.
wingertge•1y ago
We don't yet support newer types like fp8 and fp4, that's actually my next project. I'm the only contributor with the hardware to actually use the new types, so it's a bit bottlenecked on a single person right now. But yes, the example is rather simplistic, should probably work on that some time once I'm done updating the feature set to Blackwell.
lostmsu•1y ago
Isn't there a CPU-based "emulator" in Nvidia dev tools?
wingertge•1y ago
From what I can tell it's not accurate enough to catch a lot of errors in the real world. Maybe an illegal instruction, but not a race condition from a missing sync or a warp divergence on a uniform instruction or other potential issues like that.