GithubHelp home page GithubHelp logo

stellar-group / hpx Goto Github PK

View Code? Open in Web Editor NEW
2.4K 126.0 410.0 392.32 MB

The C++ Standard Library for Parallelism and Concurrency

Home Page: https://hpx.stellar-group.org

License: Boost Software License 1.0

CMake 4.50% Python 0.45% C++ 94.48% Shell 0.43% Cuda 0.10% Batchfile 0.01% Dockerfile 0.01% Assembly 0.03%
c-plus-plus distributed cross-platform parallelism concurrency cpp17

hpx's Introduction

HPX master branch build status HPX Code Quality Assessment HPX coverage report OpenSSF Best Practices Citations file for HPX JOSS Paper about HPX Latest software release of HPX

Documentation: latest, development (master)

HPX Logo


HPX is a C++ Standard Library for Concurrency and Parallelism. It implements all of the corresponding facilities as defined by the C++ Standard. Additionally, in HPX we implement functionalities proposed as part of the ongoing C++ standardization process. We also extend the C++ Standard APIs to the distributed case.

The goal of HPX is to create a high quality, freely available, open source implementation of a new programming model for conventional systems, such as classic Linux based Beowulf clusters or multi-socket highly parallel SMP nodes. At the same time, we want to have a very modular and well designed runtime system architecture which would allow us to port our implementation onto new computer system architectures. We want to use real-world applications to drive the development of the runtime system, coining out required functionalities and converging onto a stable API which will provide a smooth migration path for developers.

The API exposed by HPX is not only modeled after the interfaces defined by the C++11/14/17/20 ISO standard, it also adheres to the programming guidelines used by the Boost collection of C++ libraries. We aim to improve the scalability of today's applications and to expose new levels of parallelism which are necessary to take advantage of the exascale systems of the future.

What's so special about HPX?

  • HPX exposes a uniform, standards-oriented API for ease of programming parallel and distributed applications.
  • It enables programmers to write fully asynchronous code using hundreds of millions of threads.
  • HPX provides unified syntax and semantics for local and remote operations.
  • HPX makes concurrency manageable with dataflow and future based synchronization.
  • It implements a rich set of runtime services supporting a broad range of use cases.
  • HPX exposes a uniform, flexible, and extendable performance counter framework which can enable runtime adaptivity
  • It is designed to solve problems conventionally considered to be scaling-impaired.
  • HPX has been designed and developed for systems of any scale, from hand-held devices to very large scale systems.
  • It is the first fully functional implementation of the ParalleX execution model.
  • HPX is published under a liberal open-source license and has an open, active, and thriving developer community.

Governance

The HPX project is a meritocratic, consensus-based community project. Anyone with an interest in the project can join the community, contribute to the project design and participate in the decision making process. This document describes how that participation takes place and how to set about earning merit within the project community.

Documentation

If you plan to use HPX we suggest to start with the latest released version which can be downloaded here.

To quickly get started with HPX on most Linux distributions you can read the quick start guide here. Detailed instructions on building and installing HPX on various platforms can be found here. The full documentation for the latest release of HPX can always be found here.

If you would like to work with the cutting edge version of this repository (master branch) the documentation can be found here. We strongly recommend that you follow the current health status of the master branch by looking at our continuous integration results website. While we try to keep the master branch stable and usable, sometimes new bugs trick their way into the code base. The CircleCI continuous integration service additionally tracks the current build status for the master branch: HPX master branch build status.

We use Codacy to assess the code quality of this project: HPX Code Quality Assessment. For our coverage analysis, we also rely on Codacy to present the results: HPX coverage report.

If you can't find what you are looking for in the documentation or you suspect you've found a bug in HPX we very much encourage and appreciate any issue reports through the issue tracker for this Github project.

If you have any questions feel free to ask it over at StackOverflow and tag the question with hpx.

For a full list of support options please see our Support page.

Code of conduct

We have adopted a code of conduct for this project. Please refer to this document if you would like to know more about the expectations for members of our community, with regard to how they will behave toward each other.

Please find the project's gpg key, which is used to sign HPX releases here.

Citing

In publications, please use our paper in The Journal of Open Source Software as the main citation for HPX: JOSS Paper about HPX. For referring to the latest release of HPX please use: Latest software release of HPX.

Acknowledgements

We have used a free open-source license of PVS-Studio, a static analyzer for C++ code to check our code base.

Past and current funding and support for HPX is listed here

hpx's People

Contributors

antonbikineev avatar aserio avatar aurianer avatar bhumitattarde avatar biddisco avatar brycelelbach avatar dcbdan avatar dimitraka avatar finomnis avatar g-071 avatar gentryx avatar gonidelis avatar hkaiser avatar isidorostsa avatar jedi18 avatar k-ballo avatar khuck avatar maeneas avatar mcopik avatar msimberg avatar naios avatar nk-nikunj avatar rstobaugh avatar satacker avatar sithhell avatar srinivasyadav18 avatar stevenrbrandt avatar syntaf avatar taeguk avatar vexocide avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hpx's Issues

nqueen example does not compile

[reported by blelbach] [Trac time Thu Aug 4 22:47:09 2011] The nqueen example does not compile (multiple syntax errors, needs to be updated to hpx_init). It needs to be updated before it's added to the cmake build in the top of trunk.

hpx::function should provide eval_sync() and eval_async() functions

[reported by blelbach] [Trac time Tue Aug 9 20:35:38 2011] hpx::function needs to provide an eval_sync() (an alias for operator(), aka synchronous execution) method as well as an eval_async() method, which should be executed synchronously and should return a future.

Ensure that fetch_parcel is executed in a pxthread

[reported by blelbach] [Trac time Sun Aug 7 02:19:54 2011] fetch_parcel must be executed in a pxthread for direct actions to work
properly. This has important implications for LCOs, which use direct actions
(see: #24).

Build fails with GCC 4.4.5-2

[reported by vamatya] [Trac time Thu Aug 4 18:04:24 2011] Error Message on build:

/usr/lib/gcc/x86_64-redhat-linux/4.4.5/../../../../include/c++/4.4.5/bits/stl_bvector.h: In member function \u2018std::_Bit_iterator::reference std::_Bit_iterator::operator*() const\u2019:
/usr/lib/gcc/x86_64-redhat-linux/4.4.5/../../../../include/c++/4.4.5/bits/stl_bvector.h:197: internal compiler error: in tree_nrv, at tree-nrv.c:143
Please submit a full bug report,
with preprocessed source if appropriate.

This is on Release build.

On Debug-build, it builds clean, however while running application it gives segmentation fault.

Boost: 1_47_0
gcc: 4.4.5-2
platform/system: 2.6.33.8-149.fc13.x86_64 #1 SMP

HPX does not link to bbhutil anymore (it used to)

[reported by manderson] [Trac time Tue Aug 9 15:49:55 2011] When linking against the rnpl libraries, HPX now gives the error:

/usr/bin/ld: /home/manderson/rnpl/lib/libbbhutil.a(sdf.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/home/manderson/rnpl/lib/libbbhutil.a: could not read symbols: Bad value

Recompiling bbhutil using -fPIC does not resolve the problem. Linking against the exact same libbbhutil.a library used to work just fine in June and early July.

hpx_pbs fails to find SSH key

[reported by blelbach, manderson] [Trac time Sun Aug 7 02:23:34 2011] In some set ups, hpx_pbs fails to properly read a users SSH key.

Email with more details is attached.

Merge hpx_ini back into hpx

[reported by blelbach] [Trac time Mon Aug 8 21:15:52 2011] On Linux, we build the ini parser into a separate shared library currently. This needs to be merged back into the main hpx library.

linking fails on 32-bit x86

[reported by maciek] [Trac time Tue Aug 31 17:33:39 2010] Linking of fibonacci fails due to undefined size (apparently) of swapcontext_stack instances. Log attached.

Networking should be disabled in SMP mode

[reported by dstark] [Trac time Fri Oct 1 20:10:44 2010] I'm working with Arun and Chad Kersey at Sandia to get HPX running in
one of their simulator packages, called QSIM. Right now the simulator
does not support networking (because it is not designed to support
networked applications). So, the fact that HPX still plays around with the network even when it's in SMP mode is preventing us from running HPX in the simulator.

HPX milestone and version need updating in Trac

[reported by dstark] [Trac time Mon Dec 6 02:07:32 2010] The Milestone and Versions drop downs only list "0.3.0" and "0.2.0", resp. in Trac. But HPX was jumped to version 0.5.0 recently.

Remove or update deprecated LCOs

[reported by blelbach] [Trac time Wed Aug 10 13:30:32 2011] We have a number of deprecated/unused LCOs that may or may not work. These constructs need to be reviewed, tested and finally either updated and maintained or removed. Non-inclusive list:

  • condition
  • condition_variable
  • thunk
  • lazy_future (I don't believe we use this anywhere)
  • dataflow_variable

Stable API definition (syntax and semantics)

[reported by blelbach] [Trac time Wed Aug 10 13:44:27 2011] Meta-ticket for tickets relating to the definition of the HPX API.

The HPX API is the set of C++ functions and classes that the HPX core library
exposes. It is completely unrelated to PXI/XPI.

This task has two parts, one "shallow" (syntax) and one "deep" (semantics). The
definition of the HPX API must not only specify the syntactic conventions
(arity, return types, etc) of the types, classes and functions. A concise
specification of the semantics is also essential to the success of the
interface.

HPX build breaks with new thread queue interface

[reported by dstark] [Trac time Tue Sep 28 21:01:43 2010] The following error is produced with HPX d4420b3, Boost 1.43.0, and GCC 4.1.2 on Castor:

/home/dstark/projects/hpx_svn/src/runtime/threads/threadmanager.cpp: In member function ‘hpx::threads::thread_state hpx::threads::threadmanager_impl<SchedulingPolicy, NotificationPolicy>::set_state(void_, hpx::threads::thread_state_enum, hpx::threads::thread_state_ex_enum) [with SchedulingPolicy = hpx::threads::policies::global_queue_scheduler, NotificationPolicy = hpx::threads::policies::callback_notifier]’:
/home/dstark/projects/hpx_svn/src/runtime/threads/threadmanager.cpp:1116: instantiated from here
/home/dstark/projects/hpx_svn/src/runtime/threads/threadmanager.cpp:273: error: no matching function for call to ‘hpx::threads::policies::global_queue_scheduler::schedule_thread(hpx::threads::thread_&)’
/home/dstark/projects/hpx_svn/hpx/runtime/threads/policies/global_queue_scheduler.hpp:77: note: candidates are: void hpx::threads::policies::global_queue_scheduler::schedule_thread(hpx::threads::thread_, size_t)
/home/dstark/projects/hpx_svn/src/runtime/threads/threadmanager.cpp: In member function ‘hpx::threads::thread_state hpx::threads::threadmanager_impl<SchedulingPolicy, NotificationPolicy>::set_state(void_, hpx::threads::thread_state_enum, hpx::threads::thread_state_ex_enum) [with SchedulingPolicy = hpx::threads::policies::local_queue_scheduler, NotificationPolicy = hpx::threads::policies::callback_notifier]’:
/home/dstark/projects/hpx_svn/src/runtime/threads/threadmanager.cpp:1120: instantiated from here
/home/dstark/projects/hpx_svn/src/runtime/threads/threadmanager.cpp:273: error: no matching function for call to ‘hpx::threads::policies::local_queue_scheduler::schedule_thread(hpx::threads::thread_&)’
/home/dstark/projects/hpx_svn/hpx/runtime/threads/policies/local_queue_scheduler.hpp:159: note: candidates are: void hpx::threads::policies::local_queue_scheduler::schedule_thread(hpx::threads::thread_, size_t)
make[2]: *** [src/CMakeFiles/hpx.dir/runtime/threads/threadmanager.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [src/CMakeFiles/hpx.dir/all] Error 2
make: *** [all] Error 2

Create throttle component

[reported by hkaiser] [Trac time Wed Aug 10 13:13:20 2011] The throttle component should expose the possibility to suspend/resume the execution of px-threads for a given shepherd thread. This component is needed for the planned SC2011 demo.

Support for Darwin (Xcode + Clang)

[reported by blelbach] [Trac time Tue Aug 9 20:49:44 2011] Currently we do not support Mac OS X (Darwin). This is largely due to linker issues - ATM we do not support Mach-O, the binary object format used on Darwin.

The main facets of Darwin support will be CMake IDE support for Xcode, regular testing for Clang compatibility and Mach-O support.

Implement real futures

[reported by blelbach] [Trac time Tue Aug 9 21:04:09 2011] Our current futures, while useful, are not truly futures, because they are not globally accessible. Futures need to be reimplemented as hpx::lcos::barrier-style managed component LCOS - that is to say, they should have GIDs, they should be reference counted, and they should be accessed through a client class.

AGAS V2 legacy client does not properly handle error_code

[reported by hkaiser] [Trac time Sun Aug 7 23:06:05 2011] All resolver_client API functions accept an optional reference to an error_code as their last parameter, allowing to invoke the API functions in no-throw mode. The current implementation of the AGAS V2 legacy client ignores this parameter. This needs to be fixed.

config fails on Gentoo with system Boost installation

[reported by maciek] [Trac time Thu Aug 4 15:43:40 2011] The HPX configuration fails when using bare cmake

. It works when "-DBOOST_ROOT=/usr" is specified. Also, invoking "ccmake " and specifying BOOST_ROOT from the menu system after the initial configuration makes it fail as well.

Compile hpx_init into a static library

[reported by blelbach] [Trac time Sun Aug 7 01:54:33 2011] Per Hartmut, the following needs to be done when building on Windows (and should be considered for Linux):

  • Compile hpx_init.cpp separately into a static library
  • This static library has to be compiled with -DHPX_APPLICATION_EXPORTS
  • HPX executables need to link against this new static library

Eager future only supports "int" and "double" value types

[reported by dstark] [Trac time Fri Oct 22 18:08:38 2010] Eager_futures only support "int" and "double" when the associated action is instantiated on a different locality from the call site. Use of "unsigned long" (or "unsigned int", "std::size_t", "boost::uint32_t", "boost::uint64_t") causes an "invalid free()" at the execution site. Attached is the backtrace. (Note: use of "long" is unsupported, and causes a compile-time error.)

Using Boost 1.43.0 and HPX db398aa.

To reproduce, build the updated version of examples/accumulator (as of db398aa), and run
$ accumulator_client -r -a localhost:2222 -x localhost:2223 -l 2 -t 1
from one terminal, and
$ hpx_runtime -a localhost:2222 -x localhost:2224 -l 2 -t 1
from another terminal. Execute the 'query' command to cause a eager_future to be used to get the unsigned long from the remote locality.

interpolate1d and interpolate3d examples need HDF5 build system support

[reported by hkaiser] [Trac time Mon Aug 8 12:43:32 2011] Well, the title says it all. Both examples (the executables and the components need to be built against the C++ interface of HDF5.

The create_test_data tools do not depend on HPX, but still require HDF5 build system support.

Distributed logging fails

[reported by blelbach] [Trac time Thu Aug 4 23:02:48 2011] Logging from non-console localities to the console breaks (feedback loops). Turning logging on on the console locality only is fine.

HPX shutdown hangs on multilocality runs

[reported by dstark] [Trac time Fri Aug 13 19:00:03 2010] Shutdown fails for different tests at different times (aren't
races fun), but I believe that each test is simply timing out because
one or more localities are left waiting on a lock when stopping.
Here's what I found. The hpx_run command which ctest uses is (via the
-V option):

   $ /home/dstark/projects/hpx_svn/tools/hpx_run.py
/home/dstark/sw/hpx_svn_relwithdebinfo_test/tests/multilocality_tests/startup_test
-l 2:4

The two startup_test commands that hpx_run uses are (via the -d option):

   $ /home/dstark/sw/hpx_svn_relwithdebinfo_test/tests/multilocality_tests/startup_test
-r -a localhost:2222 -x localhost:2223 -l 2 -t 4
   $ /home/dstark/sw/hpx_svn_relwithdebinfo_test/tests/multilocality_tests/startup_test
-w -a localhost:2222 -x localhost:2224 -l 2 -t 4

After testing these buy hand for some number of runs, only the worker
instance ever stalls, and the other instance always returns "Test
passed" and exits normally. When running the worker in GDB, I
consistently get the following back trace when it stalls:

#0  0x000000395540d2e4 in __lll_lock_wait () from /lib64/libpthread.so.0
#1  0x0000003955408c3a in _L_lock_1034 () from /lib64/libpthread.so.0
#2  0x0000003955408afc in pthread_mutex_lock () from /lib64/libpthread.so.0
#3  0x00002ad668d41d77 in
boost::condition_variable_any::wait<boost::unique_lock<boost::mutex> >
(this=0x7fffde4a0350, m=@0x7fffde4a0440)
   at /home/dstark/usr/local/boost_1_43_0/include/boost/thread/pthread/mutex.hpp:51
#4  0x00002ad668d4fc25 in
hpx::runtime_impl<hpx::threads::policies::global_queue_scheduler,
hpx::threads::policies::callback_notifier>::stop (
   this=0x7fffde4a0540, blocking=true)
   at /home/dstark/projects/hpx_svn/src/runtime.cpp:372
#5  0x00002ad668d53d37 in
hpx::runtime_impl<hpx::threads::policies::global_queue_scheduler,
hpx::threads::policies::callback_notifier>::run (
   this=0x7fffde4a0410, num_threads=<value optimized out>,
   num_localities=<value optimized out>)
   at /home/dstark/projects/hpx_svn/src/runtime.cpp:453
#6  0x0000000000427554 in hpx_init (desc_cmdline=@0x7fffde4a26b0,
   argc=<value optimized out>, argv=<value optimized out>)
   at /home/dstark/projects/hpx_svn/hpx/hpx_init.hpp:212
#7  0x0000000000427f54 in main (argc=10, argv=0x7fffde4a2848)
   at /home/dstark/projects/hpx_svn/tests/multilocality_tests/startup_test.cpp:31

I've attached the full set of back traces.

,Dylan

Setting log destination to 'cout' should not generate a '.log' output file

[reported by dstark] [Trac time Wed Oct 27 19:19:56 2010] When setting the log destination to stdout, an empty log file is created. No file should be produced if the target is stdout.

You can reproduce this by setting the HPX and/or "app" log destinations:

  $ export HPX_LOGDESTINATION=cout
  $ export HPX_APP_LOGDESTINATION=cout

And then run any of the example applications.

VERIFY: Build fails with GCC 4.6

[reported by vamatya] [Trac time Thu Aug 4 19:02:39 2011] Building HPX with GCC-4.6.1, boost-1_47_0

In file included from /home/vamatya/packages/src/hpx11/external/atomic/boost/atomic.hpp:17:0,
                 from /home/vamatya/packages/src/hpx11/hpx/lcos/mutex.hpp:22,
                 from /home/vamatya/packages/src/hpx11/hpx/runtime/naming/resolver_client.hpp:25,
                 from /home/vamatya/packages/src/hpx11/hpx/runtime.hpp:14,
                 from /home/vamatya/packages/src/hpx11/hpx/hpx.hpp:13,
                 from /home/vamatya/packages/src/hpx11/src/hpx_init.cpp:8:
/home/vamatya/packages/src/hpx11/external/atomic/boost/atomic/detail/integral-casts.hpp:160:7: error: partial specialization of \u2018boost::detail::atomic::platform_atomic<T, 4u>\u2019 after instantiation of \u2018boost::detail::atomic::platform_atomic<int>\u2019 [-fpermissive]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/accumulators/statistics/tail.hpp:32:1: warning: \u2018boost::accumulators::{anonymous}::right_tail_cache_size\u2019 defined but not used [-Wunused-variable]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/accumulators/statistics/tail.hpp:33:1: warning: \u2018boost::accumulators::{anonymous}::left_tail_cache_size\u2019 defined but not used [-Wunused-variable]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/asio/error.hpp:244:45: warning: \u2018boost::asio::error::system_category\u2019 defined but not used [-Wunused-variable]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/asio/error.hpp:246:45: warning: \u2018boost::asio::error::netdb_category\u2019 defined but not used [-Wunused-variable]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/asio/error.hpp:248:45: warning: \u2018boost::asio::error::addrinfo_category\u2019 defined but not used [-Wunused-variable]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/asio/error.hpp:250:45: warning: \u2018boost::asio::error::misc_category\u2019 defined but not used [-Wunused-variable]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/system/error_code.hpp:214:36: warning: \u2018boost::system::posix_category\u2019 defined but not used [-Wunused-variable]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/system/error_code.hpp:215:36: warning: \u2018boost::system::errno_ecat\u2019 defined but not used [-Wunused-variable]
/home/vamatya/packages/inst_/boost_1_47_0/include/boost/system/error_code.hpp:216:36: warning: \u2018boost::system::native_ecat\u2019 defined but not used [-Wunused-variable]
make[2]: *** [src/CMakeFiles/hpx.dir/hpx_init.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/hpx.dir/all] Error 2
make: *** [all] Error 2

hpx::cout() should be hpx::cout

[reported by blelbach] [Trac time Sun Aug 7 03:15:23 2011] Interface issue with hpx.iostreams - the hpx::cout() syntax should be replaced with standard library iostreams syntax (e.g. hpx::cout).

See attached email.

Coherent documentation

[reported by blelbach] [Trac time Wed Aug 10 13:59:15 2011] Meta-ticket for initial HPX documentation.

A few months ago, Hartmut identified coherent documentation as one of the requirements
for an HPX release. Coherent documentation consists of three elements:

  • Exemplary example code which demonstrates coding practices that we wish to
    encourage.
  • Tutorials which explain practical technical details of HPX, conceptual
    elements of HPX and HPX programming paradigms.
  • Reference material for experienced programmers.

HPX build broken on Castor

[reported by dstark] [Trac time Mon Dec 6 02:05:16 2010] A fresh checkout of HPX from SVN produces the following error when building on Castor:

Building HPX with examples:
  quickstart
/home/dstark/projects/hpx_svn/hpx/runtime/threads/thread_affinity.hpp: In function �bool hpx::threads::set_affinity(size_t, bool)�:
/home/dstark/projects/hpx_svn/hpx/runtime/threads/thread_affinity.hpp:235: error: invalid use of undefined type �struct hpx::runtime�
/home/dstark/projects/hpx_svn/hpx/hpx_fwd.hpp:216: error: forward declaration of �struct hpx::runtime�
/home/dstark/projects/hpx_svn/hpx/runtime/threads/thread_affinity.hpp:238: error: invalid use of undefined type �struct hpx::runtime�
/home/dstark/projects/hpx_svn/hpx/hpx_fwd.hpp:216: error: forward declaration of �struct hpx::runtime�
/home/dstark/projects/hpx_svn/hpx/runtime/threads/thread_affinity.hpp:246: error: invalid use of undefined type �struct hpx::runtime�
/home/dstark/projects/hpx_svn/hpx/hpx_fwd.hpp:216: error: forward declaration of �struct hpx::runtime�
make[2]: *** [src/CMakeFiles/hpx.dir/runtime.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [src/CMakeFiles/hpx.dir/all] Error 2
make: *** [all] Error 2

Using HPX 31cfaf7, Boost 1.43.0.

Clean Prefix Folder

[reported by vamatya] [Trac time Mon Aug 8 22:01:36 2011] Before each fresh-build, need to clean prefix folder, particularly if earlier build resulted in a seg-fault of application code.

point_geometry does not link in release mode

[reported by blelbach] [Trac time Mon Aug 8 21:35:02 2011] r5229, Boost 73613, GCC 4.4.5-6, RHEL 6 (vega.cct.lsu.edu and perseus.cct.lsu.edu), Release.

See attached logs. This appears to be a visibility issue.

compilation of examples fails

[reported by maciek] [Trac time Thu Aug 4 19:26:37 2011] Due to insufficient dependency tracking, "make examples" fails in contact when using boost-1.46.1:

[ 70%] Building CXX object examples/contact/CMakeFiles/contact_client_exe.dir/contact_client.cpp.o
/home/maciek/Projects/parallex/trunk/hpx/examples/contact/contact_client.cpp:16:39: fatal error: boost/geometry/geometry.hpp: No such file or directory
compilation terminated.
make[3]: *** [examples/contact/CMakeFiles/contact_client_exe.dir/contact_client.cpp.o] Error 1
make[2]: *** [examples/contact/CMakeFiles/contact_client_exe.dir/all] Error 2
make[1]: *** [CMakeFiles/examples.dir/rule] Error 2
make: *** [examples] Error 2

Running in SMP with "-l" should throw an error

[reported by dstark] [Trac time Fri Nov 5 20:17:29 2010] An error should be thrown if you run with "smp_mode" and create a runtime instance with hpx::runtime::worker mode, and/or start a runtime instance with num_localities > 1.

Update breaks tests

[reported by dstark] [Trac time Fri Aug 13 21:26:56 2010] Changeset 4724b5e breaks cpi_tests, lazy_future_tests, dataflow_tests, and thunk_tests.

Reported errors are of the form:

/home/dstark/sw/hpx_svn_relwithdebinfo_test/tests/lco_tests/lazy_future_tests: symbol lookup error: 
/home/dstark/sw/hpx_svn_relwithdebinfo_test/tests/lco_tests/lazy_future_tests: undefined symbol: 
_ZN5boost10coroutines6detail14coroutine_implINS0_9coroutineIFN3hpx7threads17thread_state_enumENS5_20thread_state_ex_enumEENS5_6detail19coroutine_allocatorENS1_9oslinux6421ia64_gcc_context_implEEESC_SA_E8set_selfEPNS1_14coroutine_selfISD_EE

Steps to reproduce:

$ make clean
$  make -j 16 HPX_TESTS=all HPX_TESTS_MAX_LOCALITIES=32 HPX_TESTS_MAX_CORES=32 HPX_TESTS_MAX_LIMIT=32
$ ctest --timeout 1

compilation with clang fails

[reported by maciek] [Trac time Wed Oct 13 22:39:28 2010] Using clang++ and clang as C++ and C compilers respectively causes the compilation to fail at 13% mark. Log attached.

New ITT configuration breaks build on Castor

[reported by dstark] [Trac time Fri Aug 27 18:33:32 2010] Using default GCC 4.4.2 on Castor, new ITT CMake setup is insufficient for setting the HPX_DONT_USE_ITT flag, thus breaking the build.

Not sure if ITT support is universal if compiling with an Intel compiler. Maybe cmake should accept a "-DHPX_USE_ITT" flag that would be supplied when the user knows they have that support, instead of trying to automate an opt-out policy.

Specialize handle_gid<> for examples and tests

[reported by blelbach] [Trac time Sun Aug 7 03:02:46 2011] The handle_gid<> trait has to be specialized for any argument to an action that contains a nested, reference-counted GID. Without these specializations, global reference counting will not work properly.

Build fails on Mac OS X with GCC

[reported by manderson] [Trac time Tue Sep 21 16:49:42 2010] Build fails on Mac GCC v4.0.1:

[90%] Building CXX object src/CMakeFiles/hpx.dir/__/external/coroutine/libs/coroutine/src/swapcontext.cpp.o
cd /Users/jeffhensley/Work/HPX/hpx_head/src && /usr/bin/c++   -Dhpx_EXPORTS -DHPX_PREFIX=\"/Users/jeffhensley/Work/HPX/hpx_head\" -DHPX_USE_LOCKFREE=1 -DHPX_USE_TBB=0 -DBOOST_SERIALIZATION_DYN_LINK -DBOOST_ARCHIVE_DYN_LINK -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_DATE_TIME_DYN_LINK -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_REGEX_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DBOOST_SIGNALS_DYN_LINK -DBOOST_THREAD_DYN_DLL -DBOOST_CHRONO_NO_LIB -DHPX_GCC_HAVE_VISIBILITY -DBOOST_COROUTINE_GCC_HAVE_VISIBILITY -DBOOST_COROUTINE_USE_ATOMIC_COUNT -DBOOST_COROUTINE_ARG_MAX=2 -D_XOPEN_SOURCE=1 -DHPX_COMPONENT_NAME=hpx -DHPX_EXPORTS -DBOOST_COROUTINE_EXPORTS -O2 -g -fPIC -I/Users/jeffhensley/local/boost/include -I/Users/jeffhensley/Work/HPX/hpx_head -I/Users/jeffhensley/Work/HPX/hpx_head/external/atomic -I/Users/jeffhensley/Work/HPX/hpx_head/external/cache -I/Users/jeffhensley/Work/HPX/hpx_head/external/chrono -I/Users/jeffhensley/Work/HPX/hpx_head/external/coroutine -I/Users/jeffhensley/Work/HPX/hpx_head/external/endian -I/Users/jeffhensley/Work/HPX/hpx_head/external/logging -I/Users/jeffhensley/Work/HPX/hpx_head/external/lockfree -I/Users/jeffhensley/Work/HPX/hpx_head/external/plugin   -o CMakeFiles/hpx.dir/__/external/coroutine/libs/coroutine/src/swapcontext.cpp.o -c /Users/jeffhensley/Work/HPX/hpx_head/external/coroutine/libs/coroutine/src/swapcontext.cpp
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:32:Alignment too large: 15. assumed.
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:34:Unknown pseudo-op: .type
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:34:Rest of line ignored. 1st junk character valued 115 (s).
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:52:Alignment too large: 15. assumed.
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:54:Unknown pseudo-op: .type
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:54:Rest of line ignored. 1st junk character valued 115 (s).
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:72:Alignment too large: 15. assumed.
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:74:Unknown pseudo-op: .type
/var/folders/+S/+SncjM5WEwiUS7MXqMu2L++++TI/-Tmp-//cc0K5YTZ.s:74:Rest of line ignored. 1st junk character valued 115 (s).
make[2]: *** [src/CMakeFiles/hpx.dir/__/external/coroutine/libs/coroutine/src/swapcontext.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/hpx.dir/all] Error 2
make: *** [all] Error 2

Attached is the make.out and cmake.out

hpx::threads::get_self() should throw an exception when called outside of a pxthread

[reported by blelbach] [Trac time Tue Aug 9 21:08:56 2011] get_self() has been one of our biggest causes of segmentation faults. A few weeks ago I modified this function to raise an assertion when called outside of a PX thread, however, this only affects debug modes (assertions are turned off for full release). This function (and possibly the underlying get_self_ptr()) should throw an exception if they are used outside of pxthreads.

Full path specified in CTest

[reported by pleblanc] [Trac time Thu Aug 5 16:02:52 2010] Test command: /home/pmlebla/projects/hpx_head/tools/hpx_run.py cpi_test\ --throws\ 10000000 -l 4:4 -s

The full path needs to be specified to cpi_test to be more robust and not assume the binaries are in the user's path.

compilation fails on 32-bit x86 platforms

[reported by maciek] [Trac time Thu Aug 5 19:04:44 2010] The compilation fails on Gentoo Linux running 32-bit x86 environment.
Boost: 1.42, g++: 4.4.4

Log file attached.

error running nqueen

[reported by vamatya] [Trac time Tue Aug 9 21:04:58 2011] ```
[stack_trace]: 28 frames:
0x7ff392335029 : boost::stack_trace::trace(void*, int) + 0x9 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff391fae4ef : boost::backtrace::backtrace(unsigned long) + 0x4f in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff391fae5bf : boost::trace() + 0x1f in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff391f831b1 : hpx::detail::backtrace() + 0x11 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff391fae659 : void hpx::detail::throw_exceptionhpx::exception(hpx::exception const&, std::string const&, std::string const&, int) + 0x59 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff391f83355 : hpx::detail::assertion_failed_msg(char const
, char const_, char const_, char const_, long) + 0x195 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff391f83635 : hpx::detail::assertion_failed(char const_, char const_, char const_, long) + 0x15 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x533089 : boost::assertion_failed(char const_, char const_, char const_, long) + 0x9 in ./nqueen_client
0x53b1f1 : hpx::naming::id_type::id_type(hpx::naming::gid_type const&, hpx::naming::id_type::management_type) + 0x91 in ./nqueen_client
0x54d898 : hpx::lcos::detail::future_value<hpx::naming::id_type, hpx::naming::gid_type, 1>::set_data(int, hpx::naming::gid_type const&) + 0xd8 in ./nqueen_client
0x54d92e : hpx::lcos::detail::future_value<hpx::naming::id_type, hpx::naming::gid_type, 1>::set_result(hpx::naming::gid_type const&) + 0xe in ./nqueen_client
0x7ff3920009aa : hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>::set_result_nonvirt(hpx::naming::gid_type const&) + 0xa in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3920a4ca9 : hpx::actions::direct_action1<hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>, 1, hpx::naming::gid_type const&, &(hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>::set_result_nonvirt(hpx::naming::gid_type const&)), hpx::actions::detail::this_type>::execute_function_nonvirt(unsigned long, hpx::naming::gid_type const&) + 0x129 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3920a4cec : hpx::applier::detail::apply_helper1<hpx::actions::direct_action1<hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>, 1, hpx::naming::gid_type const&, &(hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>::set_result_nonvirt(hpx::naming::gid_type const&)), hpx::actions::detail::this_type>, hpx::naming::gid_type, mpl_::bool_ >::call(unsigned long, hpx::threads::thread_priority, hpx::naming::gid_type const&) + 0xc in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3920a4d59 : bool hpx::applier::apply_l_p<hpx::actions::direct_action1<hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>, 1, hpx::naming::gid_type const&, &(hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>::set_result_nonvirt(hpx::naming::gid_type const&)), hpx::actions::detail::this_type>, hpx::naming::gid_type>(hpx::naming::address const&, hpx::threads::thread_priority, hpx::naming::gid_type const&) + 0x59 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3920a7049 : bool hpx::applier::apply_p<hpx::actions::direct_action1<hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>, 1, hpx::naming::gid_type const&, &(hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>::set_result_nonvirt(hpx::naming::gid_type const&)), hpx::actions::detail::this_type>, hpx::naming::gid_type>(hpx::naming::id_type const&, hpx::threads::thread_priority, hpx::naming::gid_type const&) + 0x49 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3920a70c3 : bool hpx::applier::apply<hpx::actions::direct_action1<hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>, 1, hpx::naming::gid_type const&, &(hpx::lcos::base_lco_with_value<hpx::naming::gid_type, hpx::naming::gid_type>::set_result_nonvirt(hpx::naming::gid_type const&)), hpx::actions::detail::this_type>, hpx::naming::gid_type>(hpx::naming::id_type const&, hpx::naming::gid_type const&) + 0x23 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3920a71b0 : hpx::naming::gid_type const& hpx::actions::continuation::triggerhpx::naming::gid_type(hpx::naming::gid_type const&) + 0xd0 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x559ae3 : hpx::threads::thread_state_enum hpx::actions::action<hpx::components::server::runtime_support, 2, hpx::naming::gid_type, boost::fusion::vector<hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>, boost::fusion::void_, boost::fusion::void_, boost::fusion::void_, boost::fusion::void_, boost::fusion::void_, boost::fusion::void_, boost::fusion::void_, boost::fusion::void_>, hpx::actions::result_action2<hpx::components::server::runtime_support, hpx::naming::gid_type, 2, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&, &(hpx::components::server::runtime_support::create_one_component(hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&)), (hpx::threads::thread_priority)0, hpx::actions::detail::this_type>, (hpx::threads::thread_priority)0>::continuation_thread_function<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::bi::list3<boost::bi::valuehpx::components::server::runtime_support_, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > > >(boost::shared_ptrhpx::actions::continuation, boost::tuples::tuple<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::bi::list3boost::bi::value<hpx::components::server::runtime_support*, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>) + 0x103 in ./nqueen_client
0x5358c0 : hpx::threads::thread_state_enum boost::bi::list2boost::bi::value<boost::shared_ptr<hpx::actions::continuation >, boost::bi::value<boost::tuples::tuple<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::bi::list3boost::bi::value<hpx::components::server::runtime_support*, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >::operator()<hpx::threads::thread_state_enum, hpx::threads::thread_state_enum ()(boost::shared_ptrhpx::actions::continuation, boost::tuples::tuple<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::_bi::list3boost::_bi::value<hpx::components::server::runtime_support, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>), boost::bi::list1hpx::threads::thread_state_ex_enum& >(boost::bi::typehpx::threads::thread_state_enum, hpx::threads::thread_state_enum (*&)(boost::shared_ptrhpx::actions::continuation, boost::tuples::tuple<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::bi::list3boost::bi::value<hpx::components::server::runtime_support*, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>), boost::bi::list1hpx::threads::thread_state_ex_enum&&, long) + 0x60 in ./nqueen_client
0x53594f : hpx::threads::thread_state_enum boost::bi::bind_t<hpx::threads::thread_state_enum, hpx::threads::thread_state_enum (*)(boost::shared_ptrhpx::actions::continuation, boost::tuples::tuple<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void
, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::bi::list3boost::bi::value<hpx::components::server::runtime_support*, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>), boost::bi::list2boost::bi::value<boost::shared_ptr<hpx::actions::continuation >, boost::bi::value<boost::tuples::tuple<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::bi::list3boost::bi::value<hpx::components::server::runtime_support*, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > > >::operator()hpx::threads::thread_state_ex_enum(hpx::threads::thread_state_ex_enum&) + 0x2f in ./nqueen_client
0x535977 : boost::detail::function::function_obj_invoker1<boost::bi::bind_t<hpx::threads::thread_state_enum, hpx::threads::thread_state_enum (*)(boost::shared_ptrhpx::actions::continuation, boost::tuples::tuple<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::bi::list3boost::bi::value<hpx::components::server::runtime_support*, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>), boost::bi::list2boost::bi::value<boost::shared_ptr<hpx::actions::continuation >, boost::bi::value<boost::tuples::tuple<boost::bi::bind_t<hpx::naming::gid_type, boost::mfi::mf2<hpx::naming::gid_type, hpx::components::server::runtime_support, hpx::components::component_type, boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> const&>, boost::bi::list3boost::bi::value<hpx::components::server::runtime_support*, boost::bi::valuehpx::components::component_type, boost::bi::value<boost::variant<unsigned long, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> > > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > > >, hpx::threads::thread_state_enum, hpx::threads::thread_state_ex_enum>::invoke(boost::detail::function::function_buffer&, hpx::threads::thread_state_ex_enum) + 0x17 in ./nqueen_client
0x7ff39210512c : boost::function1<hpx::threads::thread_state_enum, hpx::threads::thread_state_ex_enum>::operator()(hpx::threads::thread_state_ex_enum) const + 0x2c in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3922bb43e : boost::coroutines::detail::unpacker_n<boost::coroutines::tuple_traits<hpx::threads::thread_state_ex_enum, boost::tuples::null_type>, 1>::result<boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::tuples::tuple<hpx::threads::thread_state_ex_enum, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >::type boost::coroutines::detail::unpacker_n<boost::coroutines::tuple_traits<hpx::threads::thread_state_ex_enum, boost::tuples::null_type>, 1>::operator()<boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::tuples::tuple<hpx::threads::thread_state_ex_enum, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >(boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>&, boost::tuples::tuple<hpx::threads::thread_state_ex_enum, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>&) + 0x1e in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3922bb47a : boost::coroutines::detail::unpacker_n<boost::coroutines::tuple_traits<hpx::threads::thread_state_ex_enum, boost::tuples::null_type>, boost::coroutines::tuple_traits<hpx::threads::thread_state_ex_enum, boost::tuples::null_type>::length>::result<boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::tuples::tuple<hpx::threads::thread_state_ex_enum, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >::type boost::coroutines::detail::unpack<boost::coroutines::tuple_traits<hpx::threads::thread_state_ex_enum, boost::tuples::null_type>, boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::tuples::tuple<hpx::threads::thread_state_ex_enum, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >(boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::tuples::tuple<hpx::threads::thread_state_ex_enum, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>&, boost::coroutines::detail::trait_tag<boost::coroutines::tuple_traits<hpx::threads::thread_state_ex_enum, boost::tuples::null_type> >) + 0x1a in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3922c7fed : boost::disable_ifboost::is_void<hpx::threads::thread_state_enum, void>::type boost::coroutines::detail::coroutine_impl_wrapper<boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::coroutines::coroutine<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum), hpx::threads::detail::coroutine_allocator, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl>, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl, hpx::threads::detail::coroutine_allocator>::do_callhpx::threads::thread_state_enum(boost::coroutines::detail::coroutine_impl_wrapper<boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::coroutines::coroutine<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum), hpx::threads::detail::coroutine_allocator, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl>, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl, hpx::threads::detail::coroutine_allocator>::dummy<1>) + 0x6d in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3922c82a9 : boost::coroutines::detail::coroutine_impl_wrapper<boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::coroutines::coroutine<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum), hpx::threads::detail::coroutine_allocator, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl>, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl, hpx::threads::detail::coroutine_allocator>::operator()() + 0x89 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0
0x7ff3922c8489 : void boost::coroutines::detail::oslinux64::trampoline<boost::coroutines::detail::coroutine_impl_wrapper<boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::coroutines::coroutine<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum), hpx::threads::detail::coroutine_allocator, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl>, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl, hpx::threads::detail::coroutine_allocator> >(boost::coroutines::detail::coroutine_impl_wrapper<boost::function<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum)>, boost::coroutines::coroutine<hpx::threads::thread_state_enum ()(hpx::threads::thread_state_ex_enum), hpx::threads::detail::coroutine_allocator, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl>, boost::coroutines::detail::oslinux64::x86_64_linux_context_impl, hpx::threads::detail::coroutine_allocator>*) + 0x9 in /home/vamatya/packages/inst/hpx/lib/libhpx.so.0

[function]: hpx::naming::id_type::id_type(const hpx::naming::gid_type&, hpx::naming::id_type::management_type)

Aborted

Add tests for tutorials

[reported by dstark] [Trac time Fri Aug 27 18:17:00 2010] The HPX tutorials will become out of sync if there is not support for testing that they actually function as intended, due to changes in other parts of the HPX code base. Therefore, it would be useful to include test codes for the tutorials, so that it is easier to keep them current with HPX.

hpx::lcos::barrier segfaults

[reported by blelbach] [Trac time Thu Aug 4 22:55:44 2011] Barrier segfaults in large distributed runs in it's implementation of the LCO's set_event and set_error virtual functions. The segfault occurs when a barrier fails to immediately acquire it's internal lock. Possible cause: if set_event and set_error are ever executed outside of a pxthread, this could explain these symptoms. This problem presents itself during AGAS bootstrap.

Integrate Windows/Linux CMake code for HPX core

[reported by blelbach] [Trac time Sun Aug 7 01:59:58 2011] The Windows/Linux CMake code for the core library is currently specialized for both platforms. These two sets of code need to be unified - this should be done by rolling Windows specific stuff into the CMake macro that adds sources to the main HPX targets.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.