Tldr HIP is CUDA made by AMD. It’s portable across amd and nvidia cards, it’s good, and now futhark has a backend targeting it.
My thoughts: I’d love to see a comparison of futhark, chapel, and Python in examples that aren’t purely numerical.
Good summary.
What do you mean by purely numerical? By design, Futhark is not a general-purpose language so it cannot express e.g. IO or even side effects in general.
So how do you get data in and out? Is it basically that you link the stuff using ffi in a host language? Or what?
Yes, that’s the idea. Here’s a link to the documentation regarding interop with C and Python: https://futhark-book.readthedocs.io/en/latest/interoperability.html#interoperability
Various tools also exist for creating bindings in other languages, as detailed here.
Tldr HIP is CUDA made by AMD. It’s portable across amd and nvidia cards, it’s good, and now futhark has a backend targeting it.
My thoughts: I’d love to see a comparison of futhark, chapel, and Python in examples that aren’t purely numerical.
Good summary.
What do you mean by purely numerical? By design, Futhark is not a general-purpose language so it cannot express e.g. IO or even side effects in general.
So how do you get data in and out? Is it basically that you link the stuff using ffi in a host language? Or what?
Yes, that’s the idea. Here’s a link to the documentation regarding interop with C and Python: https://futhark-book.readthedocs.io/en/latest/interoperability.html#interoperability
Various tools also exist for creating bindings in other languages, as detailed here.