mpl icon indicating copy to clipboard operation
mpl copied to clipboard

The MaPLe compiler for efficient and scalable parallel functional programming

Results 32 mpl issues
Sort by recently updated
recently updated
newest added

Preliminary implementation, not optimized yet. Just a simple hash-set, with linear probing and tombstones for deletion. Allocation is backed by the block allocator, to avoid space+time overhead of `malloc`. At...

[Skyline benchmark](https://github.com/MPLLang/parallel-ml-bench/blob/main/mpl/bench/skyline/Skyline.sml) from [mpllang/parallel-ml-bench](https://github.com/MPLLang/parallel-ml-bench). The bug sometimes causes a segfault, although I've also seen it hang. It also appears to occur only on small core counts. To reproduce: ``` $...

bug

Using default Makefile, settings on x64 Linux. ``` /usr/bin/ld: /tmp/filei7cguX.o: relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC /usr/bin/ld: /tmp/fileMpJHu9.o: relocation R_X86_64_32S...

**Background**: To do concurrent collection, we need an efficient way of checking whether or not a chunk is in scope of the collection. Currently this is done by, at the...

bug

The `smith-normal-form` regression test is causing a segfault. For example, on commit dfddbd5e4111c0df8a5a37405172cc5fd717459a: ``` [mpl/regression]$ ../build/bin/mpl smith-normal-form.sml [mpl/regression]$ ./smith-normal-form ... Segmentation fault (core dumped) ``` I looked into it a...

bug

The terminology in the hierarchical heaps code needs some updates. Here are some terms that I think should change, and what I would change them to. I will add more...

refactor
discussion

MPL currently avoids GC at the "top level" (i.e., outside any calls to `par`) because these collections typically interfere with parallelism. So far, for parallel programs, this hasn't been too...

Something I've been considering is making a MPL-specific structure with, for example: - `MPL.Parallel` with fork/join primitives - `MPL.Concurrency` with atomics, synchronization prims, etc. - `MPL.Unsafe` with e.g. array allocation...

refactor
discussion

We need to implement better memory management statistics. Much of the [MLton GC library](http://www.mlton.org/MLtonGC) is MLton-specific and no longer relevant to MPL. At the moment to measure GC, I've been...

MLton.Parallel is currently a "bag of stuff". It's worth organizing this. I'll go section by section ### Reorganization I propose the following: * `MLton.Parallel`: contains `numberOfProcessors`, `processorNumber`, `registerProcessorFunction`, and `initializeProcessors`...

refactor
discussion