IRC logs of #shogun for Monday, 2018-01-08

--- Log opened Mon Jan 08 00:00:10 2018
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4073 opened by lisitsyn00:57
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/407300:57
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4068 assigned to: lisitsyn by lisitsyn01:09
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun11:23
-!- mode/#shogun [+o HeikoS] by ChanServ11:23
@HeikoSwiking: jojo11:58
@HeikoSlisitsyn: jo11:58
lisitsynhey11:59
lisitsynHeikoS:11:59
@HeikoSlisitsyn: so about that accuracy11:59
@HeikoSI think since all of the comparison are using CMath::fequals11:59
@HeikoSI guess I will make that method use the global variable11:59
lisitsynyeap11:59
@HeikoSand then i will use something like12:00
@HeikoSmax(std::numeric_limits::epsilon<real_t>, global_accuracy)12:00
@HeikoSand global accuracy will be 0 by default12:00
lisitsynand set in xml tests?12:01
@HeikoSyes12:01
lisitsyngood12:01
lisitsynHeikoS: I finally tracked down the segfault12:01
@HeikoSbecause it will be used at multiple places12:01
lisitsynit was funny12:01
@HeikoSlisitsyn: yeah I read your report12:01
lisitsynHeikoS: yeah I like the solution12:01
@HeikoSwell done12:01
lisitsyntwo pythons!12:01
lisitsyn:P12:01
@HeikoSlisitsyn: yes, that is almost always the case when things segfault :D12:01
@HeikoSanaconda rules12:01
lisitsynHeikoS: at my job we statically link everything12:02
@HeikoSlisitsyn: how to deal with floating point comparison for basic types12:02
@HeikoSlike a==b12:02
@HeikoSwith real_t a12:02
lisitsynHeikoS: uh12:03
@HeikoSI think we need to template that as well12:03
@HeikoScurrently, it actually uses == on floats12:03
@HeikoSwhich is bad12:03
@HeikoSshould use fequals12:03
@HeikoSI will fix that up first12:03
@HeikoSlet me see12:03
lisitsyndo you want to patch compare_impl?12:04
@HeikoSauto compare_impl(general, T& lhs, T& rhs) -> decltype(lhs == rhs)12:04
@HeikoSthis guy needs to be explicitly instantiated for floats12:04
lisitsynjust add one12:04
lisitsynwithout template12:04
lisitsynshould work12:04
@HeikoSin SGMatrix, there is a macro that is then instantiated with float32, 64, ezc12:05
lisitsynauto compare_impl(more_important, float, float) ..12:05
lisitsynlike that12:05
@HeikoSauto compare_impl(general, float64_t& lhs, float64_t& rhs) -> decltype(lhs == rhs)12:06
@HeikoS{12:06
@HeikoSSG_SDEBUG("Comparing using fequals(lhs, rhs).\n");12:06
@HeikoSreturn CMath::fequals(lhs, rhs, std::numeric_limits<float64_t>::epsilon());12:06
@HeikoS}12:06
@HeikoSdoorbell, back soon12:07
lisitsynHeikoS: don't need decltype12:07
lisitsynjust put bool there12:08
lisitsyndecltype is to try substitution12:08
@HeikoSlisitsyn: thx12:20
lisitsynHeikoS: seen the mail about mloss?12:34
@HeikoSseen but not read :)12:36
lisitsynHeikoS: deadline is 10 jan :D12:36
@HeikoSuh :D12:36
@HeikoSok will check today12:36
lisitsynHeikoS: ah and also we need a gsoc application12:41
lisitsynHeikoS: Deadline January 23, 2018 at 20:00 (MSK)12:42
@HeikoSgsoc is easy12:58
@HeikoSmloss not so much12:59
@HeikoSwill look into that later today12:59
@HeikoSis it even possible?12:59
@HeikoSdo we need sponsors etc before sending the application?12:59
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4073 synchronized by lisitsyn13:00
lisitsynHeikoS: you know better13:03
lisitsyn:)13:03
lisitsynno idea13:03
lisitsynit doesn't seem possible to me either13:04
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Ping timeout: 260 seconds]13:06
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun13:40
-!- mode/#shogun [+o HeikoS] by ChanServ13:40
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4073 synchronized by lisitsyn13:52
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Ping timeout: 240 seconds]13:58
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4074 karlnapf added label: "Cleanups"14:00
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4074 karlnapf added label: "development tasks"14:00
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4074 karlnapf added label: "good first issue"14:00
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4074 opened by karlnapf14:00
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun14:02
-!- mode/#shogun [+o HeikoS] by ChanServ14:02
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Client Quit]14:02
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4073 merged by lisitsyn14:18
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/ff8840ce0e0091d7619dacdf84819ea19872baf4 by lisitsyn14:18
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4068 closed by lisitsyn14:18
-!- braceletboy [uid256084@gateway/web/irccloud.com/x-drobdmhmzcxjlzio] has joined #shogun14:23
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun14:36
-!- mode/#shogun [+o HeikoS] by ChanServ14:36
@HeikoSlisitsyn: jo14:42
lisitsynHeikoS:14:42
@HeikoSquestion14:42
lisitsynanswer14:42
@HeikoShow do I make the compare use my new function?14:42
@HeikoSit always uses the == operator14:43
lisitsyntry more_important as a first argument14:43
lisitsyndid you use 'general'?14:43
@HeikoS#ifndef REAL_COMPARE_IMPL14:43
@HeikoS// element wise comparison via CMath::fequals and global comparison epsilon14:43
@HeikoS#define REAL_COMPARE_IMPL(real_t)\14:43
@HeikoSauto compare_impl(general, real_t& lhs, real_t& rhs) -> bool\14:43
@HeikoS{\14:43
@HeikoSSG_SDEBUG("Comparing using fequals<real_t>(lhs, rhs).\n");\14:43
@HeikoSfloat64_t eps = std::max(get_global_fequals_epsilon(),\14:43
@HeikoS(float64_t)std::numeric_limits<real_t>::epsilon());\14:43
@HeikoSreturn CMath::fequals(lhs, rhs, eps);\14:43
@HeikoS}14:43
@HeikoSREAL_COMPARE_IMPL(float32_t)14:43
@HeikoSREAL_COMPARE_IMPL(float64_t)14:43
@HeikoSREAL_COMPARE_IMPL(floatmax_t)14:43
@HeikoS#undef REAL_COMPARE_IMPL14:43
@HeikoS#endif // REAL_COMPARE_IMPL14:43
lisitsyntry more_important14:43
@HeikoSI have put this into a new any.cpp14:43
lisitsynfirst arg14:43
@HeikoS(cpp due to circular import of CMath problems)14:43
@HeikoStrying ....14:43
lisitsynuhm14:43
lisitsyncpp?14:43
lisitsynit should be visible in .h14:44
@HeikoSI cant import CMath in any14:44
lisitsynyou have to declare then14:44
@HeikoSinclude i mean14:44
@HeikoSforward declare you mean?14:44
@HeikoSlet me paste my any.h and any.cpp14:44
lisitsynyeah like declare it is available but implement in .cpp14:45
lisitsynjust the signature14:45
@HeikoShttps://pastebin.com/MUd37NGd14:45
@HeikoSah14:45
lisitsynotherwise it won't be caught up14:45
@HeikoSyou mean I need this line in any.h14:45
@HeikoSauto compare_impl(more_important, real_t& lhs, real_t& rhs) -> bool14:45
lisitsynyes14:45
@HeikoSre-compiling shogun  ....14:46
@HeikoSah wait14:46
@HeikoStemplated I guess14:46
lisitsynno, why?14:46
lisitsynHeikoS: you need like14:47
lisitsynbool compare_impl(more_important, float64_t& lhs, float64_t& rhs)14:47
lisitsynand so on14:47
lisitsynthis way it should be called I think14:47
@HeikoSyep templatated leads to compile error14:48
lisitsynHeikoS: if you want to seriously patch any I'd suggest compiling just a unit-test14:48
lisitsyntoo slow otherwise14:48
lisitsynI mean just run g++ Any_unittest.cpp shogun/lib/any.cpp until it works :)14:49
@HeikoSstill needs to recompile shogun14:49
@HeikoSah14:49
lisitsynmuch much faster14:49
lisitsynHeikoS: did it work?14:56
@HeikoSI am waiting for compile14:56
@HeikoSgave up on by hand14:56
@HeikoSthere are now shogun includes in any.h14:56
@HeikoSthat complicates things14:57
lisitsynHeikoS: any.h becomes a focal point of great power14:57
lisitsynlol14:57
@HeikoSindeed14:57
lisitsynthe force14:57
lisitsynHeikoS: I think we can fix that14:57
lisitsynonce any is settled14:57
-shogun-buildbot:#shogun- Build deb3 - interfaces #197 is complete: Failure [failed install (failure)] - http://buildbot.shogun-toolbox.org:8080/#builders/37/builds/19714:58
lisitsynwe can move all the stuff into cpp14:58
@HeikoSI think all we need is to have a build target without any algorithms14:58
@HeikoSyep that as well14:58
lisitsynand forward declare some specific Ts14:58
@HeikoSindeed14:58
@HeikoSpls make that an entrance task14:58
lisitsynno way14:58
lisitsynit's for me14:58
lisitsyna lot of things to know about the stuff14:59
lisitsynuh I broke octave14:59
@HeikoShaha14:59
@HeikoSwell14:59
@HeikoSDO IT :D14:59
lisitsynHeikoS: later, it is kind of cleanu15:00
@HeikoSoko15:01
@HeikoSok compiled, lets see15:02
@HeikoSworked15:03
@HeikoS[DEBUG] Comparing parameter GaussianKernel::log_width of type double.15:03
@HeikoS[DEBUG] Comparing using fequals<real_t>(lhs, rhs).15:03
@HeikoSSG_SDEBUG("Comparing using fequals<real_t>(lhs, rhs).\n");\15:04
lisitsynHeikoS: lala15:04
@HeikoShow do I make it substitute real_t with macro variable?15:04
lisitsynin string?15:04
@HeikoSyes15:04
lisitsyn## something15:04
@HeikoSgna one more test failing15:13
@HeikoSah15:13
@HeikoSI am an idiot15:13
@HeikoSlisitsyn: so I will make CMath::fequals consider the float thingi15:13
@HeikoSbecause otherwise SGMatrix code will need to be modified whihc we dont want I guess?15:13
@HeikoSi.e. where shall the logic sit to consider the global eps15:14
@HeikoSin SGMatrix::equals, or in CMath::fequals15:14
@HeikoSor just give SGMatrix a parameter that is invoked from any?15:15
@HeikoSit is all shit15:15
@HeikoSlisitsyn: ?15:16
lisitsynHeikoS: uhm15:17
@HeikoSlisitsyn: see my point?15:17
lisitsynnot yet15:17
@HeikoSdo I give SG*::equals a new parameter epsilon that is then passed to CMath?15:17
@HeikoSor do I modify CMath to check whether the epsilon was set to larger value15:18
lisitsynwhy not to put it directly to CMath?15:18
@HeikoSso CMath::fequals has a parameter epsilon15:18
@HeikoSand then it would use that, unless a global one has been set?15:18
lisitsynwhy not member field of CMath?15:18
@HeikoSthing is CMath::fequals already accepts an epsilon parameter15:19
lisitsyndo we use it?15:19
@HeikoSprobably only the old tests15:19
@HeikoSso I guess I can remove that and it uses the global variable instead15:19
lisitsynstate is bad but so is passing these epsilons around15:19
lisitsyn:D15:20
lisitsyndon't know what's worse15:20
@HeikoSindeed15:20
@HeikoSputting it in SG* is also bad15:20
@HeikoSI mean15:21
@HeikoSI could make the .equals take 3 parameters15:21
@HeikoSI think that works15:21
@HeikoSthen I can put the epsilon stuff into any15:21
@HeikoSas it is there already for the ==15:21
lisitsynI start to think we should isolate that hack in SGObject15:22
@HeikoSwhat do you mea??15:22
@HeikoSI think I will do this15:23
lisitsynyou can add if (parameter is float32) then do that15:23
lisitsynI mean instead of ==15:23
@HeikoSadd epsilon parameter to the ".equals" calls15:23
@HeikoSand get the global one in any15:23
lisitsynI think any should not do that stuff15:23
@HeikoSthat is consistent15:23
@HeikoSbut then it cannot use ==15:24
@HeikoSah15:24
@HeikoSgnaaaaaaa15:24
@HeikoSok I want to deal with this later, for now I will do a hack15:24
lisitsynI'd suggest doing it in sgobject::equals15:24
lisitsyn:)15:24
@HeikoSmmmh15:25
@HeikoSthat is how it was15:25
@HeikoSit was parameter for that method15:25
@HeikoSbut it needs to passed around deep down to the any if it comes from there15:25
lisitsynno, just check if it is float32, float64 or so15:25
lisitsynand don't do == but do something else15:25
lisitsynHeikoS: this is ugly but isolated15:26
@HeikoSok that is what I do15:26
lisitsynotherwise it gets spread around any, sgobject and math15:26
@HeikoSI think best might be: remove epsilon parameter from CMath::fequals15:26
@HeikoSand then make that a state15:26
@HeikoSand then any just calls fequals15:27
@HeikoSand SG* also just call fequals15:27
@HeikoSonly CMath knows about epsilon15:27
lisitsynyeah that's also kind of isolated15:27
@HeikoSlisitsyn: and since all of this is a hack anyways15:27
@HeikoSfor making the stupid srialization work15:28
@HeikoSI will just leave the parameter in CMath::fequals15:28
@HeikoSand take the max of passed epsilon and global epsilon15:28
lisitsynyeah lets drop it sooner15:28
@HeikoSyou fine with that?15:28
@HeikoSand then the global one should be dropped soon15:28
lisitsynyeah15:28
@HeikoSbut allows me to move on15:28
@HeikoSkk15:28
@HeikoSth15:28
@HeikoSc15:28
@HeikoSx15:28
@HeikoSlisitsyn: ah it gets worse15:30
@HeikoSthere is "tolerant" parameter15:30
lisitsynHeikoS: hah15:30
@HeikoSrequired for JSON15:31
lisitsynHeikoS: don't you want to add a switch for types in SGObject?15:32
lisitsynjust add a function compare which is == by default15:32
lisitsynbut if it is float32, float64, ... it calls something else15:32
lisitsynyou don't need to patch Any then15:33
lisitsynand don't need to patch CMath either15:33
@HeikoSlisitsyn: that is how it was15:33
@HeikoSbefore any15:33
@HeikoSswitch over type and then put epsilon in explicitly15:33
lisitsynnot really15:33
lisitsynI suggest switching over some specific types15:34
lisitsyn3 of them15:34
lisitsynotherwise ==15:34
@HeikoSremember this needs to be passed into SG* as well15:34
@HeikoSand then those guys call fequals as well15:34
@HeikoSso either need to put parameter in there, or patch CMath15:34
@HeikoSFor now,  I will try to make this  work15:35
@HeikoSwe can clean it later15:35
@HeikoSI just want to get that equals in15:35
@HeikoSthis is all corner case hacks so dont want to spend too much time on it15:35
lisitsynyeah sure15:35
@HeikoSI will do the same with this "tolerant" thing15:35
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Ping timeout: 252 seconds]16:19
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4069 synchronized by karlnapf16:19
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun16:22
-!- mode/#shogun [+o HeikoS] by ChanServ16:22
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Ping timeout: 264 seconds]16:29
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun16:38
-!- mode/#shogun [+o HeikoS] by ChanServ16:38
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Ping timeout: 260 seconds]16:50
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun17:00
-!- mode/#shogun [+o HeikoS] by ChanServ17:00
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4069 synchronized by karlnapf17:06
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4069 synchronized by karlnapf17:08
@HeikoSit keeps growing17:09
lisitsynHeikoS: not that bad so far17:23
@HeikoSI hope to merge with the last update17:23
lisitsynHeikoS: oh do you know how to login to slave1?17:23
@HeikoSno idea17:23
lisitsynwiking: amigo17:24
lisitsynnecesito login de slave117:24
@wikingsorry guys i'm ooo with flu17:25
@wikingbut slave1  = fatbot17:25
lisitsyngracias get better!17:25
@wikingeverybody has account to that17:25
lisitsynthat's what I need17:25
lisitsynneed sudo there17:29
lisitsynHeikoS: do you have sudo on fatbot?17:30
@HeikoSnot sure17:30
@HeikoSwiking: get well soon!17:30
@HeikoSlisitsyn: I keep on forgetting these things17:31
@HeikoSlet me try17:31
lisitsynI have no password for fatbot in my pass store17:31
@HeikoShow to log in even? :)17:31
lisitsynso no idea :D17:31
@HeikoSI am on 7nn.de17:31
lisitsynno I can log in17:31
lisitsynkey17:31
@HeikoSsure17:31
lisitsynbut I don't know pass17:31
@HeikoSI want to try17:31
@HeikoSso tell me how to log in :)17:31
lisitsynah17:31
lisitsynssh fatbot.shogun-toolbox.org ?17:32
lisitsyn:)17:32
@HeikoSnope17:33
@HeikoSdont know password17:33
lisitsynok lets fight viktor's flu for now17:34
lisitsyn:P17:34
@HeikoShehe17:35
@HeikoSha17:36
@HeikoSone build green17:36
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Ping timeout: 252 seconds]17:48
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4069 synchronized by karlnapf17:58
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun17:59
-!- mode/#shogun [+o HeikoS] by ChanServ17:59
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4069 synchronized by karlnapf18:53
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Quit: Leaving.]19:00
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun19:05
-!- mode/#shogun [+o HeikoS] by ChanServ19:05
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has quit [Ping timeout: 255 seconds]19:11
-!- witness [uid10044@gateway/web/irccloud.com/x-mcxkdftraobeqifu] has joined #shogun20:34
-!- braceletboy [uid256084@gateway/web/irccloud.com/x-drobdmhmzcxjlzio] has quit [Quit: Connection closed for inactivity]21:22
-!- iglesias [~iglesias@f119189.upc-f.chello.nl] has joined #shogun22:35
-!- HeikoS [~heiko@host213-122-246-7.range213-122.btcentralplus.com] has joined #shogun23:23
-!- mode/#shogun [+o HeikoS] by ChanServ23:23
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4069 synchronized by karlnapf23:24
lisitsynHeikoS: yuge!23:29
@HeikoSlisitsyn: ?23:29
@HeikoSlisitsyn: windows fails mysterioursly23:30
@HeikoSbut I gotta have dinner now23:30
lisitsynreally/23:30
lisitsynlets see23:30
lisitsynoh23:30
lisitsynsparse vector something23:31
--- Log closed Tue Jan 09 00:00:12 2018

Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!