HPX - High Performance ParalleX

PrevUpHomeNext

Function start

hpx::start — Main non-blocking entry point for launching the HPX runtime system.

Synopsis

// In header: <hpx/hpx_start.hpp>


bool start(boost::program_options::options_description const & desc_cmdline, 
           int argc, char ** argv, 
           std::function< void()> const & startup = std::function< void()>(), 
           std::function< void()> const & shutdown = std::function< void()>(), 
           hpx::runtime_mode mode = hpx::runtime_mode_default);

Description

This is a simplified main, non-blocking entry point, which can be used to set up the runtime for an HPX application (the runtime system will be set up in console mode or worker mode depending on the command line settings). It will return immediatly after that. Use hpx::wait and hpx::stop to synchronize with the runtime system's execution.

In console mode it will execute the user supplied function hpx_main, in worker mode it will execute an empty hpx_main.

[Note] Note

If the parameter mode is not given (defaulted), the created runtime system instance will be executed in console or worker mode depending on the command line arguments passed in argc/argv. Otherwise it will be executed as specified by the parametermode.

Parameters:

argc

[in] The number of command line arguments passed in argv. This is usually the unchanged value as passed by the operating system (to main()).

argv

[in] The command line arguments for this application, usually that is the value as passed by the operating system (to main()).

desc_cmdline

[in] This parameter may hold the description of additional command line arguments understood by the application. These options will be prepended to the default command line options understood by hpx::init (see description below).

mode

[in] The mode the created runtime environment should be initialized in. There has to be exactly one locality in each HPX application which is executed in console mode (hpx::runtime_mode_console), all other localities have to be run in worker mode (hpx::runtime_mode_worker). Normally this is set up automatically, but sometimes it is necessary to explicitly specify the mode.

shutdown

[in] A function to be executed inside an HPX thread while hpx::finalize is executed. If this parameter is not given no function will be executed.

startup

[in] A function to be executed inside a HPX thread before f is called. If this parameter is not given no function will be executed.

Returns:

The function returns true if command line processing succeeded and the runtime system was started successfully. It will return false otherwise.


PrevUpHomeNext