K-ballo 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/
nanmiao has quit [Quit: Connection closed]
K-ballo has quit [Quit: K-ballo]
surya69 has joined #ste||ar
<surya69>
I have cmake version 3.16.3 ,Am id good to go for installing hpx
<zao>
Probably.
<zao>
I think there's a table of minimum and required versions of dependencies and tools in the documentation.
diehlpk_work has quit [Remote host closed the connection]
hkaiser has quit [Quit: bye]
deepika_birthare has joined #ste||ar
deepika_birthare has quit [Quit: Connection closed]
deepika_birthare has joined #ste||ar
<deepika_birthare>
Hello Everyone. I want to contribute to Stellar Project for gsoc 2021. I'm interested in UI Improvements for Performance Visualization, particularly.
<deepika_birthare>
Is this the right place to discuss my queries?
<srinivasyadav227>
yes
<srinivasyadav227>
deepika_birthare: welcome and yes this is the place to discuss abt stellar ;)
<deepika_birthare>
ok, thanks.
surya69 has quit [Ping timeout: 240 seconds]
deepika_birthare has quit [Quit: Connection closed]
<jedi18[m]>
What's is_indirect_callable for? I don't need to add it to the tag_fallback_invoke overloads right?
<jedi18[m]>
Oh ok so you mean only to the overloads which take in an execution policy and a predicate?
<gonidelis[m]>
yes
<gonidelis[m]>
check my older overloads to see what i replace that with (if i do. i think i don't)
<gonidelis[m]>
i am actually 80% percent now that i don't
<gonidelis[m]>
check any algo that takes a predicate
<gonidelis[m]>
hint: the non-container algos seize to support projections (we are going full standard comforming here) and only the ranges ones do now ;)
<jedi18[m]>
Ohh ok thanks, I was getting some bugs which was due to something else but thought it was related to this
<jedi18[m]>
Are there no segmented algorithm tests for min_element/max_element/minmax_element?
<srinivasyadav227>
i saw the same example, there std::for_each(nums.begin(), nums.end(), []**(int &n)**{ n++; });
<srinivasyadav227>
that int was taken as ref
<zao>
(note that your highlighting with asterisks does not render at all in IRC)
<zao>
An example, where?
<zao>
Ah, in cppreference?
<srinivasyadav227>
<zao "Ah, in cppreference?"> yes
<zao>
Well, did you try the HPX algorithm, and how did it fare?
<srinivasyadav227>
no..i didnt try that yet
<zao>
I assumed from your initial question that there was a problem :)
<srinivasyadav227>
yes, i wasnt able to use int& on lamda
<srinivasyadav227>
for hpx::ranges::for_each
<zao>
Note that the non-ranges implementation says "If the type of first satisfies the requirements of a mutable iterator, f may apply non-constant functions through the dereferenced iterator."
<zao>
As for the documentation for the ranges implementation, they're largely nonsensical as they seem to document the wrong algorithm completely, talking still about iterators and sentinels.
<zao>
Or again, apparently I might not be able to read and ranges:: contains both range and non-range algorithms?
<zao>
Happy to help, even though I probably sowed a lot of confusion along the way :D
<srinivasyadav227>
it was a bit silly from my side, ;) but tqsm
<jedi18[m]>
I can't find tests for the segmented overloads of the minmax algorithms, will I have to add tests?
K-ballo has joined #ste||ar
Siddhant has joined #ste||ar
Siddhant has quit [Client Quit]
hkaiser has joined #ste||ar
<srinivasyadav227>
hkaiser: i have edited datapar/transform_loop.hpp (#5240) which was previously giving build errors, now its building fine and i have installed locally.
<hkaiser>
nice!
<srinivasyadav227>
i did small performace testing against Vc and openmp
<hkaiser>
ahh, it's --hpx:version, then - you you retry, please?
<srinivasyadav227>
yea sure
<srinivasyadav227>
its release mode
<hkaiser>
ok
<hkaiser>
so it's as I remember, the compiler can't optimize it sufficiently to get a real speedup :/
<srinivasyadav227>
so, performance i low right?
<srinivasyadav227>
ohh
<hkaiser>
yes, it's barely faster compared to the seq case
<hkaiser>
and the omp version is 4 times faster
<srinivasyadav227>
yea, i have tested with various size inputs like 1 << 10, 1 << 20, 1 << 30 but mostly speedup was only 20% more
<hkaiser>
right
<srinivasyadav227>
we should adapt new ones i guess ;)
<hkaiser>
this is where we need to simplify the overall code such that the compiler can actually optimize things properly
<hkaiser>
one step at a time, though
<hkaiser>
let's get things disentangled first, then we should adapt to the gcc simd types
<srinivasyadav227>
ok, i will again check with direct Vc invocation
<hkaiser>
srinivasyadav227: yes, might be a good test, use vc directly and compare its performance
<srinivasyadav227>
ok ;)
hkaiser has quit [Read error: Connection reset by peer]
hkaiser has joined #ste||ar
<jedi18[m]>
<jedi18[m] "I can't find tests for the segme"> Could someone please respond to this?
shubh has joined #ste||ar
<shubh>
Hello Everyone
<srinivasyadav227>
shubh: Hello!
<hkaiser>
hey shubh, welcome
<shubh>
Thank You hkaiser
<gnikunj[m]>
hkaiser: should I look into execution space implementation now? (or would you really want me to hold my horses ;-) )
<gnikunj[m]>
asking coz I'm bored and I'll either work on execution space or take a 2-3d vacation from using laptop :P
<hkaiser>
gnikunj[m]: could we get the current stuff into hpx-kokkos? also, I'd like to see some perf analysis on the current implementation
<hkaiser>
bored is not good ;-)
<gnikunj[m]>
we should do a call with ms and see. the returning executor is a worthwhile feature that can make it back to hpx-kokkos.
<shubh>
you are bored in starting phase
<hkaiser>
gnikunj[m]: yes
<gnikunj[m]>
Also, what sort of examples would you want me to implement for perf analysis?
<hkaiser>
the same as we've used for the paper, just running on the device
<gnikunj[m]>
so stencil + artificial
<hkaiser>
nod
<gnikunj[m]>
got it. Shouldn't be too difficult right now. Let me see what I can do ;-)
<hkaiser>
this would still require some work, but would be worthwhile as it could be turned into a followon paper
<hkaiser>
shubh: gnikunj[m] is working on things for a while now (2 or 3 years)
<gnikunj[m]>
right. I'm thinking on how to get stencil implemented right now. As it stands, artificial one's should be simple enough to change the executor to get it working.
<gnikunj[m]>
close to 3 years now :D
<gnikunj[m]>
hkaiser: alright then. You have me boarded on some perf analysis. Should we report those in the next meeting though?
<srinivasyadav227>
gnikunj[m]: wow!, thats really great ;)
<shubh>
Okay Sorry gnikunj[m] then it make senseXD
<hkaiser>
whatever we have ready by then
<gnikunj[m]>
(they might increase their expectations)
<hkaiser>
nah
<srinivasyadav227>
hkaiser: theres no documentation for Vc?
<hkaiser>
so far it's aligned with our interests, so it's ok
<srinivasyadav227>
oh shit, i was struggling since one hour, going through their source code
<gonidelis[m]>
jedi18 late reply sorry
<gonidelis[m]>
I don't think we need segmented tests
<jedi18[m]>
Oh ok thanks, then I guess the PR is almost ready, I just need to add those sentinel tests
<gonidelis[m]>
;) This are more of a custom tests of mine: that means you will probably have to figure out a test case of yours according to the algo functionality
<gonidelis[m]>
but the structure is the same
<gonidelis[m]>
(don't forget to add iter_sent.hpp utility)
<gonidelis[m]>
jedi18: have you made the pr? i cannot find it on our list
<jedi18[m]>
No no, I haven't yet
<gonidelis[m]>
if not, you could open it up just to make sure CI is warm
<gonidelis[m]>
you commit addiotional changes then
<jedi18[m]>
I need to find an example to run the segmented overloads to see if it compiles right
<gonidelis[m]>
plus we will have some more time for review
<gonidelis[m]>
segmented example?
<jedi18[m]>
Oh right ok, I'll create the PR soon
<gonidelis[m]>
thanks!!!
<gonidelis[m]>
:D
<jedi18[m]>
Yeah some example of the code that I can run to test it
<jedi18[m]>
Btw I notice there's a file called minmax_element_performance but I can't find the corresponding project to be able to run it
<hkaiser>
jedi18[m]: we should have segmented tests for all the supported algorithms
<hkaiser>
those should still work after your changes
<jedi18[m]>
Yeah but none of the segmented tests use minmax
<hkaiser>
ok, do those algorithms actually have segmented implementations?
<jedi18[m]>
I've updated it to use tag_invoke, just need to test it now
<hkaiser>
would creating tests be ok for you?
<jedi18[m]>
Would I be able to figure it out by looking at the other tests?
<hkaiser>
just based on the existing ones
<jedi18[m]>
Well, wouldn't hurt to try :D
<hkaiser>
good attitude ;-)
<srinivasyadav227>
any reasons why "auto start = std::chrono::high_resolution_clock::now();" would be failing? its showing me template argument deduction failed
<Ri2Raj>
Hello everyone, myself Rituraj Dutta pursuing my Btech in Information Technology from Gauhati University of Science and Technology and currently I'm in my second year and I'm interested in the project mentioned in the list "To Implement Iterative Solvers". I've a decent knowledge in C++ mainly C++11/14 as I have been using it since high school. I
<Ri2Raj>
also some knowledge on parallel programming with CUDA ( only the basics though). So, basically I'm new in this field of HPX. It would be of great hep from the community for little bit of help and support.
<Ri2Raj>
*help
Ri2Raj has quit [Quit: Connection closed]
Ri2Raj has joined #ste||ar
<gonidelis[m]>
Ri2Raj: wellcome
<gonidelis[m]>
jedi18: great!!
<gonidelis[m]>
welcome^^
<gonidelis[m]>
don't forget the docs ;)
<Ri2Raj>
Thanks gonidelis[m]
<jedi18[m]>
<gonidelis[m] "don't forget the docs ;)"> Thanks, I'll add it in the next commit
Ri2Raj61 has joined #ste||ar
Ri2Raj61 has quit [Client Quit]
Ri2Raj has quit [Quit: Connection closed]
hkaiser has joined #ste||ar
jehelset has quit [Remote host closed the connection]