Live data from Hacker News

Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

github.com

31–40 of 45 posts

Re: Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

#31

Out of curiosity, how do Spice/Chili/Rayon compare against the boring answer, OpenMP? I guess they must have some really neat capabilities.

That’s what I was wondering. Iiuc openmp uses work stealing and the spice readme talks about the inefficiency of that: https://github.com/judofyr/spice?tab=readme-ov-file#work-ste... so I’d be interested in seeing a benchmark.

Thanks. That’s some pretty clever stuff, with a nice intuitive description.

Re: Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

#33
post #23

Is there anything like ray.io in rust? Nobody running computations on clusters in rust?

The company I work at (Hadean) used to have this as a product - think erlang-like multi machine IPC, with automatic acquisition of cloud resources and language integration for Rust, C, C++, Python. Pretty easy to point it at some machines and get them running a distributed application (as in simulation or big data).

But infrastructure for developers is hard to make money with - developers like to build it themselves and people holding the purse strings point at kubernetes and say "that's free". So we just use it as an internal platform for a distributed simulation engine and it works pretty well.

I did an analysis of removing it (it's a lot of bespoke code that we have to maintain for something that isn't our actual product) and I think you could probably implement something on top of Nomad that's close enough...but then Nomad went BSL and Kubernetes is a big complexity shift.

So...if anyone knows of something out there let me know, I'd love to be able to use it outside of work :)

Re: Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

#34
post #33
post #23

Is there anything like ray.io in rust? Nobody running computations on clusters in rust?

The company I work at (Hadean) used to have this as a product - think erlang-like multi machine IPC, with automatic acquisition of cloud resources and language integration for Rust, C, C++, Python. Pretty easy to point it at some machines and get them running a distributed application (as in simulation or big data). But infrastructure for developers is hard to make money with - developers like to build it themselves…

ray.io seems to be doing pretty well financially...

Re: Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

#35
post #34
post #33

Earlier quoted context omitted.

The company I work at (Hadean) used to have this as a product - think erlang-like multi machine IPC, with automatic acquisition of cloud resources and language integration for Rust, C, C++, Python. Pretty easy to point it at some machines and get them running a distributed application (as in simulation or big data). But infrastructure for developers is hard to make money with - developers like to build it themselves…

ray.io seems to be doing pretty well financially...

Right, because Anyscale found a niche that distributed compute matters in (AI) and built great libraries/hosted platforms/services around that. I would venture that the money they make from people who pare back things to just ray core is ~0, which is why it's open source.

Put another way - building such a platform doesn't preclude commercial success, but (at least for us) it isn't sufficient. Fly.io might be able to pull it off if they want to explore that direction imo.

Fwiw if you dig around in the ray core codebase (as I did when I was doing competitor analysis years ago) you can use the core C code from other languages to build such a platform for Rust if you like - they had Java and C++ interfaces at the time, but I haven't looked in the last 5 years.

Re: Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

#36

> a "low-overhead" parallelization library Who is out here building high-overhead parallelization libraries?

Check out my high-overhead replacement for 'cat' in BASH

    ~ $ type cat
    cat is a function
    cat () 
    { 
        while read; do
            printf '%s\n' "$REPLY";
        done 
It probably butchers things. Why? I got bored in a meeting and someone accidentally posted 'cat' to Teams

Re: Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

#38
post #25

> a "low-overhead" parallelization library Who is out here building high-overhead parallelization libraries?

Yeah, why are those bastards writing slow code? They should just write fast code instead

Yeah and people should make sure not to commit bugs too. I look at all these commits with bugs and I'm like why are you committing bugs.

Re: Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

#39
post #19

I would love to see a blog post or more detail about how this implementation works and why it can beat rayon in some cases.

This previous discussion of Spice on HN may help a bit: https://news.ycombinator.com/item?id=41230344

Re: Show HN: Chili. Rust port of Spice, a low-overhead parallelization library

#40
post #38
post #25

Earlier quoted context omitted.

Yeah, why are those bastards writing slow code? They should just write fast code instead

Yeah and people should make sure not to commit bugs too. I look at all these commits with bugs and I'm like why are you committing bugs.

Stop publishing software, you don't refine your meal constantly! Enough is enough!
Post reply on HN