--- Log opened Tue Feb 21 00:00:34 2017 | ||
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 00:33 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 00:33 | |
@wiking | CaBa, ENABLE_COLPACK should still work | 01:24 |
---|---|---|
@wiking | and as well you can have ENABLE_PROTOBUF | 01:24 |
@wiking | *use | 01:24 |
CaBa | wiking: well i just uninstalled both protobuf and colpack :P | 01:24 |
@wiking | anyhow | 01:25 |
@wiking | you can use those | 01:25 |
@wiking | only thing is | 01:25 |
@wiking | that those options are autogenerated | 01:25 |
CaBa | wiking: did you manage to use protobuf / colpack from homebrew with shogun? | 01:25 |
@wiking | mmm | 01:25 |
@wiking | lemme see what i have insalled | 01:26 |
@wiking | i have both installed | 01:26 |
@wiking | so i guess yes | 01:26 |
@wiking | i managed to compile | 01:26 |
CaBa | hmmm | 01:34 |
CaBa | strange | 01:34 |
CaBa | never worked for me | 01:34 |
CaBa | maybe you have other versions at /usr/lib? | 01:35 |
CaBa | anyways. are they important? :D | 01:35 |
CaBa | calling it a day :) good night guys | 01:39 |
@wiking | CaBa, mmm protobuf is up to you if you want to use it as a serialization format | 02:02 |
@wiking | colpack is used in GP stuff | 02:02 |
-!- lambday [31cf349d@gateway/web/freenode/ip.49.207.52.157] has joined #shogun | 03:47 | |
-!- mode/#shogun [+o lambday] by ChanServ | 03:47 | |
-!- kesslerfrost [~textual@49.44.51.223] has joined #shogun | 04:21 | |
-!- kesslerfrost [~textual@49.44.51.223] has quit [Quit: kesslerfrost] | 04:41 | |
-!- kesslerfrost [~textual@2405:204:10c:bcef:a5ba:77b9:b976:b69f] has joined #shogun | 04:44 | |
-!- kesslerfrost [~textual@2405:204:10c:bcef:a5ba:77b9:b976:b69f] has quit [Quit: kesslerfrost] | 05:13 | |
@sukey | Issue #3647 "Build fails" assigned to: lambday by lambday - https://github.com/shogun-toolbox/shogun/issues/3647 | 05:36 |
@wiking | HeikoS, ping me when you are around | 05:44 |
@sukey | Pull Request #3648 "[INCOMPLETE] fix travis and buildbot errors due to bigtest merge" opened by lambday - https://github.com/shogun-toolbox/shogun/pull/3648 | 05:49 |
@sukey | Pull Request #3635 "LinalgRefactor - Memory Transfer Mutex" synchronized by OXPHOS - https://github.com/shogun-toolbox/shogun/pull/3635 | 06:52 |
-!- lambday_ [c40f170a@gateway/web/freenode/ip.196.15.23.10] has joined #shogun | 06:55 | |
-!- mode/#shogun [+o lambday_] by ChanServ | 06:55 | |
@sukey | Pull Request #3641 "add tests for KNN and fix an error in KDTree solver" synchronized by MikeLing - https://github.com/shogun-toolbox/shogun/pull/3641 | 07:13 |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Ping timeout: 260 seconds] | 07:26 | |
@sukey | Issue #3644 "New Linalg library cannot compile with Eigen 3.3.x"- https://github.com/shogun-toolbox/shogun/issues/3644 | 07:34 |
@sukey | Pull Request #3641 "add tests for KNN and fix an error in KDTree solver" synchronized by MikeLing - https://github.com/shogun-toolbox/shogun/pull/3641 | 07:47 |
@sukey | Pull Request #3641 "add tests for KNN and fix an error in KDTree solver" synchronized by MikeLing - https://github.com/shogun-toolbox/shogun/pull/3641 | 09:26 |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 10:47 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 10:47 | |
@HeikoS | wiking: jojo | 10:48 |
@wiking | ok so cloud is ready | 10:49 |
@wiking | lemme know when u have 20 mins to see how it works | 10:49 |
@HeikoS | wiking: I have now | 10:49 |
@wiking | ok | 10:50 |
@wiking | google hangout? | 10:50 |
@wiking | butlemme make a coffee first | 10:50 |
@sukey | Wiki page: GSoC_2017_applications edited on shogun-toolbox/shogun by karlnapf | 10:50 |
@HeikoS | kk | 10:50 |
@HeikoS | same here then :) | 10:50 |
@HeikoS | give me 5 a few mins | 10:50 |
@HeikoS | we can also discuss tomorrow meting with gunnar and sfc email | 10:50 |
@HeikoS | i put the zepelin thing into applied projects | 10:50 |
@HeikoS | maybe somebody has a cool idea | 10:50 |
@wiking | k | 10:51 |
@wiking | cool | 10:51 |
@wiking | lambday ping? | 11:26 |
@wiking | ComputationManager.cpp | 11:26 |
@wiking | C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xlocale(341): warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc [C:\projects\shogun\build\src\shogun\libshogun.vcxproj] | 11:26 |
@wiking | C:\projects\shogun\src\shogun\statistical_testing\internals\ComputationManager.cpp(62): error C3016: 'i': index variable in OpenMP 'for' statement must have signed integral type [C:\projects\shogun\build\src\shogun\libshogun.vcxproj] | 11:26 |
@wiking | lambday lambday_ | 11:26 |
@wiking | the MSVC | 11:27 |
@wiking | compilation is really fucking broken | 11:27 |
CaBa | morning | 11:28 |
@lambday_ | wiking: yo | 11:28 |
@lambday_ | errr | 11:29 |
@wiking | did you rebase before merging this? | 11:29 |
@lambday_ | yeah I did | 11:29 |
@lambday_ | the error is in my code... which is not compatible with MSVC it seems.. will fix it' | 11:29 |
@lambday_ | wiking: btw how do I check Windows build status? you told me earlier but I totally forgot | 11:30 |
@wiking | man | 11:30 |
@wiking | but how the fuk is it possible | 11:30 |
@wiking | that you didn't see | 11:30 |
@wiking | the error? | 11:30 |
@wiking | the big red for the compilation? | 11:30 |
@wiking | it's there | 11:30 |
@wiking | part of travis | 11:30 |
@wiking | next to it | 11:30 |
@wiking | just click n the link | 11:30 |
@wiking | +for (size_t i=0; i<data_array.size(); ++i) | 11:34 |
@wiking | SIZE-T | 11:34 |
@wiking | since when we have size_t in shogun | 11:34 |
@wiking | lambday ? | 11:34 |
@lambday_ | wiking: data_array is std::vector, isn't it? | 11:34 |
@wiking | but fuck | 11:34 |
@wiking | we are not using size_t | 11:34 |
@wiking | ... | 11:34 |
@wiking | man | 11:34 |
@wiking | this code doesn't follow | 11:34 |
@wiking | any shogun internal variables | 11:34 |
@wiking | right? | 11:35 |
@wiking | i mean this code is find | 11:35 |
@wiking | *fine | 11:35 |
@wiking | if it's not part of shogun | 11:35 |
@lambday_ | wiking: well, these are internal parts, not open to any interfaces any way.. | 11:35 |
@wiking | but still | 11:35 |
@wiking | const index_t blocksize_at(size_t i) const; | 11:35 |
@wiking | everywhere | 11:36 |
@wiking | size_t | 11:36 |
@wiking | shall we start a feature branch | 11:36 |
@wiking | that fixes the this branch? | 11:36 |
@lambday_ | wiking: these were to make it compatible with std::vector.. all these things are called internally | 11:36 |
@wiking | because then others can help out | 11:36 |
@wiking | in working resolving the problem | 11:36 |
@lambday_ | wiking: let me get back to fixing these issues in a couple of hours.. if it feels like too much work, then maybe a new feature branch would be good | 11:37 |
@wiking | can you tell us | 11:39 |
@wiking | what ar eyou working on now | 11:39 |
@wiking | so we dont do double work | 11:39 |
@wiking | because HeikoS and me we can NOW work | 11:39 |
@lambday_ | wiking: at this moment I cannot work.. from my work laptop at office.. if you want to fix it, please feel free.. | 11:39 |
@lambday_ | wiking: will be back home in a couple of hours.. | 11:40 |
@wiking | k we'll starte a feature branch | 11:40 |
@wiking | and work on it | 11:40 |
@lambday_ | cool.. let me know | 11:40 |
@HeikoS | wiking, lambday ok let us not do the guarding for now, as we might require c+11 for the coming release (this week) | 11:46 |
@HeikoS | (so no work being spent right now on adding guards | 11:46 |
@HeikoS | ) | 11:46 |
@sukey | New branch feature/Cpp11 created on shogun-toolbox/shogun | 12:15 |
@sukey | New Commit "Merge pull request #3646 from karlnapf/feature/clone_refactor | 12:15 |
@sukey | pull cloning all parameterers out to a seperate method" to shogun-toolbox/shogun by vigsterkr: https://github.com/shogun-toolbox/shogun/commit/ce652852c504edfad450a68e8b664702fcbd0b9c | 12:15 |
@wiking | HeikoS, lambday ok so lets collect these c++11 related stuff into the feature/Cpp11 | 12:15 |
@wiking | branch | 12:15 |
@HeikoS | wiking: swig issue | 12:21 |
@wiking | yes | 12:21 |
@wiking | ? | 12:21 |
@HeikoS | swig2 will go? | 12:21 |
@wiking | yes | 12:21 |
@HeikoS | kk | 12:21 |
@HeikoS | lambday ^ | 12:21 |
@wiking | since it doesnt' support c++11 | 12:21 |
@HeikoS | good | 12:21 |
@sukey | Pull Request #3648 "[INCOMPLETE] fix travis and buildbot errors due to bigtest merge" closed by karlnapf - https://github.com/shogun-toolbox/shogun/pull/3648 | 12:24 |
@wiking | HeikoS, type this | 12:24 |
@wiking | into your console | 12:24 |
@wiking | ld.gold -version | 12:24 |
@HeikoS | wiking: and then? | 12:25 |
@wiking | command found | 12:25 |
@wiking | or you get a version? | 12:25 |
@HeikoS | GNU gold (GNU Binutils for Ubuntu 2.26.1) 1.11 | 12:25 |
@wiking | ok cool | 12:25 |
@wiking | so this case | 12:25 |
@wiking | linking the shogun-unit-test | 12:26 |
@wiking | should be a bit faster for you | 12:26 |
@wiking | than previously | 12:26 |
@wiking | ;) | 12:26 |
@HeikoS | since when=? | 12:26 |
@wiking | mmm | 12:26 |
@wiking | ~1 week | 12:26 |
@HeikoS | wiking: cool | 12:28 |
@HeikoS | ! | 12:28 |
-!- lambday_ [c40f170a@gateway/web/freenode/ip.196.15.23.10] has quit [Quit: Page closed] | 12:42 | |
-!- mikeling [uid89706@gateway/web/irccloud.com/x-askancxenzczzoti] has joined #shogun | 13:15 | |
mikeling | what should I do if I want to use string as label in KNN? like I want to use KNN to classify alphabet('A', 'B', 'C'....) | 13:17 |
mikeling | what kind of label I should use? | 13:18 |
@sukey | New Commit "Make c++11 features a hard requirement for shogun" to shogun-toolbox/shogun by vigsterkr: https://github.com/shogun-toolbox/shogun/commit/cc9e896d1c6c6f681e7d7d2fa21976f429a76cb2 | 13:18 |
@wiking | HeikoS ^ | 13:18 |
@HeikoS | mikeling: give every letter an integer | 13:19 |
mikeling | HeikoS: I see, thank you :) | 13:19 |
@HeikoS | mikeling: we have some notebook where KNN is used for digit classificaiton that is essentially the same | 13:20 |
@wiking | HeikoS, and now let's have the rest fixed | 13:21 |
@HeikoS | wiking: im in gdb | 13:21 |
@wiking | :> | 13:21 |
@wiking | HeikoS, ok sorry now i have to go back to finish up with the docker image | 13:25 |
@HeikoS | wiking: sure | 13:28 |
@HeikoS | wiking: im on reset_stream test failure with l | 13:28 |
@wiking | :> | 13:29 |
@lambday | HeikoS: check inactive branches in travis : feature/bigtest... | 13:29 |
@HeikoS | so there we go | 13:29 |
@HeikoS | line 749 of InputParser | 13:30 |
@HeikoS | on my machine bails | 13:31 |
@lambday | HeikoS: the bugfix PR I sent doesn't have anything to do with Cpp11... shall I keep this PR to develop then? | 13:35 |
@lambday | (once I fix some other issues) | 13:35 |
@HeikoS | lambday: you remove lines in there | 13:35 |
@HeikoS | lambday: oh the feature branch is for both cpp11 and fixingf | 13:35 |
@lambday | HeikoS: okay | 13:35 |
@HeikoS | lambday: so what does the PR do? | 13:36 |
@HeikoS | I dont see that? | 13:36 |
@HeikoS | I mean I get the includes | 13:36 |
@HeikoS | but the streaming stuff I dont get | 13:36 |
@HeikoS | lambday: ^ | 13:37 |
@lambday | HeikoS: (1) add #include <numeric> in a few unit tests that causes compilation fail in my gcc - these were required for std::iota (2) added a #ifdef check before I assert anything directly with ref_count().. this was causing a failure in buildbot.. | 13:37 |
@HeikoS | lambday: sure I get those as I said | 13:37 |
@HeikoS | so you can push that commit to the feature branch already | 13:38 |
@wiking | cherry pick those | 13:38 |
@wiking | easy | 13:38 |
@wiking | put it in the feature branch | 13:38 |
@lambday | HeikoS: couldn't work on the streaming stuff as nothing works locally anymore.. so as discussed, I just reverted back my changes to keep just viktor's patch there and see whether that fixes the issue... | 13:38 |
@HeikoS | lambday: but why revert the changes? | 13:39 |
@HeikoS | I guess you did them for a reason no? | 13:39 |
@HeikoS | as well as the unit test | 13:39 |
@HeikoS | it wasnt there before so I guess you added it after finding a bug? | 13:39 |
@HeikoS | and I mean the test has to pass, looking at it | 13:39 |
@HeikoS | lambday: resetting the stream after streaming a few data should be possible | 13:40 |
@lambday | HeikoS: yeah I added it after finding a bug.. but then a couple of things changed in that as viktor added std::thread there.. had a merge conflict as well.. hence was just trying to see whether his changes were enough to kill the bug.. | 13:41 |
@HeikoS | lambday: ok so lets not remove things, but fix the test | 13:41 |
@lambday | HeikoS: but since I couldn't test anything locally, I abused travis for that | 13:41 |
@lambday | hence the INCOMPLETE in the title :D | 13:41 |
@HeikoS | lambday: now youre on laptop? | 13:41 |
@lambday | HeikoS: yes | 13:41 |
@HeikoS | ok so I am just ddd-ing the test | 13:42 |
@HeikoS | it is the reset call that is the problem | 13:42 |
@wiking | can i ask an intimate question | 13:42 |
@wiking | how did this ever passed any CI in the feature branch? | 13:43 |
@lambday | HeikoS: yeah... resetting should be possible even when all the examples are streamed.. it should simply reset to the first example.. | 13:43 |
@lambday | otherwise dense feature based streaming will not work | 13:43 |
@HeikoS | lambday: yes exactly | 13:43 |
@HeikoS | is there any assumptions on reset_stream() call wiking? | 13:44 |
@wiking | what i dont even know what you are talking about? | 13:44 |
@wiking | :) | 13:44 |
@HeikoS | wiking: on dont worry ;) | 13:44 |
@HeikoS | lambday: open this | 13:45 |
@HeikoS | reset | 13:45 |
@HeikoS | StreamingDenseFeatures::reset_stream | 13:45 |
@HeikoS | line 65 | 13:45 |
@HeikoS | so there the parser is exited, and then restarted | 13:45 |
@HeikoS | and the exit thing fails | 13:45 |
@lambday | HeikoS: yeah | 13:45 |
@HeikoS | so why can't we exit it? | 13:46 |
@lambday | what does valgrind say? | 13:46 |
@HeikoS | parse_thread.reset() fails | 13:46 |
@lambday | that's the c++11 version | 13:47 |
@lambday | why would that fail | 13:47 |
@HeikoS | valgrind tells me that as well | 13:48 |
@HeikoS | Process terminating with default action of signal 6 (SIGABRT) | 13:48 |
@lambday | wait parse_thread is a stack variable? | 13:48 |
@lambday | wait | 13:48 |
@lambday | oh ok that's a shared_ptr thing | 13:48 |
@lambday | so maybe shared_ptr::reset won't do it | 13:49 |
@HeikoS | http://en.cppreference.com/w/cpp/memory/shared_ptr/reset | 13:49 |
@lambday | HeikoS: so what does it say? invalid delete or something? | 13:50 |
@HeikoS | lambday: are you reproducing this? | 13:50 |
@HeikoS | pasted above | 13:50 |
@lambday | HeikoS: can't... doesn't work here :( | 13:50 |
@HeikoS | lambday: what doesnt work? | 13:50 |
@lambday | HeikoS: nothing that requires threading | 13:50 |
@HeikoS | ?? | 13:50 |
@lambday | gotta look into it | 13:51 |
@HeikoS | thats c++11 | 13:51 |
@lambday | HeikoS: yeah I know.. trying it again now | 13:51 |
@lambday | HeikoS: internally all these std::thread uses pthread or winthread (or whatever) I presume.. | 13:52 |
@HeikoS | think it might be this: http://stackoverflow.com/questions/3413166/when-does-a-process-get-sigabrt-signal-6 | 13:52 |
@HeikoS | the thread example | 13:52 |
@lambday | HeikoS: detatch? | 13:53 |
@HeikoS | ==27265== by 0x1A963EE: std::thread::~thread() (thread:151) | 13:53 |
@HeikoS | part of valgrind stacktrace | 13:53 |
@HeikoS | so whats up with your config? | 13:53 |
@HeikoS | here we go: http://en.cppreference.com/w/cpp/thread/thread/~thread | 13:54 |
@HeikoS | thats where the std::terminate call comes from | 13:54 |
@lambday | HeikoS: so it's the dtor call that gives the error? | 13:55 |
@HeikoS | reproduce | 13:55 |
@HeikoS | the stack trace | 13:55 |
@HeikoS | but yes | 13:55 |
@HeikoS | I mean no | 13:55 |
@HeikoS | it is as I wrote above | 13:56 |
@HeikoS | so this seems some bug in the input parser thread handling | 13:56 |
@lambday | HeikoS: yeah | 13:56 |
@lambday | std::thread | 13:56 |
@lambday | if we had the streaming parser unit test there in develop, it would have been caught | 13:59 |
@wiking | but after the rebase? | 14:01 |
@wiking | i mean i wonder why it wasn't caught after you've guys rebased the feature branch | 14:01 |
@wiking | prior merging | 14:01 |
@lambday | wiking: yeah we were in a hurry cause this thing have been sitting there for a long time.. screwed up a few things.. but good that we'll fix it now as it became an issue | 14:02 |
@wiking | well | 14:02 |
@wiking | you know that | 14:02 |
@HeikoS | wiking: it seems pthread_cancel and ~thread are a bit different | 14:02 |
@wiking | this is sub standard | 14:02 |
@wiking | compared to what we ask from the students | 14:02 |
@wiking | :) | 14:02 |
@lambday | wiking: agreed.. no arguments there :( | 14:03 |
@HeikoS | so this thing is a bug | 14:03 |
@HeikoS | and previously, we just didnt have any test for it | 14:03 |
@HeikoS | so lets fix it and move on | 14:03 |
@lambday | debug mode takes forever to compile | 14:05 |
@lambday | argh | 14:05 |
@HeikoS | ccache | 14:05 |
@lambday | HeikoS: yeah but the cache is filled with release things :/ | 14:05 |
@lambday | it must be caching these things now | 14:05 |
@HeikoS | I never compile release locally | 14:05 |
@wiking | ccache -M 10G | 14:05 |
@wiking | that's the first thing you do | 14:06 |
@lambday | HeikoS: I do when I use perf to profile | 14:06 |
@wiking | and then you'll have both of the things cached | 14:06 |
@lambday | wiking: 10G is what I have... just upgraded the OS a week back so everything is brand new | 14:06 |
@wiking | copy cache | 14:06 |
@wiking | :) | 14:06 |
@HeikoS | wiking: only works if you dont compile feature branches ;) | 14:07 |
@HeikoS | I have 10G but sometimes have to wait still | 14:07 |
@HeikoS | but anyways | 14:07 |
@wiking | yeah well that's c++ for ya | 14:07 |
@wiking | :> | 14:07 |
@HeikoS | wiking: modules will help | 14:07 |
@wiking | yep should | 14:07 |
@HeikoS | annoying to have compile all of the eigen3 stuff for fixing thread issues | 14:08 |
@wiking | mmm | 14:08 |
@wiking | bu that should really not trigger | 14:08 |
@wiking | branch new compilation | 14:08 |
@wiking | i.e. ccache should catch it | 14:08 |
@wiking | btw ninja + ccache is really a speedup | 14:08 |
@HeikoS | lambday: hows the compile going? | 14:11 |
@HeikoS | lambday: keep in mind you can disable libshogun examples and meta examples | 14:11 |
-!- travis-ci [~travis-ci@ec2-54-163-161-247.compute-1.amazonaws.com] has joined #shogun | 14:12 | |
travis-ci | it's Viktor Gal's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/203782792 | 14:12 |
-!- travis-ci [~travis-ci@ec2-54-163-161-247.compute-1.amazonaws.com] has left #shogun [] | 14:12 | |
@wiking | let's see what failed :) | 14:13 |
@wiking | ok only 132 - unit-StreamingDenseFeaturesTest (OTHER_FAULT) | 14:13 |
@wiking | which i guess you guys are working on now | 14:14 |
@wiking | lemme see msvc | 14:14 |
@lambday | HeikoS: yeah compilation is done.. some error with linking.. checking now | 14:14 |
@HeikoS | wiking: yep | 14:14 |
@HeikoS | there is also the two disabled ones | 14:15 |
@wiking | lambday, so | 14:15 |
@wiking | #pragma omp parallel for | 14:15 |
@wiking | for (size_t i=0; i<blocks.size(); ++i) | 14:15 |
@wiking | :) | 14:15 |
@wiking | this is foobar | 14:15 |
@wiking | OpenMP 2.0 C/C++ API specification (pdf), section 2.4.1 | 14:15 |
@wiking | so please follow standards | 14:16 |
@lambday | wiking: lol you sound like a lawyer.. yeah my bad.. | 14:16 |
@wiking | lambday, yeah man | 14:16 |
@wiking | because i spend countless time | 14:16 |
@wiking | to get this in shape | 14:16 |
@wiking | and it's really fucking hard | 14:16 |
@wiking | to get support for an os | 14:17 |
@wiking | that you dont have | 14:17 |
@wiking | hence my frustration | 14:17 |
@lambday | wiking: yeah good that msvc caught it.. otherwise gcc/clang simply lets it go | 14:17 |
@lambday | and it's hard to check everything at standard beforehand unless a compiler complains.. but now we have 3 different compilers running | 14:18 |
@HeikoS | wiking: you have comments on this : http://stackoverflow.com/questions/4760687/cancelling-a-thread-using-pthread-cancel-good-practice-or-bad | 14:18 |
@wiking | mmm | 14:19 |
@wiking | why dont you use an atomic_flag? | 14:19 |
@wiking | now that you have full c++11 support | 14:19 |
@HeikoS | http://en.cppreference.com/w/cpp/thread/thread/~thread | 14:19 |
@HeikoS | in the InputParser patch you did | 14:19 |
@HeikoS | you call thread destructor | 14:19 |
@HeikoS | where previously there was pthread_cancel | 14:20 |
@wiking | mmm is it joinable? | 14:20 |
@HeikoS | must be | 14:20 |
@HeikoS | otherwise there wouldnt be an exception | 14:20 |
@HeikoS | so there is CInputParser<T>::end_parser() | 14:20 |
@HeikoS | I just wonder whether we can call that before the exit_parser() and then it is good | 14:21 |
@HeikoS | in the reset implementation | 14:21 |
@wiking | mm where the dtor? | 14:21 |
@wiking | ah you mean parse_thread.reset(); | 14:21 |
@HeikoS | yep | 14:21 |
@wiking | and what is the stacktrace? | 14:22 |
@HeikoS | ill paste | 14:22 |
@lambday | HeikoS: good lord.. works finally now.. can see the error | 14:23 |
@HeikoS | lambday: good | 14:23 |
@HeikoS | https://gist.github.com/karlnapf/6c6fea39c7c4b98fffe10383657eb8c7 | 14:24 |
@HeikoS | wiking, lambday ^ | 14:24 |
@lambday | HeikoS: lol man I see a very different error here | 14:25 |
@wiking | HeikoS, why valgrind? :) | 14:25 |
@HeikoS | wiking: was interested in something else | 14:26 |
@HeikoS | but dont worry have gdb open as well | 14:26 |
@lambday | HeikoS: https://gist.github.com/lambday/4dc6bc9e0b8355d61069c2e0fabf6349 | 14:26 |
@wiking | madonna | 14:27 |
@wiking | ../src/shogun/statistical_testing/internals/mmd/PermutationMMD.h:190:51: error: use of overloaded operator '[]' is ambiguous (with operand types 'SGVector<float64_t>' (aka 'SGVector<double>') and 'size_t' (aka 'unsigned long')) | 14:27 |
@wiking | wtf | 14:27 |
@wiking | how did this ever fucking compiled | 14:27 |
-!- goksinen_ [~goksinen@rrcs-50-75-193-138.nyc.biz.rr.com] has joined #shogun | 14:29 | |
@lambday | wiking: what's wrong with SG_SDEBUG("Kernel(%d): p_value=%f\n", k, result[k]); | 14:29 |
@wiking | see | 14:29 |
@wiking | that's the error | 14:29 |
@wiking | there | 14:29 |
@wiking | size_t | 14:29 |
@wiking | again | 14:29 |
@wiking | :) | 14:29 |
@HeikoS | wiking: you got any idea about this thread cancel thing? | 14:30 |
@wiking | HeikoS, yeah i wanted to help | 14:30 |
@wiking | but i cannot evne compile this code on my machine | 14:30 |
@wiking | see one sample of the error | 14:31 |
@wiking | but i have like 100+ errors | 14:31 |
@lambday | wiking: what should we do about these errors? size_t is there to iterate over std::vector otherwise it gives a ton of warnings.. but then cannot use it as index in SGVector.. so cast it every time? | 14:32 |
@wiking | https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/mmd/PermutationMMD.h#L97-L116 | 14:32 |
@wiking | i dont know what this does | 14:32 |
@wiking | but if ou have to go down | 14:32 |
@wiking | 4 levels of a for nestedness | 14:32 |
@wiking | there's clearly | 14:32 |
@wiking | something wrong with the design | 14:32 |
@wiking | (my 2 cents) | 14:32 |
-!- goksinen [~goksinen@rrcs-50-75-193-138.nyc.biz.rr.com] has quit [Ping timeout: 240 seconds] | 14:32 | |
@lambday | wiking: makes sense when the outer loop is usually 10-20.. | 14:33 |
@wiking | no | 14:33 |
@wiking | it does not | 14:33 |
@wiking | not because | 14:33 |
@wiking | it's functionally | 14:33 |
@wiking | maybe right | 14:33 |
@wiking | it's because this is untracable | 14:33 |
@wiking | by anybody else who wants to touch this code | 14:34 |
@wiking | if you have to have 4 for loops | 14:34 |
@wiking | nested | 14:34 |
@wiking | then you should cut this up | 14:34 |
@lambday | wiking: unwrap? | 14:34 |
@wiking | do you really think that anybody | 14:34 |
@wiking | who looks at this code | 14:34 |
@wiking | with have 0 commend | 14:34 |
@wiking | 0 comments | 14:34 |
@wiking | can do anything else | 14:35 |
@wiking | but | 14:35 |
@wiking | gdb | 14:35 |
@wiking | n | 14:35 |
@wiking | n | 14:35 |
@wiking | n | 14:35 |
@wiking | n | 14:35 |
@wiking | n | 14:35 |
@wiking | s | 14:35 |
@wiking | s | 14:35 |
@wiking | s | 14:35 |
@wiking | n | 14:35 |
@wiking | n | 14:35 |
@wiking | https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/mmd/PermutationMMD.h#L215 | 14:36 |
@lambday | wiking: well I have some optimization things planned for these.. this entire thing was done in 3 months.. so the priority was to get it merged first.. once it works, will do some modification | 14:36 |
@wiking | and what happens when null_samples.size() =0 ? | 14:36 |
@wiking | just go and do lalala? | 14:36 |
@wiking | i mean this is just 2 seconds | 14:37 |
@wiking | looking at this codebase | 14:37 |
@wiking | i'm sorry man | 14:37 |
@HeikoS | can we pls fix the thread bug? | 14:38 |
@wiking | HeikoS, i'm trying to compile the code : | 14:38 |
@wiking | :D | 14:38 |
@HeikoS | so here is a problem I have with the cmake build atm | 14:40 |
@HeikoS | I change InputParser.h | 14:40 |
@HeikoS | I make | 14:40 |
@HeikoS | and then the changes are not executed when running unit tests | 14:40 |
@HeikoS | gdb shows the right source but the execution is the unchanged file | 14:42 |
@HeikoS | sigh | 14:42 |
@HeikoS | wiking: removing the shogun-unit-test bin doesnt help | 14:44 |
@wiking | dunno | 14:45 |
@wiking | HeikoS, mmm it actually should just | 14:46 |
@wiking | relink | 14:46 |
@HeikoS | removing libshogun.so* also didnt help | 14:46 |
@HeikoS | just deleted build dir | 14:46 |
@wiking | mmm i dont think that's good solution :) | 14:48 |
@HeikoS | nope | 14:49 |
@HeikoS | not sure what is going on there | 14:50 |
@wiking | HeikoS, LIBSHOGUN_HEADERS | 14:50 |
@wiking | add_library(libshogun OBJECT ${LIBSHOGUN_SRC} ${CMAKE_CURRENT_BINARY_DIR}/lib/config.h) | 14:50 |
@wiking | add it there | 14:50 |
@HeikoS | file? | 14:50 |
@wiking | src/shogun/CMakeLists.txt | 14:50 |
@HeikoS | kk | 14:50 |
@wiking | line 33 | 14:50 |
@lambday | HeikoS: fixed the bug... turns out, adding a parse_thread->join(); before the parse_thread.reset() in the InputParser::exit_parser() does it for you :) | 14:51 |
@lambday | before calling dtor, threads must be joined or detatched | 14:52 |
@HeikoS | lambday: yeah was trying to do that as well but then realised I never executed the new code | 14:52 |
@HeikoS | I am not sure that is a solution | 14:52 |
@lambday | HeikoS: why | 14:52 |
@HeikoS | rather call end_parser() before exit_parser in the reset_stream method | 14:52 |
@lambday | HeikoS: from the stack overflow link you pasted: | 14:52 |
@lambday | There's another simple cause in case of c++. std::thread::~thread{ if((joinable ()) std::terminate (); } i.e. scope of thread ended but you forgot to call either thread::join(); or thread::detach(); | 14:52 |
@lambday | HeikoS: well, end parser does the join for you | 14:53 |
@lambday | so that is the solution | 14:53 |
@HeikoS | pls dont do it in InputParser.h | 14:54 |
@HeikoS | or if you do it, document it clearly | 14:54 |
@HeikoS | wiking: how should the line look like? | 14:54 |
@wiking | what link? | 14:55 |
@wiking | line | 14:55 |
@wiking | add that thing to it | 14:55 |
@wiking | ${LIBSHOGUN_HEADERS} | 14:55 |
@lambday | HeikoS: yeah I am changing it in Streaming things where this exit parser thing is called | 14:55 |
@HeikoS | the file is streaming/InputParser.h | 14:56 |
@HeikoS | wiking: FILE(GLOB_RECURSE LIBSHOGUN_HEADERS *.${EXT_SRC_HEADER}) | 14:59 |
@HeikoS | that should catch it | 14:59 |
@wiking | dont know what are you talking about exactly | 14:59 |
@wiking | told you | 14:59 |
@wiking | add ${LIBSHOGUN_HEADERS} to line 33 | 14:59 |
@wiking | ok so this whole story with size_t is going to be super funny | 15:00 |
@wiking | because do to that neither msvc | 15:00 |
@wiking | nor osx will work | 15:00 |
@wiking | and that is a lot of fucking code there | 15:00 |
@HeikoS | wiking: kk worked | 15:01 |
@wiking | man we were about 1 step | 15:01 |
@wiking | from releasing | 15:01 |
@wiking | .... | 15:01 |
@wiking | in fact only fucking octave was failing | 15:02 |
@sukey | Pull Request #3649 "Fixed the reset_stream bug caused by InputParser::exit_parser" opened by lambday - https://github.com/shogun-toolbox/shogun/pull/3649 | 15:02 |
@wiking | lambday, could you just put that | 15:03 |
@wiking | into the feature branch | 15:03 |
@wiking | please | 15:03 |
@lambday | HeikoS: sent a PR with just this fix.. will send another | 15:03 |
@sukey | Pull Request #3649 "Fixed the reset_stream bug caused by InputParser::exit_parser" closed by vigsterkr - https://github.com/shogun-toolbox/shogun/pull/3649 | 15:03 |
@wiking | no need for a pr | 15:03 |
@lambday | wiking: okay cool | 15:03 |
@wiking | just directly push it into the feature branch | 15:03 |
@wiking | feature branch + pr is again | 15:03 |
@wiking | foobar | 15:03 |
@sukey | New Commit "Fixed the reset_stream bug caused by InputParser::exit_parser | 15:03 |
@sukey | The method exit_parser calls the destructor of the std::thread | 15:03 |
@sukey | object (assuming C++11 is present). A thread join or detatch | 15:03 |
@lambday | done | 15:03 |
@sukey | must be performed before this. So, added a check before calling | 15:04 |
@sukey | exit_parser in StreamingDenseFeatures and StreamingVwFeatures | 15:04 |
@sukey | whether the parser is in running state. If it is, then added a | 15:04 |
@sukey | call to end_parser() before calling exit_parser(), which does | 15:04 |
@sukey | the thread join." to shogun-toolbox/shogun by lambday: https://github.com/shogun-toolbox/shogun/commit/abd674c74f3c1eb970de7121c01767ea5e7980fc | 15:04 |
@HeikoS | lambday: otherwise it is two travis runs | 15:05 |
@lambday | HeikoS: yeah I understand that.. wanted to keep a snapshot but I guess my commit message captures most of it | 15:05 |
@wiking | ? | 15:06 |
@wiking | edes jo istenem | 15:06 |
@HeikoS | ? | 15:06 |
@HeikoS | commit is there | 15:06 |
@wiking | looking at this where to start with | 15:07 |
@wiking | yeah man | 15:07 |
@wiking | you dont see | 15:07 |
@wiking | the heaps of errors | 15:07 |
@wiking | that is in front of me | 15:07 |
@wiking | i had osx fixed | 15:07 |
@wiking | :) | 15:07 |
@wiking | now it's like .... | 15:07 |
@wiking | lambday, for future reference http://wesmckinney.com/blog/avoid-unsigned-integers/ | 15:08 |
@HeikoS | gotta go, see you guys | 15:12 |
@lambday | HeikoS: see you | 15:13 |
@lambday | HeikoS: will merge other fixes to the develop branch | 15:13 |
@lambday | HeikoS: did you push anything? | 15:13 |
@HeikoS | lambday: other fixes? develop branch? | 15:13 |
@lambday | oops.. feature branch | 15:13 |
@HeikoS | ah yeah | 15:13 |
@HeikoS | you had the numeric things | 15:13 |
@HeikoS | and then size_t | 15:13 |
@lambday | wiking is working on it I guess | 15:13 |
@wiking | no | 15:13 |
@wiking | that's why too much of a code | 15:14 |
@wiking | i'm not touching that | 15:14 |
@wiking | auto t_7=m_sum_y*m_sum_xy*2/m_n_y/m_n_y/(m_n_y-1)/m_n_x; | 15:14 |
@lambday | wiking: alright I'll do it | 15:14 |
@wiking | things like this | 15:14 |
@wiking | you do realise | 15:14 |
@wiking | that z= 1/m_n_y | 15:14 |
@wiking | and then do *z | 15:14 |
@wiking | is much faster right? | 15:14 |
@lambday | wiking: most of the compiler optimizer does it already I guess | 15:14 |
@wiking | noup | 15:14 |
@wiking | it does not | 15:15 |
@wiking | auto t_3=m_sum_x*m_sum_xy*2/m_n_x/m_n_x/(m_n_x-1)/m_n_y; | 15:15 |
@wiking | :) | 15:15 |
@wiking | especially with beauties like this | 15:15 |
@wiking | you are asking for a / operand | 15:15 |
@wiking | not a * | 15:15 |
@lambday | wiking: yeah I trusted the optimzier to take care of this.. no worries.. will create the temporaries.. it's way faster | 15:15 |
@wiking | mm | 15:16 |
@wiking | this was way too early | 15:16 |
@wiking | to merge this | 15:16 |
@wiking | could have waited 1 more release | 15:16 |
@lambday | wiking: well, people have been asking for it for a long time.. apparently they couldn't switch to the feature branch properly.. so as more and more people start to use these things, we'll work on optimizations | 15:17 |
@wiking | it's not about optimisation | 15:17 |
@lambday | wiking: plus arthur's students may also use this thing | 15:17 |
@wiking | it's about portable code | 15:17 |
@wiking | that compiles | 15:17 |
@wiking | this is not jvm | 15:17 |
@wiking | nor python | 15:17 |
@sukey | New Commit "Re-enable the failing linear time mmd unit tests | 15:18 |
@wiking | i'm really pissed because i worked more than a month to get shogun into a releasable state | 15:18 |
@sukey | This reverts commit 1560b3b39e214be4cd066c6ca4005496dc9a3354." to shogun-toolbox/shogun by karlnapf: https://github.com/shogun-toolbox/shogun/commit/216060d95c72e10f703ac7f3a85f33a7e0c8c69b | 15:18 |
@lambday | well, we should have checked the msvc | 15:18 |
@wiking | much more than that | 15:18 |
@HeikoS | remember I merged | 15:18 |
@HeikoS | not lambday | 15:18 |
@wiking | i dont care who merged it | 15:19 |
@wiking | it's fucked | 15:19 |
@HeikoS | yep, lets fix it | 15:19 |
@wiking | and its a lot of hushus fixing | 15:19 |
@wiking | now | 15:19 |
@wiking | i mean man | 15:19 |
@wiking | do you get it that i cannot compile the code | 15:19 |
@wiking | locally | 15:19 |
@wiking | even if i want to fix other shit | 15:19 |
@wiking | i have to go back t-k | 15:19 |
@wiking | in the develop | 15:19 |
@wiking | to fix stuff | 15:19 |
@HeikoS | can you paste compile errors? I can help lambday | 15:20 |
@lambday | wiking: your gcc/clang doesn't compile this or vc++? | 15:20 |
@wiking | neither | 15:20 |
@wiking | HeikoS, already did | 15:21 |
@HeikoS | kk | 15:21 |
@wiking | http://pastebin.com/VbChRuha | 15:22 |
@lambday | wiking: cool thanks.. | 15:23 |
@wiking | this could be still fixed | 15:23 |
@lambday | will fix these | 15:23 |
@wiking | but | 15:23 |
@wiking | i mean defining | 15:23 |
@wiking | but the problem comes with size_t + omp | 15:23 |
@wiking | hence they should be fixed at once | 15:23 |
@lambday | wiking: looks like all of these errors are caused by size_t | 15:25 |
@wiking | yep | 15:25 |
@lambday | wiking: can I check it somewhere whether the vc++ thing compiles it or not? in the feature branch I mean | 15:26 |
@HeikoS | lambday: there is a badge | 15:26 |
@HeikoS | lambday: do you acutally re-allocate sizes of the vectors you are using? otherwise why not just use SGVector if they are fixed sizes? | 15:26 |
@lambday | HeikoS: yeah.. re-allocating | 15:27 |
@HeikoS | lambday: https://ci.appveyor.com/project/vigsterkr/shogun/history | 15:27 |
@lambday | HeikoS: cool thanks | 15:28 |
@HeikoS | lambday: where do they grow/shrink? | 15:28 |
@HeikoS | can you point me to the code? | 15:28 |
@lambday | HeikoS: let me check | 15:28 |
@HeikoS | PermutationMMD.h:226 | 15:29 |
@wiking | mmm | 15:29 |
@wiking | lambday, btw | 15:29 |
@wiking | using std::vector | 15:29 |
@wiking | and such | 15:29 |
@wiking | is a bit foobar | 15:29 |
@wiking | if you are not passing | 15:29 |
@wiking | shogun's allocator | 15:29 |
@wiking | right? :) | 15:30 |
@wiking | i mean just to be code correct here | 15:30 |
@lambday | wiking: no I haven't used shogun's allocator | 15:30 |
@HeikoS | all these calls are quite straight forward to do with SGVector I think, so maybe just change them to that? | 15:30 |
@wiking | yep that' what i mean | 15:30 |
@HeikoS | if there is just a few of these calls easiest | 15:30 |
@wiking | lambday, there's a good reason shogun has wrapped all the allocator's internally | 15:31 |
@wiking | nota bene | 15:31 |
@wiking | jemalloc | 15:31 |
@wiking | vs malloc of linux | 15:31 |
@lambday | HeikoS: what about the resize call? when calling the permutation thing over and over again.. | 15:32 |
@HeikoS | SGVector.h has resize_vector | 15:32 |
@HeikoS | you can make that a method of SGVector | 15:33 |
@HeikoS | uses realloc etc | 15:33 |
@HeikoS | with that, it is pretty minimal to get rid of the std::vector, just grepped for resize calls, there are not too many | 15:34 |
@lambday | HeikoS: yep.. just thought std::vector does it a lot efficiently.. but will have to benchmark that then.. | 15:34 |
@wiking | lambday, not at all | 15:34 |
@HeikoS | why? | 15:34 |
@HeikoS | realloc | 15:34 |
@HeikoS | what else is there to do? | 15:34 |
@wiking | lambday, especially if you cannot change the allocator of std::vector | 15:35 |
@wiking | i mean if you dont change it | 15:35 |
@HeikoS | The best way I think is to avoid resizing at all (especially in loops) | 15:35 |
@wiking | in that case SGVector could be much faster | 15:35 |
@HeikoS | but I think if you just resize once in the beginning, then it doesnt even matter | 15:35 |
@HeikoS | so thats a fix with few changes to the code | 15:36 |
@HeikoS | Ill be afk for an hour now | 15:36 |
@lambday | will benchmark it.. maybe use a custom allocator with std::vector and see.. | 15:38 |
@wiking | lambday, https://locklessinc.com/benchmarks_allocator.shtml | 15:38 |
@lambday | if SGVector is just as fast, then will use that | 15:38 |
@wiking | lambday, many people did it already | 15:38 |
@wiking | no need for t+1 memory allocator benchmarks | 15:38 |
@wiking | lambday, you are missing the point here | 15:39 |
@lambday | wiking: yeah I meant between SGvector and std::vector | 15:39 |
@wiking | the idea is shogun is | 15:39 |
@wiking | that your memory allocator backend | 15:39 |
@wiking | is changable | 15:39 |
@wiking | and not just the system's malloc | 15:39 |
@wiking | now you can plug std::vector to be using | 15:40 |
@wiking | the custom malloc | 15:40 |
@wiking | but that needs some extra work | 15:40 |
@lambday | wiking: yeah using shogun's SG_MALLOC in std::vector.. that's what I was thinking of doing | 15:40 |
@wiking | but again | 15:40 |
@wiking | i dont know what you think | 15:40 |
@wiking | what sorts of magic is in | 15:40 |
@wiking | stl's vector | 15:41 |
@wiking | regarding resize | 15:41 |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Ping timeout: 260 seconds] | 15:41 | |
@lambday | wiking: saw in some cppcon video I think.. or some article.. some guys said that their custom vector class is not as fast as stl.. so maybe best way to be sure is to check how we are doing in Shogun | 15:42 |
@wiking | mmm | 15:42 |
@wiking | you realise | 15:42 |
@wiking | that that depends | 15:42 |
@wiking | "some guys said that their custom vector class is not as fast as stl' | 15:42 |
@wiking | which stl implementation? | 15:42 |
@wiking | :) | 15:42 |
@lambday | wiking: haha yeah.. that's why I said.. gotta check.. the committee won't let it be slower in future at least | 15:45 |
@wiking | which committee? | 15:45 |
@lambday | c++ | 15:45 |
@lambday | stl | 15:45 |
@wiking | i mean there are a lot of stl implementations out there | 15:45 |
@wiking | and nobody has any control over it | 15:45 |
@wiking | maximum it's interface | 15:45 |
@lambday | gcc and clang guys | 15:45 |
@wiking | and? | 15:45 |
@wiking | you do realise | 15:46 |
@wiking | that there are millions of fork | 15:46 |
@wiking | of compilers | 15:46 |
@wiking | just from gcc itself | 15:46 |
@wiking | where the implementation is different | 15:46 |
@wiking | and not to talk about some other custom compilers | 15:46 |
@lambday | point is - things aren't getting slower.. | 15:46 |
@wiking | ? | 15:46 |
@wiking | how would you assure that? | 15:46 |
@wiking | i dont see how can you assure that some operation wouldn't get slower | 15:47 |
@lambday | hard to argue with that.. I cannot prove that things will never be slower.. | 15:48 |
@wiking | i mean sorry | 15:48 |
@wiking | but this is pretty much up to an implementaiton | 15:48 |
@wiking | things are slower and faster | 15:48 |
@wiking | the goal is to get things faster | 15:48 |
@wiking | but obviously | 15:48 |
@wiking | this has been many many times not the case | 15:48 |
@wiking | (see various notable stories of gcc | 15:48 |
@wiking | when 5.0 was way slower than 4.x branch | 15:48 |
@wiking | (in the produced code) | 15:48 |
@lambday | I am missing the point here.. as long as it's internal code and doesn't screw up swig, why shouldn't we use it, as long as it is faster NOW in 2-3 major compilers that we love and support? | 15:50 |
@lambday | I am not claiming that it is faster, but if it was | 15:51 |
@wiking | because | 15:51 |
@wiking | it's A) not following anything that has to do with shogun | 15:51 |
@wiking | which is fine | 15:51 |
@wiking | but why do we merge it? | 15:51 |
@wiking | b) it doesn't work :) | 15:51 |
@lambday | b) can be fixed, right? | 15:51 |
@wiking | dunno dont even wanna think about it to be honest | 15:51 |
@wiking | but | 15:52 |
@wiking | then please make sure | 15:52 |
@wiking | that the allocators | 15:52 |
@wiking | are actually overridable | 15:52 |
@wiking | i mean if it's about creating | 15:52 |
@wiking | 2 arrays | 15:52 |
@wiking | of size 10 | 15:52 |
@wiking | it's ok doesn't matter | 15:52 |
@wiking | but in this case | 15:52 |
@wiking | this seems like a lot of mumbo jumbo on the memory allocator backend | 15:53 |
@lambday | okay so for now I'll simply switch to SGVector for std::vector and SGMatrix for std::vector<std::vector>... | 15:53 |
@wiking | yeah i mean | 15:53 |
@wiking | std::vector<std::vector> | 15:54 |
@wiking | is | 15:54 |
@lambday | if later in my perf alloc/dealloc comes as hotspot, then I'll change | 15:54 |
@wiking | kiiindof | 15:54 |
@wiking | suspectable | 15:54 |
@wiking | that is going to be slower than sgmatrix | 15:54 |
@wiking | :) | 15:54 |
@lambday | it's contiguous :) .. | 15:55 |
@lambday | anyway dw I'll change these | 15:55 |
@lambday | using std::vector was anyway a premature optimization attempt | 15:56 |
@wiking | btw for codes like this | 15:57 |
@wiking | for (size_t k=0; k<kernel_mgr.num_kernels(); ++k) | 15:58 |
@wiking | { | 15:58 |
@wiking | auto kernel=kernel_mgr.kernel_at(k); | 15:58 |
@wiking | 15:58 | |
@wiking | you are obviously iterating through in order.... so if this is the usual/or most used case | 15:58 |
@wiking | and push_back | 16:00 |
@wiking | mmm so yeah | 16:00 |
@wiking | deque like struct woudl be maaaybe a better option | 16:00 |
@wiking | right? | 16:00 |
@lambday | wiking: maybe.. but the golden rule that I know is, use vector whenever possible.. least overhead.. push_back is not that bad if we call reserve first | 16:01 |
@wiking | ? | 16:01 |
@lambday | but yeah will surely check whether this needs modification | 16:01 |
@wiking | where have u read this golden rule? | 16:01 |
@wiking | least overhead? | 16:02 |
@wiking | :) | 16:02 |
@wiking | mmm interesting concepts | 16:02 |
@lambday | bjarne :) | 16:02 |
@lambday | cppcon 2014, 2015, 2016.. herb sutter | 16:02 |
@wiking | i mean if you use push_back for insertation | 16:02 |
@wiking | then i would not use a vector | 16:02 |
@wiking | why do you need the random access then? | 16:02 |
@wiking | anyhow | 16:03 |
@wiking | just a thought | 16:03 |
@lambday | true.. so v.reserve(some_size) saves a lot of time ... chandler carruth showed a benchmark on that | 16:03 |
@lambday | will perf it all dw :D | 16:03 |
@lambday | once I get this thing compiled and merged properly | 16:03 |
@sukey | Pull Request #3650 "Port DistanceMachine and Inference to use OpenMP" opened by abhinavrai44 - https://github.com/shogun-toolbox/shogun/pull/3650 | 16:28 |
-!- travis-ci [~travis-ci@ec2-54-163-161-247.compute-1.amazonaws.com] has joined #shogun | 16:44 | |
travis-ci | it's lambday's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/203812454 | 16:44 |
-!- travis-ci [~travis-ci@ec2-54-163-161-247.compute-1.amazonaws.com] has left #shogun [] | 16:44 | |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 16:52 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 16:52 | |
@HeikoS | lambday: jo | 16:52 |
@HeikoS | bcak | 16:52 |
@HeikoS | back | 16:52 |
-!- kesslerfrost [~textual@49.44.51.53] has joined #shogun | 17:02 | |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Ping timeout: 260 seconds] | 17:15 | |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 17:25 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 17:25 | |
-!- travis-ci [~travis-ci@ec2-54-221-60-16.compute-1.amazonaws.com] has joined #shogun | 17:29 | |
travis-ci | it's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/203817662 | 17:29 |
-!- travis-ci [~travis-ci@ec2-54-221-60-16.compute-1.amazonaws.com] has left #shogun [] | 17:29 | |
-!- kesslerfrost [~textual@49.44.51.53] has quit [Ping timeout: 260 seconds] | 17:32 | |
@sukey | Issue #1265 "An alternative to dropping the modelselection framework" closed by karlnapf - https://github.com/shogun-toolbox/shogun/issues/1265 | 17:52 |
@sukey | New Commit "removing permutation test for linear time MMD | 17:54 |
@sukey | It does not make sense to run this as there is the Gaussian approximation of the null distribution. Removing unit tests (were buggy), changing default behaviour, and throwing an error if used," to shogun-toolbox/shogun by karlnapf: https://github.com/shogun-toolbox/shogun/commit/6c73ef0aceb2dd1b3ae7c97feb803c667c53c6c5 | 17:54 |
-!- kesslerfrost [~textual@2405:204:81:c3:4cfa:62ef:18bd:e9d8] has joined #shogun | 18:38 | |
-!- mikeling [uid89706@gateway/web/irccloud.com/x-askancxenzczzoti] has quit [Quit: Connection closed for inactivity] | 18:39 | |
-!- kesslerfrost [~textual@2405:204:81:c3:4cfa:62ef:18bd:e9d8] has quit [Ping timeout: 240 seconds] | 18:45 | |
-!- travis-ci [~travis-ci@ec2-54-80-105-186.compute-1.amazonaws.com] has joined #shogun | 18:55 | |
travis-ci | it's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/203878212 | 18:55 |
-!- travis-ci [~travis-ci@ec2-54-80-105-186.compute-1.amazonaws.com] has left #shogun [] | 18:55 | |
CaBa | HeikoS: ping | 19:04 |
@HeikoS | CaBa: pong | 19:07 |
CaBa | HeikoS: never mind, i think i found my problem... | 19:28 |
CaBa | HeikoS: had some memory pain, my ::clone() impl from yesterday doesn't SG_REF the clone though... | 19:29 |
@HeikoS | thats imporatnt :) | 19:43 |
@HeikoS | btw you have mac right? | 19:43 |
@HeikoS | can you do me a fav? | 19:43 |
@HeikoS | CaBa: could you pull a feature branch and build it, then paste compile errors somewhere? | 19:44 |
CaBa | sure | 19:44 |
@sukey | New Commit "get rid of size_t ambiguity | 19:44 |
@sukey | Via replacing key quantities with index_t, and some hard casting. WIP" to shogun-toolbox/shogun by karlnapf: https://github.com/shogun-toolbox/shogun/commit/c7230c5a0919403bf5a48522d8089fe66275dca6 | 19:44 |
@HeikoS | CaBa: this one | 19:45 |
@HeikoS | feature/Cpp11 | 19:45 |
CaBa | HeikoS: https://gitlab.unique-internet.de/snippets/12 | 19:51 |
CaBa | HeikoS: this is clang though. no openmp. i'll hit a gcc build in a sec | 19:51 |
@sukey | New Commit "get rid of size_t ambiguity and openmp loop std violations | 19:52 |
@sukey | Via replacing key quantities with index_t, and some hard casting. WIP" to shogun-toolbox/shogun by karlnapf: https://github.com/shogun-toolbox/shogun/commit/25b469ca78d1227668d46b5c0e85c3f578aa6343 | 19:52 |
@HeikoS | CaBa: I cannot open this paste | 19:52 |
CaBa | oops | 19:52 |
@HeikoS | no clang is good | 19:52 |
@HeikoS | I just pushed again | 19:52 |
CaBa | HeikoS: now you can | 19:53 |
CaBa | HeikoS: should i pull and rebuild? | 19:53 |
@HeikoS | wait ill fix these things first and then | 19:53 |
@HeikoS | ok again pls :) | 19:54 |
@sukey | New Commit "get rid of size_t ambiguity and openmp loop std violations | 19:54 |
@sukey | Via replacing key quantities with index_t, and some hard casting." to shogun-toolbox/shogun by karlnapf: https://github.com/shogun-toolbox/shogun/commit/36c672eff0f199ff8efd1368eef74f7c0d5951e2 | 19:54 |
@HeikoS | CaBa: and? | 19:57 |
CaBa | building | 19:57 |
@HeikoS | CaBa: so no early fail? | 19:58 |
@HeikoS | phew :) | 19:58 |
CaBa | linking | 19:58 |
@HeikoS | ah so it compiled great | 19:58 |
CaBa | yep, did. | 19:58 |
@HeikoS | thanks! | 19:59 |
@HeikoS | im off then for today | 19:59 |
CaBa | HeikoS: np, schönen feierabend | 19:59 |
-!- travis-ci [~travis-ci@ec2-54-163-161-247.compute-1.amazonaws.com] has joined #shogun | 19:59 | |
travis-ci | it's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/203920978 | 19:59 |
-!- travis-ci [~travis-ci@ec2-54-163-161-247.compute-1.amazonaws.com] has left #shogun [] | 19:59 | |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Ping timeout: 260 seconds] | 20:18 | |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 20:24 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 20:24 | |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Ping timeout: 260 seconds] | 20:30 | |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 20:33 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 20:33 | |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Ping timeout: 260 seconds] | 20:43 | |
-!- travis-ci [~travis-ci@ec2-54-80-105-186.compute-1.amazonaws.com] has joined #shogun | 20:52 | |
travis-ci | it's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/203921557 | 20:52 |
-!- travis-ci [~travis-ci@ec2-54-80-105-186.compute-1.amazonaws.com] has left #shogun [] | 20:52 | |
-!- Saurabh7_ [Saurabh7@gateway/shell/panicbnc/x-hgvqtjoqeqsvjmky] has quit [Ping timeout: 255 seconds] | 21:38 | |
-!- Saurabh7_ [Saurabh7@gateway/shell/panicbnc/x-womzakxhpdtxgptp] has joined #shogun | 21:41 | |
@sukey | Issue #3651 "LibSVM train() error. (with BinaryLabels)" opened by mcavdar - https://github.com/shogun-toolbox/shogun/issues/3651 | 21:46 |
-!- lambday [31cf349d@gateway/web/freenode/ip.49.207.52.157] has quit [Ping timeout: 260 seconds] | 21:47 | |
@sukey | Issue #3651 "LibSVM train() error. (with BinaryLabels)"- https://github.com/shogun-toolbox/shogun/issues/3651 | 21:50 |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 22:17 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 22:17 | |
@sukey | Pull Request #3441 "Fix ROC evaluation to properly access binary labels" synchronized by lkuchenb - https://github.com/shogun-toolbox/shogun/pull/3441 | 22:51 |
@sukey | New Commit "use CMath::gcd rather than C++17 and std::function" to shogun-toolbox/shogun by karlnapf: https://github.com/shogun-toolbox/shogun/commit/ff0f8f771d8898eaf4840065fc988ffb7dba026d | 23:13 |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Ping timeout: 255 seconds] | 23:20 | |
@sukey | New Commit "Be consistent with the override marker | 23:27 |
@sukey | include missing numeric header | 23:27 |
@sukey | make the libshogun target depend on headers as well" to shogun-toolbox/shogun by vigsterkr: https://github.com/shogun-toolbox/shogun/commit/ed5f712d3ba1b2ca76fa53a1c87106bb99333d75 | 23:27 |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 23:36 | |
-!- mode/#shogun [+o HeikoS] by ChanServ | 23:36 | |
@HeikoS | wiking: jojo | 23:37 |
@wiking | ho | 23:37 |
@HeikoS | wiking: so travis was fine | 23:37 |
@HeikoS | and windows should be fine with my last push | 23:37 |
@HeikoS | I'll go to bed soon, see you for the meeting then | 23:39 |
@wiking | ok | 23:43 |
@wiking | when everything is green | 23:43 |
@wiking | i'll merge this | 23:43 |
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Ping timeout: 240 seconds] | 23:46 | |
--- Log closed Wed Feb 22 00:00:35 2017 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!