aserio 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/
eschnett has joined #ste||ar
deep-book-gk_ has joined #ste||ar
deep-book-gk_ has left #ste||ar [#ste||ar]
parsa has joined #ste||ar
EverYoung has quit [Remote host closed the connection]
EverYoung has joined #ste||ar
jgoncal has quit [Ping timeout: 268 seconds]
jgoncal has joined #ste||ar
vamatya has quit [Ping timeout: 246 seconds]
mcopik has quit [Ping timeout: 240 seconds]
EverYoung has quit [Ping timeout: 240 seconds]
K-ballo has quit [Quit: K-ballo]
vamatya has joined #ste||ar
eschnett has quit [Quit: eschnett]
mars0000 has joined #ste||ar
jgoncal has quit [Quit: jgoncal]
vamatya has quit [Ping timeout: 268 seconds]
hkaiser_ has quit [Quit: bye]
mars0000 has quit [Quit: mars0000]
mars0000 has joined #ste||ar
vamatya has joined #ste||ar
ajaivgeorge__ has quit [Ping timeout: 240 seconds]
mars0000 has quit [Quit: mars0000]
mars0000 has joined #ste||ar
ajaivgeorge__ has joined #ste||ar
mars0000 has quit [Quit: mars0000]
parsa has quit [Quit: Zzzzzzzzzzzz]
parsa has joined #ste||ar
parsa has quit [Client Quit]
parsa has joined #ste||ar
parsa has quit [Client Quit]
parsa has joined #ste||ar
parsa has quit [Client Quit]
parsa has joined #ste||ar
parsa has quit [Client Quit]
parsa has joined #ste||ar
parsa has quit [Client Quit]
vamatya has quit [Ping timeout: 276 seconds]
Matombo has joined #ste||ar
bikineev has joined #ste||ar
bikineev has quit [Remote host closed the connection]
david_pfander has joined #ste||ar
taeguk has joined #ste||ar
<taeguk> Excuse me, I have a question about compile errors with execution::async_execute().
<taeguk> In above code, Line861-863 occurs compiler errors.
<jbjnr> the std::ref might be a problem. What;s the error
<taeguk> But, if I use commented codes (Line853-858) with commenting Line861-863, the codes are compiled successfully.
<jbjnr> if you remove std:ref, does it compile - async doesn't play well with references
<taeguk> @jbjnr: No, without std::ref, compile fails.
<jbjnr> what's the error message
<taeguk> @jbjnr There is already code which uses std::ref with execution::async_execute. (https://github.com/taeguk/hpx/blob/e28e0afb368701c4b1c637c9a54d66beb4973d46/hpx/parallel/algorithms/sort.hpp#L203)
<jbjnr> ooh. you're calling a constructor
<jbjnr> ok. fair enough
<jbjnr> can yopu paste the error msg
<taeguk> Error message above
<jbjnr> I'm not good at diagnosing these things, but the lambda verion returns a move/copy of the partition_thread object - the inline version returns the return type of the construvtor
<jbjnr> this might not be deduced correctly ...
<jbjnr> if heller is around, he'll know
<taeguk> I have two strange things.
<jbjnr> ^ping
<taeguk> 2. Why do my codes compile successfully with using commented codes (Line853-858) instead of Line861-863
<heller> let me check
<heller> a reduced testcase would help...
<heller> so the commented stuff works, but the uncommented doesn't?
<taeguk> heller: yes right
<heller> the compile error says that the function isn't callable
<heller> for whatever reason
<taeguk> in Visual Studio 2015, commented stuff works well, too.
<jbjnr> constructors don't have names that can be looked up and can't be called directly. Would this cause the error?
<jbjnr> the sort version calls a function proper
<jbjnr> the lambda version is also fine (just use that!)
<github> [hpx] ABresting opened pull request #2783: StackOverflow integration with libsigsegv (master...master) https://git.io/v7Oid
<heller> the lambda needs to be mutable
<heller> that's why it says "not callable"
<jbjnr> (the lambda verion compiles)
<taeguk> The lambda version compiles successfully in gcc and visual studio 2015, both.
<taeguk> But, function pointer version fails to compile in gcc. But, in visual studio 2015, it success to compile....
<taeguk> * Ah, I didn't use gcc. I used clang.
<taeguk> But, maybe there aren't big differences.
<heller> ahh ok
<heller> not sure if async_execute unwraps the references
<heller> which version of gcc do you use?
<heller> what's wrong with lambda version?
<taeguk> not gcc, but clang.
<taeguk> clang version is 3.9.1
<taeguk> lambda version is not problem
Matombo has quit [Remote host closed the connection]
<taeguk> the function pointer version is the problem.
<taeguk> In this case, block_manager can be copy-constructible and copy-assignable.
<taeguk> But, still it fails to compile in clang3.9.1
<jbjnr> I'm sticking with my theory - You're asking for the address of the constructor. I just don't think that will work.
<taeguk> jbjnr: I can't understand your answer.
<taeguk> 'partition_thread' is function.
<jbjnr> is it? oh sorry
<jbjnr> then ignore me
<taeguk> haha sorry to use confusable naming.
<jbjnr> sorry, I thought you were returning a partition_thread object
<jbjnr> wrong namespace?
<jbjnr> hmmm
<taeguk> So hard problem. :(
<taeguk> C++ is too hard to compile.
<taeguk> runtime bug is sometimes better than compile error... haha
<jbjnr> agreed. I end up wasting more time fixing these compile errors in my code than I do writing cool algorithms
<jbjnr> not agreeing with the runtime bug thing though. just the hard to compile bit
<taeguk> Anyway, I'll avoid that compile errors with using lambda version..
<taeguk> But, still it is very strange that function pointer version doesn't work... :(
Matombo has joined #ste||ar
<github> [hpx] StellarBot pushed 1 new commit to gh-pages: https://git.io/v7OQX
<github> hpx/gh-pages 3b7f753 StellarBot: Updating docs
zbyerly has quit [Ping timeout: 276 seconds]
zbyerly_ has joined #ste||ar
quaz0r has quit [Ping timeout: 276 seconds]
quaz0r has joined #ste||ar
Matombo has quit [Ping timeout: 260 seconds]
mcopik has joined #ste||ar
K-ballo has joined #ste||ar
taeguk has quit [Quit: Page closed]
bikineev has joined #ste||ar
denis_blank has joined #ste||ar
ajaivgeorge__ has quit [Ping timeout: 248 seconds]
Matombo has joined #ste||ar
Matombo has quit [Ping timeout: 260 seconds]
hkaiser has joined #ste||ar
bikineev has quit [Remote host closed the connection]
hkaiser has quit [Read error: Connection reset by peer]
hkaiser has joined #ste||ar
hkaiser has quit [Read error: Connection reset by peer]
hkaiser has joined #ste||ar
<jbjnr> hkaiser: you pinged me last night. Still need anything?
<hkaiser> I had a question
<hkaiser> ahh yes...
<hkaiser> jbjnr: on the RP branch, if you don't specify -tN, it now defaults to the max number of cores
<hkaiser> was that intentional?
<jbjnr> yes. sorry about that - the reason is ...
<jbjnr> that in all our tests, if you request a second pool, and the default is threads=1, then it would allocated 1 thread and if you assigned it to your custom pool, the default pool would be empty
<jbjnr> we got anoyed and though it'd be better if the default was all, then you could subtract N threads more easily
<jbjnr> than having to specify two parms on the command line
<hkaiser> so -T does not assign cores to the default pool? but to all of it?
<jbjnr> never understood why the hpx default was on thread
<jbjnr> -T says that hpx will manage N threads, you can then partition them between pols as you wish
<hkaiser> I have no objections to changing it, people complain about it all the time
<hkaiser> ok, -t is the overal lmax number of core the RP will use
<jbjnr> yup
<hkaiser> k
<jbjnr> (thougb we plalned on adding an --hpx::allow-oversubscritopn) param
<hkaiser> just wanted to know if that was intentional or accidental
<hkaiser> yah, we will need that
<jbjnr> so that the same 'PU' could be assing ed to multiple pools, and then you could have two threads on the same PU/core/etc
<jbjnr> (we would certainly want IO timer type pools to share some resources)
<hkaiser> sure, as they do right now
<jbjnr> also --hpx:allow-empty-pools
<hkaiser> I'd like to have pools which can change their footprint
<jbjnr> so that you could create N pools at startup, but assign not threads to them, you might even add work to those pools, that would sit undone until later you added a thread dynamically to the pool and then -bang- the tasks would start !
<jbjnr> yes, dynamic thread management was #2
<jbjnr> but we never finished #1, so rock on ....
<hkaiser> nod
<jbjnr> plenty still to do
<hkaiser> thanks
eschnett has joined #ste||ar
Matombo has joined #ste||ar
diehlpk_work has joined #ste||ar
Matombo has quit [Remote host closed the connection]
hkaiser has quit [Quit: bye]
aserio has joined #ste||ar
akheir has joined #ste||ar
<github> [hpx] ajaivgeorge opened pull request #2784: Error with reduce and transform reduce fixed (master...master) https://git.io/v73Bn
akheir has quit [Read error: Connection reset by peer]
parsa has joined #ste||ar
pree_ has joined #ste||ar
pree_ has quit [Remote host closed the connection]
pree_ has joined #ste||ar
denis_blank has quit [Quit: denis_blank]
EverYoung has joined #ste||ar
EverYoung has quit [Remote host closed the connection]
EverYoun_ has joined #ste||ar
EverYoun_ has quit [Remote host closed the connection]
EverYoung has joined #ste||ar
aserio has quit [Quit: aserio]
aserio has joined #ste||ar
<aserio> wash[m]: Will you be joining the STE||AR Meeting today?
<wash[m]> Hey aserio: sadly no, I have another conflict today. Next week I should be there
<aserio> wash[m]: ok, thanks for the update
<aserio> :)
zahra123 has joined #ste||ar
pree_ has quit [Read error: Connection reset by peer]
zahra123 has quit [Client Quit]
pree_ has joined #ste||ar
mars0000 has joined #ste||ar
hkaiser has joined #ste||ar
parsa has quit [Quit: Zzzzzzzzzzzz]
parsa has joined #ste||ar
Matombo has joined #ste||ar
ajaivgeorge_ has joined #ste||ar
aserio1 has joined #ste||ar
aserio has quit [Ping timeout: 258 seconds]
aserio1 is now known as aserio
parsa has quit [Quit: Zzzzzzzzzzzz]
hkaiser has quit [Quit: bye]
parsa has joined #ste||ar
aserio has quit [Ping timeout: 255 seconds]
hkaiser has joined #ste||ar
aserio has joined #ste||ar
EverYoung has quit [Ping timeout: 258 seconds]
<ABresting> what to do for config.h, if my third party user side library requires it?
bikineev has joined #ste||ar
<zao> Something emitted by their autotools?
<zao> CMake has some functionality to evaluate config.h.in-like files with variables and stuff.
<zao> Not sure of what context you're thinking off tho.
<hkaiser> ABresting: what do you suggest to do with it?
<mcopik> ABresting: what is config.h in your case? which tool generates it?
<ABresting> mcopik: it is platform specif file generated by autoconf tool when we run ./configure from libsigsegv
<hkaiser> ABresting: so what's the problem?
<zao> Wouldn't you use a previously deployed libsigsegv?
<zao> Or are you trying to integrate it into a HPX build?
<hkaiser> even then...
<zao> Or does your use of the library need information only known at build time?
<zao> (sorry for the questions, but I'm lost as to the structure of your project :D)
<ABresting> the problem is it is going to run when user has libsigsegv built on the its machine, but CI test expects it and failed when couldn't find it
<ABresting> its just an integration, coz of GPL structure
<ABresting> GPL license
<mcopik> ABresting: I believe you need to add CMake integration to locate header and library files for libsigsev
<mcopik> how do you link against the library without a CMake lookup for the library?
<hkaiser> mars0000: didn't we add that already?
<zao> ABresting: Can't you install one in the CI environment just like how hwloc/tcmalloc/etc. are present or not?
<hkaiser> mcopik: ^^
<hkaiser> zao: it should work without
<zao> Work in what way?
<hkaiser> as before ;)
<zao> I thought the whole purpose of this component was to use an external library if available, and gracefully omit itself if not there.
<zao> I'm talking about the scenario where it is available.
<zao> Not the fallback scenario where it's not.
<hkaiser> mcopik: see #2727
aserio has quit [Ping timeout: 240 seconds]
<hkaiser> ABresting: so use the generated preprocessor constant to guard your code
<hkaiser> if no libsegev is found, disable all of your code
<ABresting> hakiser: yes, this is exactly I am doing
<hkaiser> so let me repeat the question: what's the problem
<hkaiser> ?
<ABresting> hkaiser: I am bebugging it
EverYoung has joined #ste||ar
<ABresting> hkaiser: not a problem just the CI failed, and Thanks let me just put HPX_HAVE_STACK_OVERFLOW_DETECTION to guard the code
<github> [hpx] hkaiser pushed 2 new commits to resource_partitioner_jb: https://git.io/v73b5
<github> hpx/resource_partitioner_jb 5c3ebb2 Hartmut Kaiser: Re-enable perf counters, for now expose default pool counters
<github> hpx/resource_partitioner_jb c36175e Hartmut Kaiser: Making --hpx:bind=none work as expected
<hkaiser> ABresting: right, that's what you missed, I guess
<ABresting> hkaiser: yes silly mistake on my end
taeguk has joined #ste||ar
<taeguk> Anyone who experienced benchmark speed-up though just inserting std::cout to some constructor?
<taeguk> I am experiencing strange speed-up (3x speedup though just inserting std::cout....)
<zao> taeguk: There's a fair bit of synchronization in printing, so you may be artificially affecting scheduling and thus cache use and whatnot.
<zao> Does it still do it if you use std::cerr or write to the stderr file handle or descriptor?
david_pfander has quit [Ping timeout: 260 seconds]
<github> [hpx] hkaiser force-pushed resource_partitioner_jb from c36175e to d6f3c62: https://git.io/v7tnM
<github> hpx/resource_partitioner_jb d6f3c62 Hartmut Kaiser: Making --hpx:bind=none work as expected
<taeguk> zao: 3x speedup with inserting std::cout. std::cout helps performance....
<taeguk> std::cerr helps performance, too.
<zao> taeguk: Standard library primitives and to some extent outputs are synchronized.
<taeguk> Both std::cout and std::cerr helps benchmark... (3x speedup
<zao> Which means that you're affecting how resources are contended for and scheduled.
<zao> Which sometimes helps, and sometimes doesn't help.
bikineev has quit [Remote host closed the connection]
<taeguk> zao: But, 3x speedup is so strange...
<taeguk> Without std::endl, there is no performance improvements.
<zao> If I had to guess, I'd say it's cache-related, false sharing or some other catastrophic interaction.
<zao> But that's up to you to figure out :P
<taeguk> But, with inserting the line "std::cout << std::endl;", there is 3x speedup.
<taeguk> zao: okay, thanks for your sayings.
<zao> Yes, I'm saying that the _other_ code interacts poorly, and the printing artificially serializes it a bit, to the point that the hazard is mitigated and the loss of time due to serialization is outweighed by the actual code running better.
<zao> (again, speculating, I have no idea what the actual program does :D)
<mcopik> taeguk: std::endl enforces a flush
<taeguk> mcopik: I know, But there is no data to flush when "std::cout << std::endl" is executed.
<taeguk> With just inserting "std::cout << std::endl" in Line467, there is 3x speedup only in benchmark with bidirectional iterator tag.
<mcopik> taeguk: I don't think it matters, you still have to synchronize with the I/O. have you tried benchmarking internal calls to see where does this difference come from?
mars0000 has quit [Quit: mars0000]
<mcopik> is it a steady improvement in all calls or a single component of the algorithm is suddenly much fasteR?
ajaivgeorge has quit [Quit: Connection closed for inactivity]
<taeguk> mcopik: I found incorrect thing in my benchmark codes. Even though, it is not related to this issue, I'll fix it, then try to benchmark again.
EverYoun_ has joined #ste||ar
EverYoung has quit [Ping timeout: 276 seconds]
<pree_> parsa : yt ?
<parsa> yes
aserio has joined #ste||ar
<pree_> parsa : did you receive my message ??
<pree_> otherwise i will resend it ..
<parsa> please do
<pree_> did you recieve now ??
EverYoun_ has quit [Remote host closed the connection]
EverYoung has joined #ste||ar
pree__ has joined #ste||ar
pree_ has quit [Ping timeout: 240 seconds]
pree__ has quit [Ping timeout: 240 seconds]
ajaivgeorge_ has quit [Ping timeout: 246 seconds]
pree_ has joined #ste||ar
pree_ has quit [Read error: Connection reset by peer]
pree_ has joined #ste||ar
<ABresting> we can use if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") in runtime.cpp also?
<heller> No
EverYoun_ has joined #ste||ar
<ABresting> heller: how to check if we are on linux platform?
<hkaiser> ABresting: grep for __linux__ for an example
<heller> What feature do you need?
<heller> Might be weakened to posix
mars0000 has joined #ste||ar
EverYoung has quit [Ping timeout: 276 seconds]
<ABresting> I need to check is HPX_HAVING_STACKOVEFLOW && <linux based platform> then only register SIGSEGV with libsigsegv wrapper, otherwise sigaction(SIGSEGV, &new_action, nullptr); // Segmentation fault
<ABresting> simple as that
<zao> Hi from FreeBSD.
<ABresting> hkaiser: #ifdef __linux__ will work ?
<heller> Google it
<hkaiser> ABresting: look at how it's used in other places
<heller> ABresting: what advantage does your solution have over what we have in place now?
<ABresting> we will know about it once people start using it, I believe using a stable library's code is always better in the first place
<hkaiser> ABresting: what do you mean by 'stable library code'?
bibek_desktop has quit [Quit: Leaving]
ajaivgeorge has joined #ste||ar
ajaivgeorge is now known as ajaivgeorge_
<heller> ABresting: so you have no opinion there? That's not what I was wanting to hear... In that case, I'd always prefer what we have know because I don't need to install another dependency
<ABresting> libsigsegv is widely used, people who are not using it, are having implementation somewhat similar to it. If we can afford to use the original source then why not. With time at least we know what are the most common types of stack overflows we encounter and thus can try and come up with our own as well
aserio1 has joined #ste||ar
<ABresting> heller: I think it's not an optimization problem that if tomorrow I could come up with more than 95% accuracy then we will update our systems with this. If it wasn't for the GSoC project I would have let the newly introduced code by chris to work and could have pivoted to some other issue but I think I am bound to work on my assigned project as per GSoC rules
aserio has quit [Ping timeout: 276 seconds]
aserio1 is now known as aserio
<ABresting> I know it's not a politically correct statement but its a fact! :/
<hkaiser> ABresting: if you talked to us 4 weeks ago when Chris sent his PR without disappearing we would have found a way to adjust your tasks
<K-ballo> who's Chris?
<hkaiser> ct-clmsn at github
hkaiser has quit [Read error: Connection reset by peer]
hkaiser has joined #ste||ar
<hkaiser> K-ballo: Chris Taylor
<ABresting> hakiser: I think GSoC is not a full stop to work I wish to do, my zeal for HPX is for the work, I am not here for GSoC certificate but to learn from the best in the industry( you guys). I spent the time to talk about chris's PR but wash was like stick to the assigned work first. I was just gone for a week that I spent in no good condition.
parsa has quit [Quit: Zzzzzzzzzzzz]
<ABresting> If you think you can adjust my work now, then I am beyond excited to do so because as I said earlier it HPX which I am interested in no matter what specific task I am doing
<ABresting> hkaiser: I am still little confused as when I said to do derived work like chris earlier, I was told to do integration work :/ and now when chris did it, I am facing something like why are you doing what you are doing, its already done. lol
<taeguk> hkaiser: Can you discuss about your comments in https://github.com/STEllAR-GROUP/hpx/commit/aae9fb6a .
aserio has quit [Ping timeout: 240 seconds]
parsa has joined #ste||ar
<pree_> parsa : Are you receive my messages ? i think it's a channel probelm between us ...
EverYoun_ has quit [Remote host closed the connection]
EverYoung has joined #ste||ar
taeguk has quit [Quit: Page closed]
bikineev has joined #ste||ar
parsa has quit [Quit: Zzzzzzzzzzzz]
bikineev has quit [Remote host closed the connection]
aserio has joined #ste||ar
bikineev has joined #ste||ar
zbyerly has joined #ste||ar
parsa has joined #ste||ar
parsa has quit [Ping timeout: 258 seconds]
hkaiser has quit [Quit: bye]
aserio has quit [Ping timeout: 246 seconds]
aserio has joined #ste||ar
zbyerly has quit [Ping timeout: 276 seconds]
hkaiser has joined #ste||ar
ajaivgeorge_ has quit [Ping timeout: 268 seconds]
eschnett has quit [Quit: eschnett]
pree_ has quit [Ping timeout: 248 seconds]
aserio has quit [Ping timeout: 246 seconds]
pree_ has joined #ste||ar
aserio has joined #ste||ar
mars0000 has quit [Quit: mars0000]
pree_ has quit [Ping timeout: 240 seconds]
aserio has quit [Quit: aserio]
pree_ has joined #ste||ar
pree_ has quit [Ping timeout: 240 seconds]
<diehlpk_work> what(): failed to set thread affinity mask (0xfffe) for cpuset 0x00ff00fe: HPX(kernel_error)
<diehlpk_work> What does that mean?
<diehlpk_work> I try to run hpx tests in circle-ci
pree_ has joined #ste||ar
Matombo has quit [Remote host closed the connection]
pree_ has quit [Ping timeout: 260 seconds]
<hkaiser> diehlpk_work: uhh
<hkaiser> something is off with the affinity mask settings
<hkaiser> what command line options do you use?
EverYoun_ has joined #ste||ar
EverYoung has quit [Ping timeout: 240 seconds]
EverYoun_ has quit [Ping timeout: 246 seconds]
EverYoung has joined #ste||ar
EverYoung has quit [Remote host closed the connection]
EverYoung has joined #ste||ar
zbyerly has joined #ste||ar
zbyerly has quit [Ping timeout: 255 seconds]
zbyerly has joined #ste||ar
zbyerly has quit [Read error: Connection reset by peer]
zbyerly has joined #ste||ar