HPX - High Performance ParalleX

PrevUpHomeNext

Struct parallel_execution_policy

hpx::parallel::v1::parallel_execution_policy

Synopsis

// In header: <hpx/parallel/execution_policy.hpp>


struct parallel_execution_policy {

  // public member functions
  parallel_execution_policy 
  operator()(threads::executor const &, std::size_t) const;
  parallel_execution_policy operator()(threads::executor const &) const;
  parallel_execution_policy operator()(std::size_t) const;
  parallel_task_execution_policy 
  operator()(task_execution_policy_tag, threads::executor const &, 
             std::size_t) const;
  parallel_task_execution_policy 
  operator()(task_execution_policy_tag, threads::executor const &) const;
  parallel_task_execution_policy 
  operator()(task_execution_policy_tag, std::size_t) const;
  parallel_task_execution_policy operator()(task_execution_policy_tag) const;
};

Description

The class parallel_execution_policy is an execution policy type used as a unique type to disambiguate parallel algorithm overloading and indicate that a parallel algorithm's execution may be parallelized.

parallel_execution_policy public member functions

  1. parallel_execution_policy 
    operator()(threads::executor const & exec, std::size_t chunk_size) const;

    Create a new parallel_execution_policy referencing an executor and a chunk size.

    Parameters:

    chunk_size

    [in] The chunk size controlling the number of iterations scheduled to be executed on the same HPX thread

    exec

    [in] The executor to use for the execution of the parallel algorithm the returned execution policy is used with

    Returns:

    The new parallel_execution_policy

  2. parallel_execution_policy operator()(threads::executor const & exec) const;

    Create a new parallel_execution_policy referencing an executor and a chunk size.

    Parameters:

    exec

    [in] The executor to use for the execution of the parallel algorithm the returned execution policy is used with

    Returns:

    The new parallel_execution_policy

  3. parallel_execution_policy operator()(std::size_t chunk_size) const;

    Create a new parallel_execution_policy referencing a chunk size.

    Parameters:

    chunk_size

    [in] The chunk size controlling the number of iterations scheduled to be executed on the same HPX thread

    Returns:

    The new parallel_execution_policy

  4. parallel_task_execution_policy 
    operator()(task_execution_policy_tag tag, threads::executor const & exec, 
               std::size_t chunk_size) const;

    Create a new parallel_task_execution_policy referencing an executor and a chunk size.

    Parameters:

    chunk_size

    [in] The chunk size controlling the number of iterations scheduled to be executed on the same HPX thread

    exec

    [in] The executor to use for the execution of the parallel algorithm the returned execution policy is used with

    tag

    [in] Specify that the corresponding asynchronous execution policy should be used

    Returns:

    The new parallel_execution_policy

  5. parallel_task_execution_policy 
    operator()(task_execution_policy_tag tag, threads::executor const & exec) const;

    Create a new parallel_task_execution_policy referencing an executor and a chunk size.

    Parameters:

    exec

    [in] The executor to use for the execution of the parallel algorithm the returned execution policy is used with

    tag

    [in] Specify that the corresponding asynchronous execution policy should be used

    Returns:

    The new parallel_execution_policy

  6. parallel_task_execution_policy 
    operator()(task_execution_policy_tag tag, std::size_t chunk_size) const;

    Create a new parallel_execution_policy referencing a chunk size.

    Parameters:

    chunk_size

    [in] The chunk size controlling the number of iterations scheduled to be executed on the same HPX thread

    tag

    [in] Specify that the corresponding asynchronous execution policy should be used

    Returns:

    The new parallel_execution_policy

  7. parallel_task_execution_policy operator()(task_execution_policy_tag tag) const;

    Create a new parallel_execution_policy referencing a chunk size.

    Parameters:

    tag

    [in] Specify that the corresponding asynchronous execution policy should be used

    Returns:

    The new parallel_execution_policy


PrevUpHomeNext