| --- Log opened Mon Mar 19 00:00:47 2018 | ||
| -!- hqsklv1 [~vtxutqcu@47.254.40.225] has joined #shogun | 00:10 | |
| -!- hqsklv1 [~vtxutqcu@47.254.40.225] has quit [Client Quit] | 00:10 | |
| -!- albert_ [dd0628c2@gateway/web/freenode/ip.221.6.40.194] has joined #shogun | 02:25 | |
| -!- albert_ [dd0628c2@gateway/web/freenode/ip.221.6.40.194] has quit [Client Quit] | 02:25 | |
| -!- Farouk [81617d01@gateway/web/freenode/ip.129.97.125.1] has joined #shogun | 04:37 | |
| -!- Farouk [81617d01@gateway/web/freenode/ip.129.97.125.1] has quit [Client Quit] | 04:40 | |
| @sukey | [https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4196 synchronized by syashakash | 06:25 | 
|---|---|---|
| -!- travis-ci [~travis-ci@ec2-54-196-127-238.compute-1.amazonaws.com] has joined #shogun | 06:45 | |
| travis-ci | it's syashakash's turn to pay the next round of drinks for the massacre he caused in syashakash/shogun: https://travis-ci.org/syashakash/shogun/builds/355219480 | 06:45 | 
| -!- travis-ci [~travis-ci@ec2-54-196-127-238.compute-1.amazonaws.com] has left #shogun [] | 06:45 | |
| -!- travis-ci [~travis-ci@ec2-54-224-149-62.compute-1.amazonaws.com] has joined #shogun | 07:26 | |
| travis-ci | it's syashakash's turn to pay the next round of drinks for the massacre he caused in syashakash/shogun: https://travis-ci.org/syashakash/shogun/builds/355219480 | 07:26 | 
| -!- travis-ci [~travis-ci@ec2-54-224-149-62.compute-1.amazonaws.com] has left #shogun [] | 07:26 | |
| @sukey | [https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4201 closed by vigsterkr | 09:39 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4210 vigsterkr added label: "good first issue" | 10:02 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4210 vigsterkr added label: "BUG" | 10:02 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/4210 opened by vigsterkr | 10:02 | 
| -!- travis-ci [~travis-ci@ec2-54-224-149-62.compute-1.amazonaws.com] has joined #shogun | 10:28 | |
| travis-ci | it's Giovanni De Toni'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/353056047 | 10:28 | 
| -!- travis-ci [~travis-ci@ec2-54-224-149-62.compute-1.amazonaws.com] has left #shogun [] | 10:28 | |
| -!- wuwei [~wuwei@202.120.19.120] has joined #shogun | 10:48 | |
| wuwei | hi wiking, i'm not very clear about how untemplated features work | 10:50 | 
| wuwei | currently we can have a CFeatures *, and dynamic cast to sub-type in algorithm implementations | 10:50 | 
| wuwei | how are they different | 10:51 | 
| @wiking | ah | 10:52 | 
| @wiking | untemplated features? | 10:53 | 
| @wiking | i'm not so sure what are you referring to... | 10:53 | 
| @wiking | ? | 10:53 | 
| wuwei | "We would like to move towards an un-templated features type, and leave it to algorithms to check types at runtime (is only done once by the algorithm)." | 10:53 | 
| wuwei | found this in wiki of gsoc task | 10:53 | 
| wuwei | https://github.com/shogun-toolbox/shogun/wiki/GSoC_2018_project_detox | 10:53 | 
| @wiking | aaaah | 10:53 | 
| @wiking | yeah that's actually more about SGMatrix and Vecgor | 10:54 | 
| @wiking | in the first place | 10:54 | 
| @wiking | not features | 10:54 | 
| @wiking | but as well features | 10:54 | 
| wuwei | oh i see | 10:54 | 
| wuwei | i saw the switch-based prototype | 10:55 | 
| @wiking | yeah so the problem is that exactly | 10:55 | 
| @wiking | as soon as we create | 10:55 | 
| @wiking | an inteface | 10:55 | 
| @wiking | say for Matrix | 10:55 | 
| @wiking | that is type-less | 10:55 | 
| @wiking | but the same is true for DenseFeatures | 10:55 | 
| @wiking | or SparseFeatures | 10:56 | 
| @wiking | as both are type templated | 10:56 | 
| @wiking | so in that case we would like to write the models | 10:56 | 
| @wiking | typeless | 10:56 | 
| @wiking | if possible | 10:56 | 
| @wiking | but for that it's required that the linalg:: is for examples typeless | 10:56 | 
| @wiking | but if we go with the vanilla implementation of that that means every time you call linalg:: you'll have to do a big switch(TYPE) | 10:56 | 
| @wiking | right? | 10:57 | 
| wuwei | yeah | 10:57 | 
| @wiking | now this can be optimized, if we use for exxample lazy evaluation | 10:57 | 
| wuwei | that would be very costly | 10:57 | 
| @wiking | where you say | 10:57 | 
| @wiking | opeator(operator(operator(x))) | 10:57 | 
| @wiking | but actually ti doesn't run the toperation | 10:57 | 
| @wiking | *operation | 10:57 | 
| @wiking | just simply registers it on a stack :) | 10:57 | 
| @wiking | and once you call .execute() | 10:58 | 
| @wiking | or whatever | 10:58 | 
| @wiking | then you actually run the whole algorithm | 10:58 | 
| @wiking | now here you can do then a trick that find out once the type | 10:58 | 
| @wiking | and then just use that information and keep propagating it :) | 10:58 | 
| wuwei | yeah, we can use sth like exp template, but unfortunately we dont have that right now | 10:58 | 
| wuwei | it could require huge work, i'm not sure i can finish it in this gsoc | 11:00 | 
| @wiking | :) | 11:05 | 
| @wiking | yeah i mean | 11:05 | 
| @wiking | that's another story | 11:05 | 
| @wiking | :) | 11:05 | 
| @wiking | we can dedicate couple of weeks to that | 11:09 | 
| @wiking | but having the iterators cleaned up | 11:09 | 
| @wiking | the whole io system | 11:09 | 
| @wiking | is more essential | 11:09 | 
| @wiking | but not really :) | 11:09 | 
| @wiking | we really need views | 11:09 | 
| @wiking | what we can do is we can borrow some things from other places | 11:10 | 
| @wiking | for example the exp template | 11:10 | 
| wuwei | i know there are some libraries that use exp template for lazy-evaluation, like eigen, mshadow | 11:13 | 
| wuwei | we can borrow the design | 11:14 | 
| wuwei | but i think we will need to change a lot of things | 11:14 | 
| wuwei | could u suggest how to get started | 11:14 | 
| @wiking | which part ? :) | 11:17 | 
| @wiking | mmmm | 11:17 | 
| @wiking | i mean i would first look into | 11:18 | 
| @wiking | sgmatrix/vector | 11:18 | 
| @wiking | i mean keep those as they are really used in toooo many places | 11:18 | 
| @wiking | but having introduced a new Matrix Vector class | 11:18 | 
| @wiking | that are typeless wrappers around barebone arrays | 11:19 | 
| @wiking | like double* | 11:19 | 
| @wiking | and after that we could add another layer over linalg:: | 11:19 | 
| @wiking | where it accepts only Vector and Matrix | 11:19 | 
| wuwei | yeah | 11:19 | 
| @wiking | and that thing is using lazy eval | 11:19 | 
| @wiking | having this prototype would be good to have | 11:20 | 
| @wiking | i mean maybe this is the best where we could start | 11:20 | 
| @wiking | as this is totally indepemndent | 11:20 | 
| @wiking | of the whole codebase of shogun | 11:20 | 
| wuwei | i see | 11:20 | 
| @wiking | as if you start refactoring SGVector or SGMatrix | 11:20 | 
| @wiking | it'll just pull in a lot of pain | 11:21 | 
| @wiking | because we use those in typemapping to swig interfaces | 11:21 | 
| @wiking | etc | 11:21 | 
| @wiking | so for the time being i think the best approach is to grow something | 11:21 | 
| @wiking | that is totally independent | 11:21 | 
| @wiking | of what we have atm | 11:21 | 
| @wiking | that they you are not blocked by being able to backward compatible | 11:21 | 
| @wiking | :) | 11:21 | 
| @wiking | yeah as lazy eval goes | 11:22 | 
| @wiking | there are many examples: eigen, stan, xtensor etc | 11:22 | 
| wuwei | so i can firstly come up with a design of lazy eval ? | 11:22 | 
| @wiking | yeah say we have a Matrix and a Vector class | 11:22 | 
| @wiking | that hides the type | 11:22 | 
| @wiking | and we wanna do lazy-linalg over it | 11:23 | 
| @wiking | without that crazy story of | 11:23 | 
| @wiking | switch(getType) | 11:23 | 
| @wiking | on every operation | 11:23 | 
| @wiking | so say we have a GLM | 11:23 | 
| @wiking | where you have | 11:23 | 
| @wiking | Vector weight; | 11:24 | 
| @wiking | Scalar bias; | 11:24 | 
| @wiking | and you get a Matrix | 11:24 | 
| @wiking | that is actually the examples you wanna 'score' | 11:24 | 
| @wiking | what you need is [dot(e,weight)+bias for e in matrix] | 11:25 | 
| @wiking | right? | 11:25 | 
| wuwei | yeah | 11:25 | 
| @wiking | so having this simple case | 11:25 | 
| @wiking | implemented as lazy-eval | 11:25 | 
| @wiking | would be a good start | 11:25 | 
| wuwei | we create exp type, and need a eval engine | 11:25 | 
| wuwei | that's cool | 11:26 | 
| @wiking | and as said | 11:26 | 
| @wiking | dont try to refactor the code yet | 11:26 | 
| @wiking | within shogun as that'll take a lot of your attention | 11:26 | 
| @wiking | from parts that are not important atm | 11:26 | 
| @wiking | so use your own structures | 11:26 | 
| @wiking | and once we have that working | 11:26 | 
| @wiking | we can look into how we would do the refactoring | 11:27 | 
| wuwei | i see | 11:27 | 
| -!- jinquan [dd0628c2@gateway/web/freenode/ip.221.6.40.194] has joined #shogun | 11:27 | |
| wuwei | :) | 11:27 | 
| @wiking | wuwei, i mean for the time being | 11:27 | 
| @wiking | you can even just do a simple | 11:27 | 
| @wiking | a*b+c kind of lazy eval | 11:27 | 
| @wiking | without the dot product | 11:27 | 
| @wiking | it doesn't really matter | 11:27 | 
| @wiking | just have 2+ operations | 11:27 | 
| @wiking | over the same Matrix or Vector | 11:28 | 
| @wiking | where you need to play with the types as well | 11:28 | 
| wuwei | should i take care of underlying premitive type now | 11:29 | 
| @wiking | yeah i mean | 11:30 | 
| @wiking | the story is really that we wanna be able to have this prototype demonstrate | 11:30 | 
| @wiking | that we can do this | 11:30 | 
| @wiking | without actually doing that switch in case of every oepration call | 11:30 | 
| @wiking | :) | 11:30 | 
| @wiking | i mean for the type being its enough | 11:30 | 
| @wiking | if you introduce like | 11:30 | 
| @wiking | float64 and int64 | 11:31 | 
| @wiking | lisitsyn, ping? | 11:37 | 
| lisitsyn | hey | 11:37 | 
| @wiking | ok so question | 11:37 | 
| @wiking | https://github.com/apache/arrow/blob/master/cpp/src/arrow/compute/kernel.h#L44 | 11:38 | 
| @wiking | there's no way i can inherit from this | 11:38 | 
| @wiking | right? :) | 11:38 | 
| -!- jinquan [dd0628c2@gateway/web/freenode/ip.221.6.40.194] has quit [Ping timeout: 260 seconds] | 11:55 | |
| lisitsyn | wiking: inherit from scalar? why? | 12:36 | 
| @wiking | error: no matching constructor for initialization of '::arrow::compute::Scalar' | 12:36 | 
| @wiking | ::arrow::compute::Scalar(), | 12:36 | 
| @wiking | ^ | 12:36 | 
| lisitsyn | uhm interesting | 12:37 | 
| lisitsyn | wiking: it looks like scalar is always used in a ptr | 12:38 | 
| -!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has joined #shogun | 12:40 | |
| -!- mode/#shogun [+o HeikoS] by ChanServ | 12:40 | |
| @wiking | lisitsyn, i mean my problem is rather that i'm trying to inherit from it so that i can have a scalar :) | 12:41 | 
| -!- Jinquan [dd0628c2@gateway/web/freenode/ip.221.6.40.194] has joined #shogun | 12:48 | |
| @HeikoS | lisitsyn: jo! | 13:29 | 
| @HeikoS | wiking: jojo | 13:30 | 
| @HeikoS | wiking: I guess we need to split the build into parts | 13:55 | 
| @wiking | ? | 13:55 | 
| @HeikoS | and then distribute them to different builds | 13:55 | 
| @wiking | how do you envision that w/o actually having the plugin arch? | 13:56 | 
| @HeikoS | hacks | 13:56 | 
| @HeikoS | it is not a long term solution | 13:56 | 
| @wiking | then just dont do it | 13:56 | 
| @wiking | if it's not a long term solution | 13:56 | 
| @wiking | and a hack | 13:56 | 
| @HeikoS | how shall we get the CI green then? | 13:56 | 
| @wiking | bit tired of these shitty hacks | 13:56 | 
| @wiking | well | 13:57 | 
| @wiking | you could still | 13:57 | 
| @wiking | try to change -jNUMJOBS | 13:57 | 
| @wiking | as i've tried playing with it | 13:57 | 
| @wiking | and that should help | 13:57 | 
| @wiking | maybe atm its too high | 13:57 | 
| @wiking | you can actually use a dummy branch for that | 13:57 | 
| @wiking | where you just change a line in any or sgobject.h | 13:57 | 
| @wiking | so that you invalidate the whole ccache | 13:57 | 
| @wiking | i've consolidated the scripts | 13:58 | 
| @HeikoS | or we delete lots of code :D | 13:58 | 
| @HeikoS | that might be more fun haha | 13:58 | 
| @wiking | well we've tried that | 13:58 | 
| @wiking | doesn't really work | 13:58 | 
| @wiking | all the ci scripts are now in scripts/ | 13:59 | 
| @wiking | and just simple bash scripts | 13:59 | 
| @wiking | should be easy to patch by anybody | 13:59 | 
| @wiking | btw | 13:59 | 
| @wiking | https://travis-ci.org/shogun-toolbox/shogun | 13:59 | 
| @wiking | as you can see it's not impossible | 13:59 | 
| @wiking | to get it work | 13:59 | 
| @HeikoS | yeah | 14:00 | 
| @HeikoS | cache magic | 14:00 | 
| @wiking | well | 14:00 | 
| @wiking | cache is not helping you | 14:00 | 
| @HeikoS | but changing the .h files ... | 14:00 | 
| @wiking | in the first run | 14:00 | 
| @wiking | but again | 14:00 | 
| @wiking | it's possible to get it pass | 14:00 | 
| @wiking | many times it happened to me | 14:00 | 
| @wiking | but still it's just way too long | 14:00 | 
| @wiking | (see appveyor | 14:00 | 
| @wiking | https://travis-ci.org/shogun-toolbox/shogun/jobs/353056051 | 14:01 | 
| @HeikoS | I am not sure I follow | 14:01 | 
| @wiking | btw here it'd pass without the libshogun examples | 14:01 | 
| @HeikoS | I mean I get playing with the num jobs | 14:01 | 
| @wiking | same here | 14:01 | 
| @wiking | https://travis-ci.org/shogun-toolbox/shogun/jobs/353056049 | 14:01 | 
| @wiking | so i'm not so sure | 14:01 | 
| @wiking | why are you saying that actually removing libshogun wouldn't help | 14:02 | 
| @wiking | but again | 14:02 | 
| @wiking | as said | 14:02 | 
| @wiking | its worth to do the SGObject.h add an extra line | 14:02 | 
| @wiking | and simple branch | 14:02 | 
| @wiking | but as a first run | 14:02 | 
| @wiking | removing libshogun from all target | 14:02 | 
| @wiking | and from ctest | 14:02 | 
| @wiking | could essentially fix the problem in develop | 14:02 | 
| @HeikoS | https://ci.appveyor.com/project/vigsterkr/shogun/build/2135#L11254 | 14:02 | 
| @HeikoS | because of this | 14:02 | 
| @wiking | yeah but that's a different story | 14:03 | 
| @wiking | there's many things you can play there | 14:03 | 
| @wiking | and anyways | 14:03 | 
| @wiking | appveyor passes mostly | 14:03 | 
| @wiking | so i wouldn't draw conclusions form that | 14:03 | 
| @wiking | since appveyor actually | 14:03 | 
| @wiking | has +15 mins | 14:03 | 
| @wiking | on travis jobs | 14:03 | 
| @wiking | or at least 10 | 14:03 | 
| @wiking | travis kills a job after 50mins | 14:03 | 
| @wiking | appveyor does it in 60 | 14:04 | 
| @wiking | just try to drop libshogun from tests and all target | 14:04 | 
| @HeikoS | yeah Ill try that as a first thing | 14:04 | 
| @wiking | add_executable | 14:06 | 
| @wiking | EXCLUDE_FROM_ALL | 14:06 | 
| @wiking | done | 14:06 | 
| @wiking | ttyl | 14:06 | 
| @HeikoS | TRAVIS_DISABLE_LIBSHOGUN_TESTS | 14:07 | 
| @HeikoS | is that guy still used? I could just turn it on by default for a test | 14:07 | 
| @wiking | HeikoS, remove that | 14:08 | 
| @wiking | that's bs anyways | 14:08 | 
| @wiking | if you do this | 14:08 | 
| @wiking | HeikoS, plz avoid hacks in this case | 14:08 | 
| @HeikoS | I havent added it | 14:08 | 
| @wiking | what i mean is | 14:08 | 
| @wiking | drop it | 14:08 | 
| @wiking | if you do this | 14:09 | 
| @HeikoS | wiking: you ok with me killing all the libshogun tests/examples? | 14:12 | 
| -!- wuwei [~wuwei@202.120.19.120] has left #shogun [] | 14:17 | |
| @wiking | HeikoS, not kill just remove it from the ALL target | 14:32 | 
| -!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has quit [Remote host closed the connection] | 15:35 | |
| -!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has joined #shogun | 15:36 | |
| -!- mode/#shogun [+o HeikoS] by ChanServ | 15:36 | |
| @sukey | [https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/b01dd0da1fbb709e907ac50be7499529385e7864 by karlnapf | 15:40 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] New branch feature/travis_time created | 15:40 | 
| @HeikoS | wiking: this you had in mind? | 15:40 | 
| @wiking | almost | 15:41 | 
| @wiking | you need to drop them from ctest | 15:41 | 
| @wiking | https://github.com/shogun-toolbox/shogun/blob/b01dd0da1fbb709e907ac50be7499529385e7864/cmake/ShogunUtils.cmake#L116 | 15:42 | 
| @wiking | else by default ctest will fail | 15:42 | 
| @wiking | as the binaries arent compiled | 15:42 | 
| @HeikoS | ic thanks | 15:43 | 
| @HeikoS | WARNING: Target "minimal" has EXCLUDE_FROM_ALL set and will not be built by default but an install rule has been provided for it. CMake does not define behavior for this case. | 15:44 | 
| @HeikoS | there is also this guy | 15:44 | 
| @HeikoS | This guy was for conda iirc | 15:44 | 
| @HeikoS | ? | 15:44 | 
| @wiking | mmm | 15:44 | 
| @wiking | that thing is a bs bingo | 15:45 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/f2802ba44175de1ab2f32712ec45b5f150c3cb98 by karlnapf | 15:45 | 
| @wiking | i'd drop it in the first place | 15:45 | 
| @HeikoS | shall I do it straight away? :D | 15:45 | 
| @wiking | yes drop minimal | 15:45 | 
| @wiking | as is | 15:45 | 
| @wiking | if then that should be part of the conda target | 15:45 | 
| @HeikoS | drop means delete example right? | 15:46 | 
| @HeikoS | or from cmake? | 15:46 | 
| @HeikoS | installation | 15:46 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/b479a3d632151d35fc56b24b836c0b65f2faa89f by karlnapf | 15:47 | 
| @wiking | yes | 15:49 | 
| @wiking | everything | 15:49 | 
| @wiking | not only from install | 15:49 | 
| @wiking | but the whole minimal example itself | 15:49 | 
| @wiking | and that concept | 15:49 | 
| @HeikoS | kk | 15:49 | 
| @wiking | it's just noise | 15:49 | 
| -!- travis-ci [~travis-ci@ec2-54-166-88-144.compute-1.amazonaws.com] has joined #shogun | 15:50 | |
| 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/355396617 | 15:50 | 
| -!- travis-ci [~travis-ci@ec2-54-166-88-144.compute-1.amazonaws.com] has left #shogun [] | 15:50 | |
| @wiking | HeikoS, btw have you checked the proposals | 15:51 | 
| @wiking | few but much good | 15:51 | 
| @HeikoS | on my list for today | 15:51 | 
| @HeikoS | cool | 15:51 | 
| @HeikoS | will give some feedback later | 15:51 | 
| @wiking | i've given feedback already to wuwei | 15:51 | 
| @HeikoS | cool | 15:51 | 
| @wiking | fayrouz is taking a big fish imo | 15:51 | 
| @wiking | but i'd be super supportive | 15:51 | 
| @wiking | just maybe better to make it a bit more realistic | 15:52 | 
| @wiking | timewise :) | 15:52 | 
| @wiking | as there's a looooot of stuff in there | 15:52 | 
| @wiking | + i'll ask him to port the thing into a google doc | 15:52 | 
| @wiking | as that way it's easier to comment on things | 15:52 | 
| @wiking | as now it's a pdf | 15:52 | 
| @wiking | (latex based) | 15:52 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/ddcc90d5eb358c0806909dde77eb1b1831de190a by karlnapf | 15:53 | 
| -!- ajupkw [~ixaxl@193.106.25.19] has joined #shogun | 15:54 | |
| -!- ajupkw [~ixaxl@193.106.25.19] has quit [Client Quit] | 15:54 | |
| @sukey | [https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/4a42cc9b4225f948b6b9b945a693b6f41b671266 by karlnapf | 15:55 | 
| @HeikoS | ok lets see what travis says | 15:55 | 
| @wiking | maybe making the docker image thiner | 15:56 | 
| @wiking | would as well help some | 15:56 | 
| @wiking | as that's couple of minutes fetching time as well unfortunately | 15:57 | 
| @wiking | idk why those images cannot be caches on travis side... but yeah we dont have a control over that :) | 15:57 | 
| @wiking | HeikoS, you've missed dropping OPTION(TRAVIS_DISABLE_LIBSHOGUN_TESTS "Disable libshogun tests to speed up jobs on travis-ci" OFF) | 16:06 | 
| @HeikoS | ah yes | 16:06 | 
| @wiking | but do a git grep for it | 16:06 | 
| @wiking | as there are 2-3 places | 16:07 | 
| @wiking | where it is being used | 16:07 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/7de5eef56468f9977ad610850d5d3d814424defc by karlnapf | 16:09 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/7ea005de21d996aa18ba12d46a5260fbca091d2e by karlnapf | 16:18 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4198 synchronized by karlnapf | 16:23 | 
| @HeikoS | lisitsyn: you there? | 16:24 | 
| @HeikoS | your clone thing has a problem? :D | 16:24 | 
| lisitsyn | HeikoS: what problem? | 16:24 | 
| @HeikoS | ah there we are | 16:24 | 
| @HeikoS | I have an obj with another obj as parameter | 16:24 | 
| @HeikoS | I call clone | 16:24 | 
| lisitsyn | yes | 16:25 | 
| @HeikoS | let's call the obj and param_obj | 16:25 | 
| lisitsyn | good | 16:25 | 
| @HeikoS | obj in the constructor creates a new instance of param_obj | 16:25 | 
| @HeikoS | then I call clone | 16:25 | 
| @HeikoS | the clone has that very same instance as parameter | 16:25 | 
| @HeikoS | the clone method of param_obj is called | 16:25 | 
| @HeikoS | but the created object seems not assigned | 16:26 | 
| @HeikoS | I have a log if it helps | 16:26 | 
| lisitsyn | yeah | 16:26 | 
| @HeikoS | lisitsyn: but you see the problem? | 16:26 | 
| lisitsyn | I don't know | 16:27 | 
| lisitsyn | lemme check | 16:27 | 
| lisitsyn | HeikoS: I am lost | 16:29 | 
| lisitsyn | clone is old in develop | 16:29 | 
| lisitsyn | it doesn't seem to use new parameter map | 16:29 | 
| @HeikoS | yes I am in a feature branch | 16:29 | 
| @HeikoS | local | 16:30 | 
| lisitsyn | HeikoS: so you mean clone of any? | 16:30 | 
| @HeikoS | yes | 16:30 | 
| lisitsyn | so | 16:30 | 
| @HeikoS | the thing you added | 16:30 | 
| lisitsyn | if I create a unit test | 16:30 | 
| lisitsyn | that wraps pointer to sgobject | 16:31 | 
| lisitsyn | and I call any | 16:31 | 
| lisitsyn | call any's clone | 16:31 | 
| lisitsyn | the object won't change, right? | 16:31 | 
| @HeikoS | not following | 16:31 | 
| lisitsyn | SGObject* obj = ... | 16:31 | 
| lisitsyn | make_any_ref(&obj) | 16:31 | 
| lisitsyn | Any any = make_any_ref(&obj) | 16:32 | 
| lisitsyn | Any other; | 16:32 | 
| @HeikoS | https://gist.github.com/karlnapf/e7e286568bfeb6c985973de8d35b0914 | 16:32 | 
| lisitsyn | other.clone_from(any) | 16:32 | 
| lisitsyn | ok I see | 16:32 | 
| lisitsyn | I didn't implement a test for simple clone | 16:32 | 
| lisitsyn | O_o | 16:33 | 
| @HeikoS | so it calls ->clone() of parameters recursively | 16:33 | 
| @HeikoS | but it doesnt assign the result back | 16:33 | 
| lisitsyn | TEST(Any, clone_int) | 16:35 | 
| lisitsyn | { | 16:35 | 
| lisitsyn | int value = 3; | 16:35 | 
| lisitsyn | auto any_src = make_any_ref(&value); | 16:35 | 
| lisitsyn | int other_value = 5; | 16:35 | 
| lisitsyn | auto any_dst = make_any_ref(&other_value); | 16:35 | 
| lisitsyn | EXPECT_EQ(any_src.as<int>(), value); | 16:35 | 
| lisitsyn | EXPECT_EQ(any_dst.as<int>(), other_value); | 16:35 | 
| lisitsyn | any_dst.clone_from(any_src); | 16:35 | 
| lisitsyn | EXPECT_EQ(any_dst.as<int>(), value); | 16:35 | 
| lisitsyn | } | 16:35 | 
| lisitsyn | this works | 16:35 | 
| @HeikoS | sure | 16:36 | 
| @HeikoS | in my tests as well | 16:37 | 
| @HeikoS | the non object parameters are fine | 16:37 | 
| lisitsyn | ah | 16:38 | 
| lisitsyn | so it is only objects? | 16:38 | 
| @HeikoS | ah I think it is the order | 16:38 | 
| @HeikoS | somehow clome_from is swapped | 16:38 | 
| @HeikoS | lhs and rhs | 16:38 | 
| @HeikoS | just reaslied | 16:38 | 
| lisitsyn | hah | 16:38 | 
| @HeikoS | wait I need to check something | 16:39 | 
| @HeikoS | gna | 16:39 | 
| @HeikoS | I think my cline method is doing that | 16:39 | 
| @HeikoS | haha | 16:39 | 
| lisitsyn | HeikoS: yeah you clone into the object from empty | 16:40 | 
| @HeikoS | lisitsyn: sorry for blaming you :D | 16:40 | 
| @HeikoS | yep | 16:40 | 
| lisitsyn | HeikoS: it should be called set_default | 16:40 | 
| lisitsyn | :P | 16:40 | 
| @HeikoS | hehe | 16:40 | 
| @HeikoS | mmmh | 16:43 | 
| -!- travis-ci [~travis-ci@ec2-54-81-208-176.compute-1.amazonaws.com] has joined #shogun | 16:45 | |
| 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/355400304 | 16:45 | 
| -!- travis-ci [~travis-ci@ec2-54-81-208-176.compute-1.amazonaws.com] has left #shogun [] | 16:45 | |
| @HeikoS | lisitsyn: nah ok, that was really me. my test works, thx! | 16:46 | 
| @HeikoS | sometimes all it takes is to show someone else a problem to realise a solution :) | 16:46 | 
| @wiking | HeikoS, tada :) | 16:49 | 
| @wiking | gcc passed | 16:50 | 
| @HeikoS | yep thats good | 16:50 | 
| @HeikoS | shall I merge that thign in? | 16:50 | 
| @wiking | which means clang should pass as well as that's usually faster | 16:50 | 
| @HeikoS | it didnt | 16:50 | 
| @HeikoS | I restarted | 16:50 | 
| @wiking | mmm that's a glitch | 16:50 | 
| @HeikoS | it was still compiling unit tests | 16:50 | 
| @wiking | in general clang is 10-15% faster than gcc | 16:50 | 
| @wiking | so probably what happened that it ended up on an overused vm | 16:50 | 
| @wiking | yeah squash & merge | 16:51 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/c8cc22ca075c2863687cc8f4dc3752c92679ba90 by karlnapf | 16:56 | 
| @sukey | [https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/4198 synchronized by karlnapf | 17:01 | 
| -shogun-buildbot:#shogun- Build deb4 - python3 #365 is complete: Success [build successful] - http://buildbot.shogun-toolbox.org:8080/#builders/28/builds/365 | 17:07 | |
| @wiking | HeikoS, you know you can squasmerge with github :) | 17:16 | 
| -!- travis-ci [~travis-ci@ec2-54-144-195-124.compute-1.amazonaws.com] has joined #shogun | 17:43 | |
| 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/355400304 | 17:43 | 
| -!- travis-ci [~travis-ci@ec2-54-144-195-124.compute-1.amazonaws.com] has left #shogun [] | 17:43 | |
| @HeikoS | lisitsyn: still around? | 17:47 | 
| @HeikoS | wiking: https://travis-ci.org/shogun-toolbox/shogun/jobs/355400306 | 17:48 | 
| @HeikoS | same error as before | 17:48 | 
| @wiking | sure dont worry | 17:48 | 
| @wiking | it'll get in place | 17:48 | 
| @HeikoS | lisitsyn: ok basic things work | 17:52 | 
| @HeikoS | lisitsyn: only problem is ArrayReference and ::clone when there are objects in there | 17:52 | 
| @HeikoS | I think rather than copying the whole array at once, one could call clone_impl on the element individually? | 17:53 | 
| -!- travis-ci [~travis-ci@ec2-54-166-88-144.compute-1.amazonaws.com] has joined #shogun | 17: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/355431616 | 17:55 | 
| -!- travis-ci [~travis-ci@ec2-54-166-88-144.compute-1.amazonaws.com] has left #shogun [] | 17:55 | |
| -!- petioptrv [84cde53f@gateway/web/freenode/ip.132.205.229.63] has joined #shogun | 18:30 | |
| @wiking | just | 18:33 | 
| @wiking | https://www.magicleap.com/creator | 18:33 | 
| @wiking | :) | 18:33 | 
| petioptrv | Greetings from Canada! My name is Petio and I am interested in getting involved with shogun via GSoC 2018. I wanted to drop by and say hello and also check if there is a more suitable destination for GSoC-related discussions. Cheers! | 18:33 | 
| @HeikoS | wiking: whats that? | 18:33 | 
| @HeikoS | petioptrv: welcome! :) | 18:34 | 
| @wiking | magicleap | 18:34 | 
| @wiking | the future | 18:34 | 
| @wiking | :) | 18:34 | 
| @HeikoS | petioptrv: this is the right place to ask any questions and hello | 18:34 | 
| @HeikoS | petioptrv: make sure to apply soon! and so send some PRs soon | 18:34 | 
| petioptrv | Yes, I definitely will; deadline is approaching fast. Unfortunately, I only heard about GSoC recently, and have been spending time getting familiar with shogun | 18:37 | 
| @HeikoS | wiking: lol I see it clearly is | 18:37 | 
| petioptrv | Very excited about the possibility! | 18:37 | 
| @HeikoS | petioptrv: make sure to read the "how to get involved" guide | 18:37 | 
| @HeikoS | it tells you what the next steps are | 18:38 | 
| @wiking | HeikoS, have u seen their demos? | 18:38 | 
| petioptrv | Yup, did that and am working on a proposal atm | 18:38 | 
| @wiking | petioptrv, \o/ | 18:39 | 
| @wiking | petioptrv, the sooner you put together a proposal for a project the sooner we can give you some feedback | 18:39 | 
| petioptrv | I like the "Finding the bad guys" project. It seems like there is a lot of interesting things to work on there | 18:42 | 
| petioptrv | I'm guessing there will be more than one person assigned to that project, is that right? | 18:42 | 
| petioptrv | Or it's one individual per project? | 18:42 | 
| @wiking | petioptrv, depends :) | 18:42 | 
| @wiking | on the number of applicants | 18:43 | 
| petioptrv | ok, I see | 18:45 | 
| petioptrv | just trying to picture what the workflow would be like | 18:45 | 
| @HeikoS | wiking: how can I give the applicant feedback? | 18:50 | 
| @HeikoS | email or what? | 18:50 | 
| @wiking | HeikoS, which? | 18:51 | 
| @HeikoS | in the gsoc dashboard | 18:51 | 
| @wiking | HeikoS, as i've already sent a feedback to Fay | 18:51 | 
| @HeikoS | the non googledoc | 18:51 | 
| @wiking | that he should googledocit | 18:51 | 
| @HeikoS | via irc? | 18:51 | 
| @wiking | so i guess soon he'll do it | 18:52 | 
| @HeikoS | kk | 18:52 | 
| @HeikoS | let me send an email as well so he is pushed | 18:52 | 
| @wiking | :) | 18:52 | 
| @wiking | as you see it best | 18:52 | 
| @wiking | as said i've already requested it | 18:53 | 
| @wiking | :) | 18:53 | 
| @wiking | "Also make sure to talk to us in IRC regarding the stan-math part" | 18:54 | 
| @wiking | he did talk about this with me | 18:54 | 
| @wiking | here on irc | 18:54 | 
| @wiking | he first went with another lib for autodiff | 18:54 | 
| @wiking | that's why actually he switch to stan | 18:54 | 
| @wiking | i feel these kind of cross-comm is a bit awkward | 18:54 | 
| @HeikoS | you understand what he exactly wants to do with that autodiff stuff? | 18:54 | 
| @wiking | but it's my 2 cents | 18:54 | 
| @wiking | yes | 18:55 | 
| @wiking | we've talked about it here | 18:55 | 
| @wiking | anyhow | 18:55 | 
| @wiking | i have to go now (moving) ttyl | 18:55 | 
| @HeikoS | ok bye | 18:55 | 
| -!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has quit [Ping timeout: 240 seconds] | 19:11 | |
| -!- travis-ci [~travis-ci@ec2-54-81-208-176.compute-1.amazonaws.com] has joined #shogun | 19:15 | |
| 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/355431616 | 19:15 | 
| -!- travis-ci [~travis-ci@ec2-54-81-208-176.compute-1.amazonaws.com] has left #shogun [] | 19:15 | |
| petioptrv | wiking: how long should the proposal be? | 19:39 | 
| petioptrv | in the case of Catching the bad guys* | 19:39 | 
| petioptrv | also, is there a link where we can see successful proposals from past gsoc years? | 19:39 | 
| -!- nikhilweee [~nikhilwee@128.199.66.195] has joined #shogun | 20:11 | |
| -!- petioptrv [84cde53f@gateway/web/freenode/ip.132.205.229.63] has quit [Ping timeout: 260 seconds] | 20:46 | |
| --- Log closed Tue Mar 20 00:00:49 2018 | ||
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!