During startup and after the internal database has been initialized as described in the section Built-in Default Configuration Settings, HPX will try to locate and load additional ini files to be used as a source for configuration properties. This allows for a wide spectrum of additional customization possibilities by the user and system administrators. The sequence of locations where HPX will try loading the ini files is well defined and documented in this section. All ini files found are merged into the internal configuration database. The merge operation itself conforms to the rules as described in the section The HPX INI File Format.
hpx.component_pathand retrieve their default configuration information (see section Loading Components for more details).
hpx.iniin the directory referenced by the property
.hpx.iniin the current working directory, e.g. the directory the application was invoked from.
HPX_INI. This variable is expected to provide the full path name of the ini configuration file (if any).
/etc/hpx.ini. This lookup is done on Linux systems only.
.hpx.iniin the home directory of the current user, e.g. the directory referenced by the environment variable
.hpx.iniin the directory referenced by the environment variable
--hpx:ini. The properties will be added to the database in the same sequence as they are specified on the command line. The format for those options is for instance
--hpx:ini=hpx.default_stack_size=0x4000. In adddition to the explicit command line options, this will set the following properties as implied from other settings:
hpx.parcel.portas set by
hpx.agas.service_modeas set by
hpx.cmd_linewill be derived from the actual command line
hpx.localitiesas set by
hpx.runtime_modewill be derived from any explicit
--hpx:connect, or it will be derived from other settings, such as
*.iniin all directories listed by the property
hpx.ini_path. All files found during this search will be merged. The property
hpx.ini_pathcan hold a list of directories separated by
':'(on Linux or Mac) or
--hpx:app-config. Note that this file will be merged as the content for a top level section
Any changes made to the configuration database caused by one of the
files will influence the loading process for all subsequent files.
For instance, if one of the ini files loaded changes the property
If any of the environment variables or files listed above is not found the corresponding loading step will be silently skipped.