4 ms·
This is task-based parallelism and does require significant (and verbose) annotations of the source code.
by octo_t 14y ago
This is task-based parallelism and does require significant (and verbose) annotations of the source code.
- profquail 14y agoThe paper referenced by the article, "Uniqueness and Reference Immutability for Safe Parallelism", says: The group has written several million lines of code, including: core libraries (including collections with polymorphism over element permissions and data-parallel operations when safe), a webserver, a high level optimizing compiler, and an MPEG decoder. So it also handles data-parallelism.
- kibwen 14y agoPaper available here: http://research.microsoft.com/pubs/170528/msr-tr-2012-79.pdf http://research.microsoft.com/pubs/170528/msr-tr-2012-79.pdf Incidentally, I hear this paper is quite similar to one that the Rust[1] folk recently authored regarding their "borrowed pointer" system, due to be possibly published next year. If this sort of thing interests you, I suggest you take a look at Rust (though keep in mind that it's still very pre-alpha). http://www.rust-lang.org/ http://www.rust-lang.org/
- stcredzero 14y agoI was just thinking that this cries out for language support.
- octo_t 14y agoSorry, in task based parallelism I meant in terms of no need explicit threading, which is both good and bad. Disclaimer: my thesis is on a very similar system for a different programming language (before this paper was released), with some differences. For example they assume mutable is the default, where I assume readonly is the default.