hkaiser changed the topic of #ste||ar to: STE||AR: Systems Technology, Emergent Parallelism, and Algorithm Research | stellar-group.org | HPX: A cure for performance impaired parallel applications | github.com/STEllAR-GROUP/hpx | This channel is logged: irclog.cct.lsu.edu
<gonidelis[m]>
you can check this link for our work on senders receivers
<gonidelis[m]>
as far as coroutines are concerned we will have to wait for @hkaiser to join in and specify exactly what our target is in terms of implementation
hkaiser has joined #ste||ar
<gonidelis[m]>
satacker: speaking of ^^ 😅
<gonidelis[m]>
hkaiser: yt?
<hkaiser>
satacker[m]: what do you think the coroutines like interface project is about?
<satacker[m]>
hkaiser: I understood that hpx needs a generator yield construct on top of coroutine/ sender receiver experimental infra, is that so?
<hkaiser>
satacker[m]: as you might know we have some of the sender/receiver specs implemented (see wg21.link/p2300)
<hkaiser>
what we miss is the co_await (C++20 coroutines) integration
<hkaiser>
BTW, this is also specified in P2300
<satacker[m]>
hkaiser: Ohkay, so the other project on improving sender receiver is about this
<hkaiser>
there are more things missing beyond co_await, the other project is about those parts
<hkaiser>
but support for co_await is sizable on its own, so we split it into a separate (possible) project
<hkaiser>
but as always in GSoC, you wil have to propose what you want to work on, so any subset/superset of the suggested projects is a viable target
<satacker[m]>
I shall go through the PRs about how execution was implemented in hpx and if I can come up with some thoughts I'll put it here
<hkaiser>
satacker[m]: I'm locking forward to this, thanks
<satacker[m]>
Thank You gonidelis: hkaiser:
<K-ballo>
"locking forward" makes me think of transactional memory and lock elision
<hkaiser>
yah, me too ;-)
<hkaiser>
didn't have coffee yet...
<gonidelis[m]>
lol
diehlpk_work has joined #ste||ar
aacirino has joined #ste||ar
<aacirino>
Hi, I am facing a problem with my development environment. I don't see what is wrong and it had been working very well for some months. But then I started to have runtime errors due to the addition of a std::queue or a hpx::concurrency::ConcurrentQueue to one of my classes. Then all of a sudden I have 330 failing tests in HPX and my application does not link due to the lack of template instantiations where HPX is involved, for ins
<aacirino>
this undefined symbol : std::__1::vector<hpx::id_type, std::__1::allocator<hpx::id_type> >::vector(). My environment is Ubuntu 21.10, clang 13, i7 with 32GB of RAM. Before I reinstall the OS and all the libraries I would like to know if someone has a clue on what is happening.
<hkaiser>
aacirino: uhh
<hkaiser>
how can the HPX tests fail if you add a std::queue to your application that doesn't even link?
<aacirino>
Different issues.
<hkaiser>
ahh
<hkaiser>
the second issue could be caused by a C++ standard options mixup
<aacirino>
The segmentation fault error with std::queue happens in my application.
<hkaiser>
HPX is using C++17, please make sure your application uses that as well
<aacirino>
I am using C++20
<hkaiser>
ok
<hkaiser>
did you configure hpx with c++20 as well?
<aacirino>
Yes, I have a shell script to help me with the configuration
<hkaiser>
ok
<hkaiser>
so you have several issues, but none of those I have an immediate solution for
<aacirino>
The HPX build and tests were working well since about a week ago
<hkaiser>
do you use HPX master?
<hkaiser>
or a released version
<aacirino>
Yes, I forked but everyday I merge from master
<hkaiser>
ok
<hkaiser>
could you go back to the version you know worked?
<hkaiser>
we might have broken something without noticing...
<aacirino>
I tried a version from over a week ago but with the same issues
<hkaiser>
ok
<hkaiser>
so it's not HPX
<aacirino>
I reverted to the commit 5a3f3e4ba2 Unconditionally use C++17 attributes
<aacirino>
But had the same 330 failing tests
<hkaiser>
and did that one work before?
<aacirino>
Sure
<hkaiser>
ok, how should we know what changed since then for you?
<aacirino>
I try to keep my libraries and OS update daily. Probably a library update or even an ubuntu update broke my environment
<aacirino>
I can't say for sure what changed that broke my environment. Seems that I will need to keep a journal of updates to my environment.
<hkaiser>
aacirino: how are the HPX tests failing?
<hkaiser>
what errors do you see?
<aacirino>
I reverted to an older commit and am currently building. As soon as it finishes I will post
<aacirino>
Examples of failing tests
<aacirino>
In tests.unit.modules.async_base.launch_policy : {what}: Segmentation fault
<aacirino>
In tests.unit.modules.actions.distributed.tcp.serialize_buffer : Process 0 failed with an unexpected error code of 255 (expected 0)
<aacirino>
There are 331 occurrences of 'Segmentation fault' in the errors output. I used ctest --rerun-failed --output-on-failure > errors.txt
K-ballo has quit [Quit: K-ballo]
K-ballo has joined #ste||ar
aacirino has quit [Ping timeout: 240 seconds]
aacirino_ has joined #ste||ar
<hkaiser>
aacirino_: we will need a bit omre information
<hkaiser>
is that a debug build? release?
<hkaiser>
if release, please rebuild with -DCMAKE_BUILD_TYPE=Debug and rerun, let's see if that reveals more
<K-ballo>
aacirino_: make sure to clean all previous build outputs, sounds compatible with odr issues
<aacirino_>
Release. I will build debug
<aacirino_>
Now there are lots of depreciation warnings
<aacirino_>
I deleted the build dir and cleaned the ccache cache
<aacirino_>
Deprecation warnings I meant.
<hkaiser>
aacirino_: while building HPX?
aacirino_ has left #ste||ar [#ste||ar]
aacirino has joined #ste||ar
<hkaiser>
aacirino_: deprecation warnings while building HPX?
<hkaiser>
aacirino: deprecation warnings while building HPX?
<aacirino>
Yes, deprecation warnings building HPX
<hkaiser>
do you have an installed version on your system?
<hkaiser>
it might be picking outdated headers
<hkaiser>
you shouldn't see deprecation warnings while building HPX itself
<aacirino>
I only have the installation created by building HPX. Should I delete the installed dir, rebuild and reinstall HPX? I had the same 330 failed tests but now with a lot more information due to the debug build.
<hkaiser>
yes, please delete this
<hkaiser>
could be a version mixup
<aacirino>
OK
<aacirino>
As a matter of fact I had already tried to figure out what is hapening. This is the second time I delete my installation, clear the build dir, clear the ccache caches and build HPX in debug mode.
<hkaiser>
hmm, then I'm out of ideas
<aacirino>
Do you mind if I send you the errors output file?
<K-ballo>
put it on some paste site and share the link here
<aacirino>
One example of deprecation warning
<aacirino>
/home/linuxbrew/.linuxbrew/include/boost/intrusive/pointer_rebind.hpp:39:47: warning: 'rebind<void>' is deprecated [-Wdeprecated-declarations]
<hkaiser>
you have some version mixup happening, compiling code against one version and using another while running
<aacirino>
How can I see this?
<hkaiser>
the error is totally bogus, it refers to symbols that are unrelated to the error
<hkaiser>
ldd on your executab;e shows the binaries used
<aacirino>
I am buidling HPX again and it takes some time. What should I change in my configuration to avoid the mixup?
<hkaiser>
aacirino: no idea - make sure that your compilation uses the same library versions as will be found at runtime
<aacirino>
I am using pkgconfig to build my application. Anyway, why would the tests fail to link the just built libraries? Before building my app I must build HPX and test it with no failing tests.