Package developers should call this function in their packages' base::.onLoad(). This enables the user to query available levels and bind parallelization to specific levels. This is especially helpful for nested calls to parallelMap(), e.g. where the inner call should be parallelized instead of the outer one.

To avoid name clashes, we encourage developers to always specify the argument package. This will prefix the specified levels with the string containing the package name, e.g. parallelRegisterLevels(package="foo", levels="dummy") will register the level “foo.dummy” and users can start parallelization for this level with parallelStart(<backend>, level = "parallelMap.dummy"). If you do not provide package, the level names will be associated with category “custom” and can there be later referred to with “custom.dummy”.

parallelRegisterLevels(package = "custom", levels)



Name of your package. Default is “custom” (we are not in a package).


Available levels that are used in the parallelMap() operations of your package or code. If package is not missing, all levels will be prefixed with “package.”.