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/
<K-ballo> shuffle will try to swap values around, and since those rows are rvalues that requires a special rvalue swap
<K-ballo> (we have a similar one for util::tuple in HPX, a total hack, but such is life)
EverYoun_ has joined #ste||ar
<K-ballo> ForwardIterator requires addressof(*a) == addressof(*b) if a == b
<hkaiser> K-ballo: it's not a real reference but a proxy to a real reference
<K-ballo> hkaiser: is that supposed to make it better..?
<hkaiser> no
<K-ballo> heh
<hkaiser> same problem as we've had with zip_iterator, remember?
<K-ballo> yep, I mention our util::tuple hack above
<hkaiser> ahh ok, missed that
EverYoung has quit [Ping timeout: 252 seconds]
EverYoun_ has quit [Ping timeout: 240 seconds]
<hkaiser> yah, our own rvalue swap might be needed
<parsa[w]> so dereference() is supposed to return a Row<T>&?
<hkaiser> butjust for blaze::Row<> objects
<hkaiser> parsa: it would have to yes, but that's not possible
<parsa> that's literally tagged BADBAD
<parsa> :)
eschnett has quit [Quit: eschnett]
<K-ballo> yeah
<parsa> how is this swap overload supposed to be resolved?
<K-ballo> meaning?
<parsa> i can't just put it in some random namespace in an included header file and expect it to be picked up
<K-ballo> oh, ADL
<K-ballo> the namespace where Row is defined will do
EverYoung has joined #ste||ar
EverYoung has quit [Remote host closed the connection]
EverYoung has joined #ste||ar
ct_ has quit [Ping timeout: 252 seconds]
<parsa[w]> thanks for all the help, but i'm obviously doing this wrong: "could not match 'type-parameter-0-0 &' against 'blaze::CustomMatrix<double, true, true, false>'" code: https://github.com/STEllAR-GROUP/phylanx/blob/207e7f308506391a5a9ad0511874f3266a654452/phylanx/util/matrix_iterators.hpp#L24-L31
<parsa[w]> which makes sense, since blaze itself has a compatible swap function
<hkaiser> parsa[w]: you need swap(Row<T> &&, Row<T> &&)
<K-ballo> is Row variadic?
<hkaiser> no
<hkaiser> it's a fancy wrapper for T&
<parsa[w]> it's not a variadic but it does have plenty of arguments though
<hkaiser> does it?
<K-ballo> the matrix iterator's reference type is just `Row<T>`, so the others must be defaulted
<parsa[w]> sure, it's something like Row<T, true, true, false>
<parsa[w]> and Row<T> and Row<T, 1, 1, 0> and so on
<hkaiser> parsa[w]: no, it's Row<CustomMatrix<T, true, true, false>>
<parsa[w]> you're right
<hkaiser> parsa: you were right, it's Row<T,bool,bool,bool,CRAs...>
<parsa> yeah, but when i'm debugging, the debugger shows Row<CustomMatrix<stuff>> though
<parsa> why is its own swap not being picked up then?
<hkaiser> because its a swap(Row<>&, Row<>&) not swap(Row<>&&, Row<>&&)
EverYoung has quit [Ping timeout: 245 seconds]
<hkaiser> parsa[w]: why blaze::swap? and not just swap?
<parsa[w]> does it actually matter here?
<hkaiser> absolutely!
<parsa> trying it right now… why though?
<zao> One core difference in general is that ADL only kicks in for unqualified uses.
<hkaiser> are you sure there actually exists a blaze::swap?
<parsa> hkaiser: yes, that's the reason i chose it
<hkaiser> where is it?
<parsa> wanted to make sure some random swap isn't picked up
ct_ has joined #ste||ar
EverYoung has joined #ste||ar
<parsa> apparently there isn't any :|
<hkaiser> see
<zao> Ooh, I got an idea. I should Wireshark my hello worlds.
<hkaiser> uhhm we're doomed ;)
<parsa> hkaiser: swap without blaze:: failed too
<zao> Well, locality 1 suffers some sort of access violation and terminates because of it. I want to know at what stage that happens, and looking at the communication with locality 0 ought to give _some_ information on that, surely?
<hkaiser> parsa: let's look tomorrow
<hkaiser> zao: nod
<hkaiser> you could add --hpx:debug-hpx-log=file, but that might change timings considerably and th eproblem might go away
<zao> By the way, I'm on the road until sunday evening, so I may respond slowly to comms until then.
<hkaiser> safe travels
EverYoung has quit [Remote host closed the connection]
parsa has quit [Quit: Zzzzzzzzzzzz]
EverYoung has joined #ste||ar
parsa has joined #ste||ar
parsa has quit [Ping timeout: 276 seconds]
ct_ has quit [Read error: Connection reset by peer]
ct_ has joined #ste||ar
EverYoung has quit [Remote host closed the connection]
EverYoung has joined #ste||ar
diehlpk has joined #ste||ar
ct_ has quit [Quit: Leaving]
EverYoung has quit [Ping timeout: 245 seconds]
diehlpk has quit [Ping timeout: 260 seconds]
EverYoung has joined #ste||ar
EverYoung has quit [Ping timeout: 252 seconds]
EverYoung has joined #ste||ar
EverYoung has quit [Ping timeout: 240 seconds]
hkaiser has quit [Quit: bye]
K-ballo has quit [Quit: K-ballo]
parsa has joined #ste||ar
vamatya has quit [Ping timeout: 248 seconds]
EverYoung has joined #ste||ar
vamatya has joined #ste||ar
wash[m] has quit [Read error: Connection reset by peer]
auviga has quit [Ping timeout: 256 seconds]
EverYoung has quit [Ping timeout: 245 seconds]
wash[m] has joined #ste||ar
parsa has quit [Quit: Zzzzzzzzzzzz]
auviga has joined #ste||ar
<github> [hpx] cogle opened pull request #3210: Adapted parallel::{search | search_n} for Ranges TS (see #1668) (master...search_update) https://git.io/vAyIp
nanashi55 has quit [Ping timeout: 252 seconds]
nanashi55 has joined #ste||ar
vamatya has quit [Ping timeout: 252 seconds]
EverYoung has joined #ste||ar
EverYoung has quit [Ping timeout: 276 seconds]
nikunj has joined #ste||ar
jaafar has quit [Ping timeout: 268 seconds]
CaptainRubik has joined #ste||ar
CaptainRubik has quit [Ping timeout: 260 seconds]
david_pfander has joined #ste||ar
anushi has quit [Remote host closed the connection]
Anushi1998 has joined #ste||ar
<github> [hpx] msimberg pushed 1 new commit to fixing_3182: https://git.io/vAyWw
<github> hpx/fixing_3182 e14f560 Mikael Simberg: Add some missing when_all includes to tests
EverYoung has joined #ste||ar
david_pfander1 has joined #ste||ar
EverYoung has quit [Ping timeout: 276 seconds]
david_pfander1 has quit [Ping timeout: 256 seconds]
taeguk has joined #ste||ar
<github> [hpx] StellarBot pushed 1 new commit to gh-pages: https://git.io/vAy0Z
<github> hpx/gh-pages 835b7d3 StellarBot: Updating docs
<jbjnr> zao: diehlpk_work heller_ thanks for the thanks. Having a nice day off today.
<heller_> jbjnr: enjoy!
nikunj has quit [Ping timeout: 260 seconds]
<taeguk> jbjnr: Very congratulations for passing PhD defence :)
<zao> We had a dude at the CS department that were going to have his licentiate defence the other day. One of his committee members had her flight from Stockholm delayed repeatedly.
<zao> Think they got the show on the road four hours after the intended start time.
mcopik has joined #ste||ar
nikunj has joined #ste||ar
hkaiser has joined #ste||ar
K-ballo has joined #ste||ar
vsc20453 has joined #ste||ar
<vsc20453> Hi, I'm trying to use (local) channels, but am a bit confused about blocking behaviour
<hkaiser> vsc20453: ok, channels shouldn't block if you don't ask them to
<vsc20453> hkaiser: that's what I thought, since they always return a future, right?
<hkaiser> right
<hkaiser> both, channel.get and channel.set return a future
<vsc20453> still, my thread seems to block at some_channel.get(t) (for t=0, if that matters). Are channels freely copyable & assignable? (seemed to work in a small test code..)
<hkaiser> yes
<hkaiser> do you have some code that demonstrates the issue?
<hkaiser> code we can look at, that is?
<vsc20453> yes, but it's ~200 lines, so not reall ya minimal test case
<hkaiser> vsc20453: could you try to minimize it?
<vsc20453> I'll try to come up with a minimal version...
<hkaiser> great, thanks
<zao> 200 lines isn't _too_ bad for a first glance either, assuming it's in one TU.
EverYoung has joined #ste||ar
<hkaiser> indeed
<K-ballo> channels are copyable?
<vsc20453> by the way: what's the recommended way to add debug prints to code? I have the impression that hpx::cout output sometimes gets swallowed (especially when things don't work as they should), whereas std::cout does make it through. Is there any problem with using std::cout for quick and dirty debugging?
EverYoung has quit [Ping timeout: 276 seconds]
<hkaiser> vsc20453: shouldn't be a problem
<hkaiser> std::cout goes through the kernel and might block the current hpx-thread while doing IO, for debug this is not an issue
<hkaiser> hpx::cout sends things to a special thread that then calls std::cout, so things may get not flushed in tim eif something goes wrong
<zao> Be on a cool OS, and OutputDebugStringA :P
<hkaiser> lol
<hkaiser> zao: have they converted you now?
nikunj has quit [Ping timeout: 260 seconds]
hkaiser has quit [Quit: bye]
vsc20453 has left #ste||ar ["ERC (IRC client for Emacs 25.3.1)"]
aserio has joined #ste||ar
nanashi64 has joined #ste||ar
nanashi55 has quit [Ping timeout: 276 seconds]
nanashi64 is now known as nanashi55
<zao> I like the language level of this article, I can grok it if I guess wildly.
<diehlpk_work> zao, I tried to keep it simple
<diehlpk_work> I am curious if we get more German students due to the interview
<zao> There's a stray "besprechen.[/b]" in the article.
<diehlpk_work> Ok, I will let them know
<zao> (well, the besprechen. should be there, but the [/b] probably shouldn't :D)
<diehlpk_work> I wrote them and ask to correct it
wash[m] has quit [Read error: Connection reset by peer]
wash[m] has joined #ste||ar
Smasher has joined #ste||ar
taeguk has quit [Quit: Page closed]
hkaiser has joined #ste||ar
david_pfander has quit [Ping timeout: 255 seconds]
eschnett has joined #ste||ar
parsa has joined #ste||ar
<github> [hpx] hkaiser pushed 1 new commit to master: https://git.io/vASe4
<github> hpx/master 022d849 Hartmut Kaiser: Merge pull request #3205 from STEllAR-GROUP/fixing_3182...
<github> [hpx] hkaiser closed pull request #3201: Fixing optional::swap (master...fixing_3200) https://git.io/vAKdQ
<github> [hpx] hkaiser deleted fixing_3200 at f6c4f19: https://git.io/vASea
galabc has joined #ste||ar
parsa has quit [Client Quit]
<galabc> heller_ or hkaiser could I ask you two questions concerning the HPX smart executors?
<galabc> I have two ideas for a Google summer of code project
<hkaiser> galabc: ok
<galabc> first of, I wonder if the chunk size variables and prefetching distance are continuous variables
<galabc> for instance can you have a chunk size of 33.3456%
<hkaiser> in principle yes
<galabc> or it is restricted to certain values
<hkaiser> the chunksize is probably a integral value (i.e. 5 iterations to run one the same hpx thread)
<hkaiser> there can't be 5.3 iterations
parsa has joined #ste||ar
<galabc> ok so I dont think its usefull if the regression outputs continuous chunk size
<galabc> since I would need to transform the floating point into a integer
<galabc> I assume its the same thing for prefetching distance
<galabc> My other questions was that while I was making research, I've read that multinomial regressions are mostly used to approximate nominal variables
<galabc> But In the case of the chunk size and prefetching distance, the variables are ordinal
parsa has quit [Quit: Zzzzzzzzzzzz]
<galabc> I've read that a ordinal logistic regression can be used to find the class of a ordinal variable
<galabc> hkaiser have you ever heard of that?
<galabc> Maybe that would be a better direction for the project since i'm not quite sure chunk size and prefetching distance can be treated as continuous variables
<hkaiser> galabc: I have not heard about this, but I'm by no means a specialist here
<hkaiser> actually, I don't know anything, mostly ;)
<diehlpk_work> galabc, I think you can use the cardinal variant
<diehlpk_work> Have you checked the hyper parameters?
<diehlpk_work> And assumptions on the function?
jaafar has joined #ste||ar
<diehlpk_work> Some machine learning techniques assume smoothness in some sense
jakub_golinowski has joined #ste||ar
<galabc> diehlpk_work, I will have to check was is the cardinal variant
<galabc> All I know from ordinal logistic regression is that its a classification algorithm used when the classes can be ordered (for example 1,2,3,4..)
<galabc> I think its simply a variant of the multinomial logistic regression
<diehlpk_work> Ok, please check this
mbremer has joined #ste||ar
<galabc> I wonder what do you mean by cardinal variant
<galabc> Is that another type of regression?
<mbremer> @hkaiser: Do you have some time to chat next week? I'm finishing up serializing those classes, and wanted to discuss migration details
<diehlpk_work> I menat ordinal regression
<diehlpk_work> galabc, Just wanted to say that you should check the requirements for the regression you suggest
<galabc> Oh I understand
<galabc> I will do this
<diehlpk_work> I learned yesterday that one have to carefully check the hyper parameters and the the assumptions on the residual function
<diehlpk_work> Was discussing with one who did his PhD in machine learning about how to use the different techniques
<galabc> Its based on the proportionnal odds assumption
<galabc> So maybe it wont work I have to verify
<diehlpk_work> Sure, please check and may play around with easy data
<diehlpk_work> Generate a data set where you know what the minima is and use this data to predict the minimia
EverYoung has joined #ste||ar
jakub_golinowski has quit [Ping timeout: 256 seconds]
<galabc> hkaiser here is my second question
<galabc> From what zhara told me
<galabc> For each of the training examples, you try each execution policy and use the one with minimal execution time
<hkaiser> yes
<galabc> You then use this value as a 'target value' for the training of the regression
<galabc> But I don't think those values are stored in a file
<galabc> there is a input.dar with the input data
<hkaiser> it has to be stored somewhere, though
<galabc> input.dat ***
<hkaiser> she stored the koefficients for the regression
<hkaiser> I think
<galabc> Yes she did
<galabc> but if I want to train my own regression in python for example
<galabc> I need the input.dat file which I can access
<galabc> But I also need the target values
<hkaiser> ok
<galabc> And I think she only stored the weights
<hkaiser> did you ask her where this data is?
<hkaiser> don't think she has thrown it away
<galabc> I will ask her again more precisely
<galabc> If its stored, it will make my training in python much more straight-forward
eschnett_ has joined #ste||ar
eschnett has quit [Ping timeout: 265 seconds]
<galabc> The question as been asked but I don't know how long it will take
aserio has quit [Ping timeout: 265 seconds]
aserio has joined #ste||ar
<diehlpk_work> I think here is the data you searching for
<diehlpk_work> Here she provide a good description
EverYoung has quit [Ping timeout: 252 seconds]
mcopik has quit [Ping timeout: 240 seconds]
EverYoung has joined #ste||ar
<galabc> Thank I hve analysed the code
<galabc> And she doesn't store the target variables
<galabc> only the data inputs and the weights
<galabc> I may need to add that feature in the main.cpp code to be able to collect all the data
<diehlpk_work> Sure, let us know if you need access to this repo
<diehlpk_work> or you can fork it and start to work on the fork
<galabc> If I clone the hpxml rep, I can make my experimente with changes directly on my copy?
<galabc> I will only need to add 2 or 3 lines of code because she stores the targets in a list and I simply need to print this list in a file
<github> [hpx] hkaiser pushed 1 new commit to master: https://git.io/vASsM
<github> hpx/master d4be8df Hartmut Kaiser: Propagate HPX_WITH_VCPKG to dependent targets
<diehlpk_work> galabc, yes, but when you want to provide your changes, you should fork it
<galabc> Ok it will be done
<diehlpk_work> You can do a pull request and we could accept your changes and integrate them to the hpxml repo
aserio has quit [Ping timeout: 245 seconds]
nanashi55 has quit [Ping timeout: 276 seconds]
nanashi55 has joined #ste||ar
nikunj has joined #ste||ar
aserio has joined #ste||ar
parsa has joined #ste||ar
<mbremer> @hkaiser: yt?
galabc has quit [Ping timeout: 248 seconds]
<K-ballo> done
<parsa[w]> is the noexcept clause in good shape?
<K-ballo> no
<K-ballo> msvc probably doesn't care?
<K-ballo> try with... how was it? /permissive- ?
<parsa> i suppose
<parsa> yeah it's /permissive- trying right now
<parsa> K-ballo: MSVC still is happy… but the code is missing "typename", isn't it?
<K-ballo> yep
<K-ballo> besides that, iter_swap has no standard exception specification
<parsa> still learning
aserio has quit [Read error: Connection reset by peer]
aserio has joined #ste||ar
galabc has joined #ste||ar
galabc has quit [Quit: Leaving]
gablab has joined #ste||ar
<gablab> I have a questions for those who are familiar with the c++ boost library and ubuntu
<gablab> I wondered if it was better to install boot in my /usr/lib rep or anywhere else like my /home repository for example
<gablab> maybe it doesn't have a big effect
<gablab> I'm used in programming languagues that do the package management automatically (python and matlab) so I'm not 100% sure of what I'm doing
<K-ballo> I always "install" boost into dedicated locations, but that's because I'm used to work with different versions for different projects
<K-ballo> and I say "install" because I'm too lazy and never actually install it, I just build and use from there
<gablab> ok I see
<gablab> I think I could take the time to install since I'll only be working on one project
<gablab> But it seems the locations isnt important as long as I remember it
aserio1 has joined #ste||ar
gablab has quit [Quit: Leaving]
<K-ballo> when working with HPX (or other cmake based projects) you just tell it where it is (-DBOOST_ROOT et al) and that's it
aserio has quit [Ping timeout: 256 seconds]
aserio1 is now known as aserio
hkaiser has quit [Quit: bye]
jakub_golinowski has joined #ste||ar
<parsa[w]> is there anything like std::is_no_throw_invocable() for dereferencing?
hkaiser has joined #ste||ar
<parsa> K-ballo: ^
<K-ballo> noexcept(*ptr)?
<parsa> that worked. thanks a lot
eschnett_ has quit [Quit: eschnett_]
eschnett has joined #ste||ar
parsa has quit [Quit: Zzzzzzzzzzzz]
aserio has quit [Quit: aserio]
diehlpk_work has quit [Quit: Leaving]
nikunj has quit [Quit: Page closed]
EverYoun_ has joined #ste||ar