Programming Leftovers
-
APNIC ☛ In-network acceleration for AI / ML workloads
NCCL implements several algorithms for collective operations, such as ring, tree, and double binary trees, selecting the most efficient one based on the data size, the number of GPUs involved, and the network topology. The algorithms are designed to optimize the data transfer for collective operations.
-
Jussi Pakkanen ☛ C is dead, long live C (APIs)
The message is quite clear. The only thing in common is C, so that is what you have to use. The alternative is maintaining an implementation per language leaving languages you explicitly do not support out in the cold.
So even though C as a language is (most likely) going away, C APIs are not. In fact, designing C APIs is a skill that might even see a resurgence as the language ecosystem fractures even further. Note that providing a library with a C API does not mean having to implement it in C. All languages have ways of providing libraries whose external API is compatible with C. As an extreme example, Visual Studio's C runtime libraries are nowadays written in C++.
-
Nicolas Fränkel ☛ The try block in Rust
I wrote previously about libs for error management in Rust. This week, I want to write about the try block, an experimental feature.
-
[Old] UNIXdigest ☛ So-called modern web developers are the culprits
Just because I can use Bash to create and run a website doesn't mean it's a good idea to do so!
Some people argue that developer time is more costly than computing resources and Rails and Django is all about getting things done fast, but that is exactly the problem. The problems we're facing on the Internet today is the long term consequence of exactly that irresponsible short term view. To get things done fast rather than right.