class_docstr: Helper abc which defines all methods a ParallelBackend must implement
class_docstr_tok: ["Helper","abc","which","defines","all","methods","a","ParallelBackend","must","implement"]
docstr: Determine the number of jobs that can actually run in parallel
  
  n_jobs is the number of workers requested by the callers. Passing
  n_jobs=-1 means requesting all available workers for instance matching
  the number of CPU cores on the worker host(s).
  
  This method should return a guesstimate of the number of workers that
  can actually perform work concurrently. The primary use case is to make
  it possible for the caller to know in how many chunks to slice the
  work.
  
  In general working on larger data chunks is more efficient (less
  scheduling overhead and better use of CPU cache prefetching heuristics)
  as long as all the workers have enough work to do.
code: def effective_n_jobs(self, n_jobs):
      """Determine the number of jobs that can actually run in parallel
  
      n_jobs is the number of workers requested by the callers. Passing
      n_jobs=-1 means requesting all available workers for instance matching
      the number of CPU cores on the worker host(s).
  
      This method should return a guesstimate of the number of workers that
      can actually perform work concurrently. The primary use case is to make
      it possible for the caller to know in how many chunks to slice the
      work.
  
      In general working on larger data chunks is more efficient (less
      scheduling overhead and better use of CPU cache prefetching heuristics)
      as long as all the workers have enough work to do.
      """
  
imports: import gc
  import os
  import sys
  import warnings
  import threading
  from abc import ABCMeta, abstractmethod
  from .format_stack import format_exc
  from .my_exceptions import WorkerInterrupt, TransportableException
  from ._multiprocessing_helpers import mp
  from ._compat import with_metaclass
label_desc: Use image node_id 1 for calling the ParallelBackendBase obj's underlying member method code with example usage: obj.effective_n_jobs(n_jobs) without return types