Live data from Hacker News

Bend: a high-level language that runs on GPUs (via HVM2)

github.com

51–60 of 269 posts

Re: Bend: a high-level language that runs on GPUs (via HVM2)

#51
Bend looks like a nice language.

> That's a 111x speedup by doing nothing. No thread spawning, no explicit management of locks, mutexes. We just asked bend to run our program on RTX, and it did. Simple as that. Note that, for now, Bend only supports 24-bit machine ints (u24), thus, results are always mod 2^24.

Ahh, not even 32bit? Hmm, that seems pretty arbitrary for someone not accustomed to gpu's and wanting to solve some problems requiring 64 bits (gravitational simulation of solar system at millimeter resolution could use ~58bit ints for position).

Re: Bend: a high-level language that runs on GPUs (via HVM2)

#53

What's going on with the super-linear speedup going from one thread to all 16? 210 seconds (3.5 minutes) to 10.5 seconds is a 20x speedup, which isn't really expected.

the single-thread case ran a little slower than it should on this live demo due to a mistake on my part: `run` redirected to the Rust interpreter, rather than the C interpreter. the Rust one is a little bit slower. the numbers on the site and on all docs are correct though, and the actual speedup is ~12x, not ~16x.

Thanks for the explanation and the cool project.

I will give bend a shot on some radar signal processing algorithms.

Re: Bend: a high-level language that runs on GPUs (via HVM2)

#54

Bend looks like a nice language. > That's a 111x speedup by doing nothing. No thread spawning, no explicit management of locks, mutexes. We just asked bend to run our program on RTX, and it did. Simple as that. Note that, for now, Bend only supports 24-bit machine ints (u24), thus, results are always mod 2^24. Ahh, not even 32bit? Hmm, that seems pretty arbitrary for someone not accustomed to gpu's and wanting to sol…

We will have 64-bit boxed numbers really soon! As in, next month, or earlier if users find this to be a higher priority.

Re: Bend: a high-level language that runs on GPUs (via HVM2)

#55
post #49

As a resident of Bend, Oregon... it was kind of funny to read this and I'm curious about the origin of the name.

Bending is an operation similar to folding, both in real life and in the language. While fold is recursive on data, bend is recursive on a boolean condition (like a pure while that supports multiple branching recursion points).

I was actually looking forward to seeing someone from Bend to make a comment like this

Re: Bend: a high-level language that runs on GPUs (via HVM2)

#56
post #52
post #49

As a resident of Bend, Oregon... it was kind of funny to read this and I'm curious about the origin of the name.

As a fellow resident of Bend I felt the same way when I saw this.

As a native Bendite but not current Bend resident, seeing that word with a capital letter always makes me smell juniper and sagebrush a little bit.

Re: Bend: a high-level language that runs on GPUs (via HVM2)

#57

Bend looks like a nice language. > That's a 111x speedup by doing nothing. No thread spawning, no explicit management of locks, mutexes. We just asked bend to run our program on RTX, and it did. Simple as that. Note that, for now, Bend only supports 24-bit machine ints (u24), thus, results are always mod 2^24. Ahh, not even 32bit? Hmm, that seems pretty arbitrary for someone not accustomed to gpu's and wanting to sol…

We will have 64-bit boxed numbers really soon! As in, next month, or earlier if users find this to be a higher priority.

What other types are you planning? Maybe some floats (even if only on cpu targets, would be nice).

Re: Bend: a high-level language that runs on GPUs (via HVM2)

#59
Ten years ago, I took a course on parallel algorithms (15-210 at CMU). It pitched parallelism as the future of computing as Moore's law would hit inevitable limits. I was sold and I was excited to experiment with it. Unfortunately, there weren't many options for general parallel programming. Even the language we used for class (SML) wasn't parallel (there was a section at the end about using extensions and CUDA but it was limited from what I recall).

Since then, I was able to make some experiments with multithreading (thanks Rust) and getting very creative with shaders (thanks Shadertoy). But a general parallel language on the GPU? I'm super excited to play with this!

Post reply on HN