Troels Henriksen
Troels Henriksen
Sounds good! I know we took out the flashiest Z3-based parts, but I'm curious whether we'll see speedups on other benchmarks.
Many of the tests have no input/output pairs and no `structure` stanza. I get that means they check if the compiler crashes, but my experience is that such tests are...
Differences in compile time seem minor and will hopefully be offset by future improvements elsewhere. Let's just merge it and see what happens.
@Munksgaard Do you fancy writing an approachable blog post on futhark-lang.org for this optimisation?
I don't think this is really about Futhark.
Why mix it up with function application at all, instead of just returning a tuple?
Surely just having parallel tuples also lets you write a parallel List.map? Pseudocode: ``` let (y,ys) = par(f(x),List.map(f,xs)) Cons(y,ys) ``` Although if this `par` construct always returns a tuple, you...
1. Yes, of course it should enforce purity. Impure parallelism is a recipe for race conditions. 2. I don't think it should be overloaded, because then refactoring might result in...
I think this is fixed now, as we generate annotations in the kernels that indicate the group size.
That can always be bikeshedded later. I actually envision this being part of a more general linter-style command that checks for all sorts of things.