Faster computing results without fear of errors
news.mit.edu
news.mit.edu
Github project: https://github.com/binpash/pash
> No matter the performance benefits — if you promise to make something run in a second instead of a year — if there is any chance of returning incorrect results, no one is going to use your method
This isn't particularly true depending on your definition of incorrect, often it doesn't need to be correct just close enough. As an example the fast inverse square root function in quake give results that are incorrect but close enough and is 10x faster than getting the correct result.
True. A better description would be something like "an auto-parallelizing compiler/runtime for Unix shell scripts" which accepts standard shell scripts and performs automatic parallelization wherever it can.
However, the irony here is that the specific target audience for this tool actually will cheerfully accept incorrect parallelization for a speedup. Evidence for this is the use of parallel make, which does nothing to assure correctness; correctness is up to the Makefile rules expressing the correct, complete dependency graph.
It's a fairly common practice to unleash parallel make on Makefiles that were written by other people (e.g. authors of free software), where those authors provided not a shred of documented assurance that their Makefiles were designed and tested for parallel use.