The parallel module provides tools aimed at parallel computing. At this point
all parallel solutions use the
fork system call and are supported on limited
platforms, notably excluding Windows. On unsupported platforms parallel features
will disable and a warning is printed.
shempty(shape, dtype=<class 'float'>)¶
create uninitialized array in shared memory
shzeros(shape, dtype=<class 'float'>)¶
create zero-initialized array in shared memory
iterate in parallel
nprocssubprocesses, then yield items from iterable such that all processes receive a nonoverlapping subset of the total. It is up to the user to prepare shared memory and/or locks for inter-process communication. The following creates a data vector containing the first four quadratics:
data = shzeros(shape=, dtype=int) for i in pariter(range(4), 2): data[i] = i**2 data
As a safety measure nested pariters are blocked by setting the global
procidvariable; all secundary pariters will be treated like normal serial iterators.
- iterable (iterable) – The collection of items to be distributed over processors
- nprocs (int) – Maximum number of processers to use
Items from iterable, distributed over at most nprocs processors.
parmap(func, iterable, nprocs, shape=(), dtype=<class 'float'>)¶
parallel equivalent to builtin map function
Produces an array of
func(item)values for all items in
iterable. Because of shared memory restrictions
funcmust yield numpy arrays of predetermined shape and type.
Parameters: Returns: Return type:
Array of shape