Open in new window / Try shogun cloud
--- Log opened Fri Apr 17 00:00:46 2015
-!- pickle27 [~pickle27@192-0-134-235.cpe.teksavvy.com] has joined #shogun01:52
-!- vortex_ape [~vortex_ap@59.177.131.141] has quit [Ping timeout: 245 seconds]02:35
-!- vortex_ape [~vortex_ap@120.59.199.238] has joined #shogun02:36
-!- pickle27 [~pickle27@192-0-134-235.cpe.teksavvy.com] has quit [Remote host closed the connection]05:52
shogun-buildbotbuild #1000 of nightly_default is complete: Failure [failed notebooks]  Build details are at http://buildbot.shogun-toolbox.org/builders/nightly_default/builds/1000  blamelist: Sergey Lisitsyn <lisitsyn.s.o@gmail.com>, Bj?rn Esser <bjoern.esser@gmail.com>05:59
-!- vortex_ape [~vortex_ap@120.59.199.238] has quit [Ping timeout: 245 seconds]08:35
-!- vortex_ape [~vortex_ap@120.56.194.112] has joined #shogun08:35
-!- besser82 [~besser82@fedora/besser82] has joined #shogun08:55
-!- mode/#shogun [+o besser82] by ChanServ08:55
-!- nszceta [~nszceta@5ED062E5.cm-7-1b.dynamic.ziggo.nl] has joined #shogun09:11
-!- vortex_ape [~vortex_ap@120.56.194.112] has quit [Ping timeout: 240 seconds]09:55
-!- nszceta [~nszceta@5ED062E5.cm-7-1b.dynamic.ziggo.nl] has quit [Quit: Textual IRC Client: www.textualapp.com]10:48
@besser82lisitsyn, yo?11:22
lisitsynbesser82: hey11:22
@besser82lisitsyn, about the plugin-style thing we talked a few days ago...11:23
lisitsynyes?11:23
@besser82lisitsyn, I think I have some idea, for not getting the api so ugly and handling swig stuff pretty well ^_^11:24
@besser82lisitsyn, all we need is two c++ libs ;)11:24
lisitsynwhich?11:24
@besser82lisitsyn, and the functional plugins of course  :P11:25
@besser82lisitsyn, one libshogun, which handles the functional plugins11:25
@besser82lisitsyn, and a second one: libshogun-{types, structures}11:25
@besser82lisitsyn, holding the common data-types11:26
@besser82what's your oppinion?11:27
@besser82so we don't need to do ugly "blackbox"-data passing11:27
lisitsynnot sure I understand11:28
lisitsynwhat are common data-types?11:28
@besser82stuff like SGMatrix / SGVector...11:28
@besser82of SGObjects11:28
@besser82or11:28
@besser82stuff like that11:28
lisitsynok how does that help?11:28
@besser82we have a split out functional part with dyn-loading and a pretty slim api to access them11:29
@besser82no SWIG-bloat11:30
@besser82and we have directly accessible data11:30
@besser82which can be passed between the classes / methods inside the plugins and queried by the use11:30
@besser82r11:30
lisitsynok it loads plugin11:31
lisitsynwhat's next?11:31
@besser82resolves dependencies and loads further stuff11:32
lisitsynsay I loaded svmlight11:32
lisitsynhow do I get svmlight instance11:32
lisitsynand what type would it be?11:32
@besser82Instace will be created by "plugin-server" and passed as ptr11:33
@besser82ptr can be like SGObject or sth. specialized like SGsvm11:33
@besser82so we class-object in libshogun-types11:35
@besser82have11:35
lisitsynwould it be CSVM or CKernelSVM or CSVMLight?11:36
lisitsynI mean how deep hierarchy you mean?11:36
@besser82I'd opt for CSVM sth.11:36
@besser82not too deep hierachy of exposed data-tyxpes11:37
@besser82otherwise libshogun-types will blow SWIG again :P11:37
@besser82inside the plugin we can specialize more, but not directly exposed to api11:38
@besser82so we can get data out as some component of CSVM11:39
@besser82or in11:40
@besser82so we keep hierarchy of exposed data-types pretty shallow11:41
@besser82like a dozen of globally usable data-types which can hold all stuff needed for "blackboxed" functionalitiy11:42
lisitsynokay I see11:51
lisitsynwell I had the very same idea11:51
lisitsynlimited number of classes to expose11:51
lisitsynand plugins11:51
lisitsynso plugin can create an instance of CLinearMachine or something else11:51
@besser82lisitsyn, right11:52
@besser82lisitsyn, and possibly specialize that to sth. "as needed"...11:52
@besser82lisitsyn, I'm currently working on plugin-framework11:53
@besser82lisitsyn, so we possibly can have that as C++-template-lib sth.11:53
lisitsynok cool11:53
@besser82lisitsyn, ripping out the data-structures, shouldn't be that hard ;)11:54
@besser82lisitsyn, so we can that stuff going like shogun511:54
@besser82or shogun-ng  :P11:54
lisitsynheh11:54
@besser82lisitsyn, next question is:  building all in a row?11:55
@besser82lisitsyn, or building stuff modularized?11:55
@besser82like having seperate repo for every plugin11:56
@besser82I'm biased to the later11:56
@besser82latter11:56
@besser82because we have an easier approach for e.g. build interfaces seperately11:57
@besser82or later if one needs them11:58
@besser82and not a hyper overlaborated monolithic build progess11:58
lisitsynseparate repo is a bit tough12:00
lisitsynI'd go for one first12:00
@besser82lisitsyn, why is it tough?12:01
lisitsynbesser82: we'd get hundred of repos instantly12:02
@besser82lisitsyn, we can provide sth. like shogun-meta repo for noobs  ;)12:02
@besser82lisitsyn, which provides some easy-peasy scripts to get all stuff built12:02
lisitsynmaybe12:03
@besser82lisitsyn, a hundred of repos isn't a reason, really, I think12:04
lisitsynwell I mean it would be harder to keep them updated12:04
lisitsynand you harder to maintain probably12:04
@besser82lisitsyn, okay... that might be a reason...12:04
@besser82lisitsyn, like I said...  shogun-meta  ;)12:05
@besser82lisitsyn, some small toolchain to keep stuff managed12:05
@besser82lisitsyn, with that modular stuff we can update things pretty easy12:05
@besser82lisitsyn, without rebuilding all crap, which takes ages  :P12:06
@besser82rebuilding my fedora rpm-spec with basically all features enabled takes ~ 50 minutes on my local machine12:07
@besser82rebuilding on fedora-infra takes ~ 8+ hours...12:07
lisitsynyeah this sucks12:08
@besser82lisitsyn, another good reason for modularized repos / builds12:08
@besser82lisitsyn, and we can push updates quite more frequently  ;)12:09
@besser82lisitsyn, because we only need to release new tarball of changed / improved plugin12:10
@besser82lisitsyn, adding new features / plugins is easy as well12:10
@besser82lisitsyn, and they are likely not break all other stuff12:11
@besser82but themselves12:11
-!- vortex_ape [~vortex_ap@120.56.194.112] has joined #shogun12:27
-!- vortex_ape [~vortex_ap@120.56.194.112] has quit [Ping timeout: 264 seconds]14:35
-!- vortex_ape [~vortex_ap@120.56.206.108] has joined #shogun14:36
-!- vortex_ape [~vortex_ap@120.56.206.108] has quit [Ping timeout: 276 seconds]16:02
@besser82lisitsyn, plugin-shiatz is getting tight  :D17:58
@besser82lisitsyn, I'm narrowing down to have a versatile C++-lib handling plugin stuff17:58
@besser82lisitsyn, so we don't need to mess-up shogun code with17:59
@besser82lisitsyn, that shiatz nobody understands17:59
@besser82lisitsyn, instead we a nice template we can inherit from to create plugins and handle them  :D18:00
@besser82lisitsyn, loading and dependency solving is handled from external code18:00
-!- nszceta [~nszceta@95.211.152.2] has joined #shogun19:14
-!- besser82 [~besser82@fedora/besser82] has quit [Ping timeout: 265 seconds]19:56
-!- nszceta [~nszceta@95.211.152.2] has quit [Quit: My Mac has gone to sleep. ZZZzzz...]20:15
--- Log closed Sat Apr 18 00:00:48 2015