Ive read a decent part of his thesis yea. Sadly he doesn't really describe parsing, though i think thats less work for apl in specfic, whereas our approach is more generic.
There is also a surprising amount of related work from the 80s, which are mainly about pram algorithms for parsing
It mostly seems to have died out around the 90s, though there was some later work as well (like the parsing algorithm i implemented, its from a paper from 2007 or so)
Does parallel parsing... work? I mean, is it worth the bother?
Aren't you IO-limited in most applications where parsing is the bottleneck?
Gusten Theodor Isfeldt
I will probably soon need to make a Futhark module available for a Matlab user. I plan to just give them a wrapped futhark-generated C-library so they don't need the to install the compiler, but I think they use windows, and I don't have any experience building C-code on windows. Are there any dependencies that are not installed on a default windows system?
Is it an idea to add a check to the generated opencl whether a device supports the minimum required opencl version?
I have two OpenCL versions installed on my system, one is provided by mesa and only supports up to OpenCL 1.1, while the other one, which i ripped from amdgpu-pro, does support 1.2
unfortunately the mesa one appears first and i sometimes forget to pass -d. I know its not much to type that, but i think its appropriate if the generated code also checks for it and skips any incompatible devices.
(i set up a build environment for futhark the other day so i'm fine with contributing this myself, but i just want to know if this would be an appropriate thing to add)
Futhark doesn't require more than 1.1, I think. Mesa is probably defective for other reasons. I've certainly never managed to get it to work.
Since Mesa might work for some people and in some future, I don't like the idea of blacklisting it. Presumably people who install the Mesa ICD also do it for a reason. The only thing we blacklist is Apple's CPU device, because it is completely dysfunctional, and users cannot get rid of it.