package parany
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=6a90adb96b716f3c46c23989bd21f3c8d3df80fc8f442f2541da49fa28f6c20a
md5=b1d3a64efa26f44e4befe0538fb3dd19
Description
Generalized map reduce for parallel computers (not distributed computing). Can process in parallel an infinite stream of elements.
Can process a very large file in parallel on a multicore computer; provided there is a way to cut your file into independent blocks (the 'demux' function). The processing function is called 'work'. The function gathering the results is called 'mux'. The number of processors running your computation in parallel is called 'nprocs'. The chunk size (number of items) processed by one call to the 'work' function is called 'csize'.
There is a minimalist Parmap module, if you want to switch to/from Parmap easily.
Read the corresponding ocamldoc before using.
USING THIS LIBRARY IN A MISSION CRITICAL, LONG-RUNNING SOFTWARE THAT IS NEVER SUPPOSED TO CRASH IS NOT ADVIZED. WHILE THIS LIBRARY IS HIGH PERFORMANCE, IT IS ALSO DANGEROUS. USE AT YOUR OWN RISKS.
Published: 19 May 2023
README
parany
Parallelize any kind of computation
Generalized map reduce for parallel computers (not distributed computing).
Can process a very large file in parallel on a multicore computer; provided there is a way to cut your file into independent blocks (the "demux" function).
Can process in parallel an infinite stream of elements (if you don't care about their processing order). In practice, if the stream is really infinite but you want to collect results in order, some integer counter will eventually overflow and the behavior is unspecified and unknown after this unfortunate event.
The processing function is called "work". The function gathering the results is called "mux". The number of processors running your computation in parallel is called "nprocs".
Dev Dependencies
None
Used by (14)
- acp4
-
acpc
>= "2.0.0"
- comby
-
hts_shrink
>= "2.1.2"
-
lbvs_consent
>= "2.2.0"
-
linwrap
>= "5.1.1"
-
molenc
>= "11.4.0"
-
oplsr
>= "8.0.1"
-
oranger
>= "3.0.1"
- orf
-
orrandomForest
>= "3.0.0"
-
pardi
>= "3.1.1"
-
rankers
>= "2.0.9"
- svmwrap
Conflicts
None