hkaiser changed the topic of #ste||ar to: STE||AR: Systems Technology, Emergent Parallelism, and Algorithm Research | stellar.cct.lsu.edu | HPX: A cure for performance impaired parallel applications | github.com/STEllAR-GROUP/hpx | Buildbot: http://rostam.cct.lsu.edu/ | Log: http://irclog.cct.lsu.edu/ | GSoC2018: https://wp.me/p4pxJf-k1
nikunj has joined #ste||ar
<nikunj>
hkaiser: At what time should we schedule the skype call today (tomorrow acc to your current time)?
<hkaiser>
9:15am?
<nikunj>
ok, works for me
<nikunj>
did you get time to review my pr?
anushi has quit [Read error: Connection reset by peer]
anushi has joined #ste||ar
<hkaiser>
still on my todo list :(
<nikunj>
hkaiser: shall I ask K-ballo (or someone else) to review if you're busy?
<hkaiser>
I'm on it
<nikunj>
ok
<K-ballo>
patience, young grasshopper
<nikunj>
hkaiser: So I was wondering about the init part. We can create a class with static std::map or may be char* to store the object and class name.
quaz0r has joined #ste||ar
<nikunj>
In the constructor of the class we can simply add the object name to the class storage variable
<nikunj>
One everything is set up (acc to user). We can create the init object from initialize_main and then call a function of the class that initializes the objects
<nikunj>
This way any global object of the user will still run before entering main
<hkaiser>
if we have to come up with a custom method for running global constructors, then we don't have to invent a new wheel
<hkaiser>
hpx already allows to register a function to be run before hpx_main is executed
<hkaiser>
(as an hpx thread)
<nikunj>
I see
<nikunj>
then the user can use that method if he wishes to register it
<hkaiser>
right
<nikunj>
but the problem is how will the user use that function on global scope?
<github>
hpx/master 873ba1a Patrick Diehl: Add the compiler version to the output message for different compilers
<github>
hpx/master 984e514 Patrick Diehl: Layout
<github>
hpx/master f39a49c Patrick Diehl: layout
<hkaiser>
nikunj: right, that would be something to develop a general purpose solution for
<nikunj>
hkaiser: So we would still need some sort of an init function for initialization
<nikunj>
Looking at the source code of glibc, they store it an array pointers pointing to the variable/object name
<nikunj>
We can do something similar, but to add to the array we will need some sort of constructor of our own (since we can't change values on global scope directly)
<nikunj>
that's where the class structure comes up
<hkaiser>
we could provide a type to be instantiated at global scope that registers the function to run the constructor and another function to run as a destructor, both will run on hpx threads. the registeration can run on a non-hpx thread, so global contructor time would be ok
<nikunj>
yes
diehlpk_mobile has joined #ste||ar
<hkaiser>
nikunj, two minor comments on the PR, otherwise, LGTM
<nikunj>
Ok, I'll add them right away
<hkaiser>
great!
<hkaiser>
you have added support for your stuff to pkgconfig only, not for projects depending on hpx that use cmake (or bazel) for that matter
<diehlpk_mobile>
hkaiser, yet?
<hkaiser>
diehlpk_mobile: yet?
<diehlpk_mobile>
see im
<nikunj>
hkaiser: I've added a line `set(HPX_LINKER_FLAGS "@HPX_LINKER_FLAGS@)` inside of HPXConfig.cmake.in
<nikunj>
Will this variable propage to HPX_SetupTarget as well?
<hkaiser>
pls make sure it shows up in the generated file ;-)
<hkaiser>
SetupTarget should see it (if the user calls it)
<nikunj>
it is already being handled internally, do we need another variable for it?
<nikunj>
the only reason I created that variable inside of HPX_GeneratePackage was to make sure that I do not screw up the meaning of some other variable
<nikunj>
as zao pointed me out the other day
<hkaiser>
setuptarget is used by hpx itself, there I can see it being used, but if a dependent project uses setuptarget, will it really be available as well?
<hkaiser>
might be worth testing
<nikunj>
I'll test it.
<hkaiser>
ok
<nikunj>
hkaiser: I just built a test file using hpx_main.hpp and calling future from main. It ran correctly
<hkaiser>
using a cmake project?
<nikunj>
yes
<hkaiser>
and your stuff runs?
<hkaiser>
cool
<nikunj>
yes it is running
<hkaiser>
nice
<nikunj>
should I share a gist?
<nikunj>
if you want to see what I wrote
<nikunj>
hkaiser: iirc, there's one out of the source build test as well which test cmake and pkg-config with HPX. That would have had failed in case my code was not functioning.
<nikunj>
hkaiser: I've made the changes (except for the one in HPXConfig, since the code was working otherwise)
quaz0r has quit [Ping timeout: 260 seconds]
jakub_golinowski has quit [Remote host closed the connection]
diehlpk_mobile has quit [Read error: Connection reset by peer]
quaz0r has joined #ste||ar
hkaiser has quit [Quit: bye]
K-ballo has quit [Quit: K-ballo]
nanashi55 has quit [Ping timeout: 256 seconds]
nanashi55 has joined #ste||ar
Anushi1998 has quit [Quit: Bye]
anushi has quit [Ping timeout: 256 seconds]
anushi has joined #ste||ar
anushi has quit [Remote host closed the connection]
<M-ms>
jbjnr: yt?
<jbjnr>
yes
jaafar has joined #ste||ar
jakub_golinowski has joined #ste||ar
<jakub_golinowski>
M-ms, yt?
<M-ms>
jakub_golinowski: here
<jakub_golinowski>
M-ms, I wanted to ask about the webcam app, so maybe I can fix sth about it?
<jakub_golinowski>
The second thing is I wanted to discuss the requirements for the QT app that I shall develop over the next month
<jakub_golinowski>
And finally I wanted to discuss the tests of OpenCV, I created an script that runs the tests nicely and allows for easy selection of test binaries *sets* and to exclude/include individual tests in all binaries
<jakub_golinowski>
It runs the same binary on 2 different builds and saves them to log-files with the same prefixes so it is always nicely sorted and easy to launch in meld
<jakub_golinowski>
Wha I have found is that the pthreads build is also failing a lot of tests, the same that hpx build is failing
<M-ms>
all good questions, do you have time this afternoon to discuss in more detail?
<jakub_golinowski>
For sure I have time today until 18:00 London time, later I am not yet certain
<M-ms>
as for the webcam app, I didn't have time to run it yet, but my first suggestion is to chain the futures using then or dataflow instead of get()ting the results each time
<M-ms>
ok, good, definitely had before 18 in mind as well
<M-ms>
sometime after lunch?
<jakub_golinowski>
So can it be 14:00 CEST?
<jakub_golinowski>
M-ms, ^
<M-ms>
jakub_golinowski: yes, that's fine with the reservation that I need to speak to my boss at some point and he has priority
<M-ms>
but let's aim for that
<M-ms>
jbjnr: the above may interest you as well (i.e. the requirements for the QT app)
<M-ms>
but I guess you just want to have as much as possible of martycam working with the HPX backend? :)
<jbjnr>
M-ms: jakub_golinowski correct. the aim of the project is to get openCV working primarily, the Qt stuff is a bonus with all the thread pools etc. I'm interested that pthreads backend is also failing tests. Did you alert the opencv people about this - or do they already know? Finding what's wrong might prove to be educational.
<jakub_golinowski>
jbjnr, my first guess is that the tests are failing mainly because of the laptop configuration and installed dependencies
<jbjnr>
ok. maybe I can try your stuff myself. got to run now. talk at 10am. back later
<jakub_golinowski>
jbjnr, but they have really a lot of tests and they do not all fail in the same way, so I am in the process of investigating each failed test
jaafar has quit [Ping timeout: 255 seconds]
anushi has joined #ste||ar
anushi has quit [Ping timeout: 264 seconds]
anushi has joined #ste||ar
anushi has quit [Remote host closed the connection]
anushi has quit [Remote host closed the connection]
anushi has joined #ste||ar
nikunj97 has joined #ste||ar
anushi has quit [Ping timeout: 276 seconds]
anushi has joined #ste||ar
anushi has quit [Ping timeout: 240 seconds]
anushi has joined #ste||ar
hkaiser has joined #ste||ar
anushi has quit [Remote host closed the connection]
anushi has joined #ste||ar
mcopik has joined #ste||ar
anushi has quit [Ping timeout: 256 seconds]
anushi has joined #ste||ar
Anushi1998 has joined #ste||ar
anushi has quit [Ping timeout: 260 seconds]
nikunj97 has quit [Quit: Leaving]
nikunj97 has joined #ste||ar
nikunj97 has quit [Client Quit]
nikunj has quit [Remote host closed the connection]
anushi has joined #ste||ar
nikunj97 has joined #ste||ar
anushi has quit [Ping timeout: 265 seconds]
anushi has joined #ste||ar
nikunj97 has quit [Remote host closed the connection]
nikunj97 has joined #ste||ar
anushi has quit [Ping timeout: 256 seconds]
anushi has joined #ste||ar
<M-ms>
jakub_golinowski: sorry, meeting ran a bit long, can we talk in 30 mins?
<jakub_golinowski>
M-ms, ok
david_pfander has quit [Ping timeout: 240 seconds]
K-ballo has joined #ste||ar
Anushi1998 has quit [Quit: Bye]
mcopik_ has joined #ste||ar
<M-ms>
jakub_golinowski: are you free now?
<jakub_golinowski>
yes
mcopik has quit [Ping timeout: 260 seconds]
hkaiser has quit [Quit: bye]
aserio has joined #ste||ar
mcopik_ has quit [Ping timeout: 240 seconds]
marco_ has quit [Ping timeout: 252 seconds]
hkaiser has joined #ste||ar
<hkaiser>
nikunj97: ready whenever you are
mcopik_ has joined #ste||ar
_bibek_ has quit [Quit: Konversation terminated!]
bibek has joined #ste||ar
<nikunj97>
hkaiser: sorry I didn't see the msg
<hkaiser>
sec
nikunj97 has quit [Quit: Leaving]
nikunj has joined #ste||ar
aserio has quit [Ping timeout: 265 seconds]
aserio has joined #ste||ar
mcopik_ has quit [Ping timeout: 265 seconds]
<nikunj>
hkaiser: I've changed the variable type to bool.
mcopik_ has joined #ste||ar
<hkaiser>
tks
<jakub_golinowski>
M-ms, I wrote the sketch of the reply to PR comment, could you take a look?
bibek has quit [Quit: Konversation terminated!]
bibek has joined #ste||ar
anushi has quit [Ping timeout: 268 seconds]
anushi has joined #ste||ar
anushi has quit [Remote host closed the connection]
anushi has joined #ste||ar
anushi has quit [Ping timeout: 264 seconds]
<jbjnr>
hkaiser: cppcon talk on HPX was rejected. I guess the same people who don't want variadic executors were reviewing it!
anushi has joined #ste||ar
anushi has quit [Ping timeout: 245 seconds]
<K-ballo>
was it about HPX in general, or variadic executors in particular?
aserio has quit [Ping timeout: 255 seconds]
anushi has joined #ste||ar
<jbjnr>
K-ballo: it was about schedulers, thread-pools, executors, cholesky and optimizing performance with variadic executors
<jbjnr>
a mish-mash of all aspects of performance tuning of our cholesky solver
<jbjnr>
with an emphasis on c++ standard api etc
<jbjnr>
and everything HPXy
anushi has quit [Remote host closed the connection]
<hkaiser>
jbjnr: complain to wash, he halfway rejected my talk as well
<jbjnr>
hkaiser: I have no need to complain. I submitted. they rejected. I'm not unhappy about it much. The abstract submission took 5 minutes. Not like writing a paper and having it rejected.
<hkaiser>
(it got cut to a 30 minute talk)
<hkaiser>
right
<hkaiser>
I guess wash needed to make room for his own 2 hour slot...
<jbjnr>
(the reviews were 1221202 I presume 2 is good, so I am a little suprised, but never mind).
<hkaiser>
I think the best was '3'
<jbjnr>
ok.
<M-ms>
jakub_golinowski: looks good
<jakub_golinowski>
M-ms, also the 2nd eval article is ready for review
<M-ms>
could you give me write access?
<jakub_golinowski>
M-ms, done
<M-ms>
thanks
akheir has joined #ste||ar
<diehlpk_work>
Is hpx master broken?
<hkaiser>
is it?
<diehlpk_work>
I did a pull and recompiled and got errors with APEX
<hkaiser>
diehlpk_work: could you mail Kevin, pls (khuck@cs.uoregon.edu)
<diehlpk_work>
Yes
mcopik_ has quit [Ping timeout: 240 seconds]
jaafar has joined #ste||ar
mcopik_ has joined #ste||ar
<jakub_golinowski>
diehlpk_work, yt?
<diehlpk_work>
Yes
<jakub_golinowski>
I am about finished with my summary for the 2nd evaluation and wanted you to have a look
<diehlpk_work>
Ok, sure
<diehlpk_work>
Please send me a e-mail
aserio has joined #ste||ar
aserio has quit [Client Quit]
aserio has joined #ste||ar
<jakub_golinowski>
diehlpk_work, sent
<diehlpk_work>
jakub_golinowski, Nice, I am not sure if the video will work when we export it as a pdf document
<diehlpk_work>
Have tou tested it?
<jakub_golinowski>
diehlpk_work, no, why should it be exported as pdf?
<diehlpk_work>
I was thinking to but the long document as a pdf and a shorter summary, the pictures, rhe video and the links to the PRs to the blog post
<diehlpk_work>
Could you share the video, pictures with me?
<diehlpk_work>
And yes please send a mail with a link to this document to the user list.
<diehlpk_work>
It is really nice
<diehlpk_work>
hkaiser, I am using your safeobject example
<diehlpk_work>
I do not understand why std::cout<< ho.get()[i] << std::endl; works for one thread and not for multiple ones
mcopik_ has quit [Ping timeout: 260 seconds]
<hkaiser>
diehlpk_work: I don't know either
<hkaiser>
why shouldnd't it work?
<hkaiser>
could be because you're using std::cout, try using hpx::cout instead
hkaiser has quit [Quit: bye]
aserio has quit [Ping timeout: 240 seconds]
eschnett has joined #ste||ar
aserio has joined #ste||ar
anushi has joined #ste||ar
galabc has joined #ste||ar
jakub_golinowski has quit [Ping timeout: 245 seconds]