--- Log opened Thu Aug 04 00:00:15 2011 | ||
--- Day changed Thu Aug 04 2011 | ||
@sonney2k | it is just that for the use cases I had it did not accelerate anything | 00:00 |
---|---|---|
blackburn | I became a speed maniac | 00:00 |
blackburn | sonney2k: in DistanceMachine thread thing is kinda cumbersome | 00:01 |
blackburn | don't you think so? | 00:02 |
@sonney2k | blackburn, it is always cumbersome | 00:06 |
blackburn | so no way to do it more generalized? | 00:06 |
@sonney2k | the problem is that you have to create some data structure that contains all meta-data | 00:06 |
@sonney2k | blackburn, I would say that for some patterns there is | 00:07 |
blackburn | yes, in java I would use hash-table with string key | 00:07 |
blackburn | what to use there - don't know | 00:09 |
blackburn | hmm I will try to describe thread for computing distances and kernels | 00:09 |
blackburn | I feel upset we have no scalability haha | 00:09 |
blackburn | okay time to change my lifestyle from 'nocturnal' | 00:15 |
blackburn | sonney2k: nite | 00:15 |
@sonney2k | blackburn, nite | 00:16 |
-!- blackburn [~blackburn@188.122.237.5] has quit [Quit: Leaving.] | 00:17 | |
-!- in3xes [~in3xes@180.149.49.227] has joined #shogun | 09:35 | |
-!- in3xes_ [~in3xes@180.149.49.227] has joined #shogun | 09:47 | |
-!- in3xes [~in3xes@180.149.49.227] has quit [Ping timeout: 240 seconds] | 09:50 | |
-!- f-x [~user@117.192.206.210] has joined #shogun | 09:55 | |
-!- in3xes__ [~in3xes@180.149.49.227] has joined #shogun | 10:11 | |
-!- in3xes_ [~in3xes@180.149.49.227] has quit [Ping timeout: 240 seconds] | 10:14 | |
-!- in3xes_ [~in3xes@59.163.196.121] has joined #shogun | 10:34 | |
-!- in3xes__ [~in3xes@180.149.49.227] has quit [Ping timeout: 252 seconds] | 10:37 | |
-!- in3xes__ [~in3xes@180.149.49.227] has joined #shogun | 12:33 | |
-!- in3xes_ [~in3xes@59.163.196.121] has quit [Ping timeout: 276 seconds] | 12:37 | |
-!- in3xes__ is now known as in3xes | 12:44 | |
CIA-87 | shogun: Baozeng Ding master * r787f384 / src/interfaces/csharp_modular/swig_typemaps.i : add csout typemap - https://github.com/shogun-toolbox/shogun/commit/787f384cf1bfd59837ed4a37d6835163b12bdf5d | 12:55 |
CIA-87 | shogun: Soeren Sonnenburg master * rbeb108c / src/interfaces/csharp_modular/swig_typemaps.i : | 12:55 |
CIA-87 | shogun: Merge pull request #261 from sploving/master | 12:55 |
CIA-87 | shogun: add out typemap - https://github.com/shogun-toolbox/shogun/commit/beb108c27bebcdbeb26057110cd36bd92ea7b9f2 | 12:55 |
-!- in3xes_ [~in3xes@180.149.49.227] has joined #shogun | 13:11 | |
-!- in3xes [~in3xes@180.149.49.227] has quit [Ping timeout: 240 seconds] | 13:14 | |
-!- heiko [~heiko@134.91.53.135] has joined #shogun | 13:41 | |
@sonney2k | hi heiko | 13:44 |
heiko | hej sonney2k | 13:44 |
@sonney2k | heiko, if you have time now we should discuss further steps. | 13:44 |
heiko | ok, i have time :) | 13:44 |
heiko | will send you some more patches while we are talking | 13:45 |
@sonney2k | heiko, I think parameter versioning is next on the list right? | 13:45 |
heiko | basically, yes | 13:45 |
heiko | still | 13:46 |
heiko | most classes have not registered their modsel parameters | 13:46 |
@sonney2k | heiko, yeah but this is an independent construction site ... | 13:46 |
heiko | true | 13:46 |
@sonney2k | the parameter add / etc stuff can be pretty intrusive again | 13:46 |
heiko | how do you mean that? | 13:47 |
@sonney2k | it affects all classes | 13:48 |
heiko | yes, ok | 13:49 |
heiko | also there is this cached vector stuff | 13:49 |
heiko | i did some SGVector replacements yesterday and noticed that this will be needed at a lot of points, | 13:49 |
heiko | and also some CachedSparseVector etc stuff is needed | 13:49 |
heiko | but ok, back to the versioning | 13:50 |
@sonney2k | heiko, these things are all straight forward ... | 13:50 |
@sonney2k | versioning is not so it seems | 13:50 |
@sonney2k | I mean how shall we do it - have one *global* version or object specific? | 13:51 |
@sonney2k | global has the advantage that only at one place the version needs to be changed | 13:51 |
@sonney2k | local - in all affected places | 13:51 |
heiko | mmh | 13:52 |
@sonney2k | plus we have to serialize this version too... | 13:52 |
heiko | global sounds better to mee | 13:52 |
@sonney2k | advantage is fine grained control but huge overhead | 13:52 |
@sonney2k | for me too | 13:52 |
@sonney2k | so global it is then | 13:52 |
@sonney2k | nevertheless we still have to save that version in the file once | 13:53 |
heiko | yes | 13:53 |
@sonney2k | ok say we have it saved somehow | 13:54 |
@sonney2k | then we only need to modify loading | 13:54 |
heiko | yes | 13:55 |
heiko | and the loading then depends on the version | 13:55 |
@sonney2k | so when loading - the idea is that we want to be able to always load older versions of the object | 13:55 |
heiko | what about if loading of a certain version simply only loads variables it knows | 13:56 |
@sonney2k | so we need to attempt loading all things that are in the objects with version <= new_version | 13:56 |
heiko | and the loading routine of a newser version just calls this and adds its own stuff | 13:56 |
@sonney2k | heiko, I don't understand what you mean | 13:57 |
heiko | do you want to write the version of each parameter to the file? | 13:58 |
@sonney2k | heiko, I thought we just decided against that | 13:58 |
heiko | ah sorry, yes | 13:58 |
@sonney2k | that is what I meant above with more fine grained control... | 13:59 |
heiko | ok | 13:59 |
heiko | then forget what i said above | 13:59 |
heiko | how do you want to do it? | 13:59 |
@sonney2k | if we don't attach the version to each parameter we have to assume one global version | 13:59 |
heiko | ok | 13:59 |
@sonney2k | and the only thing we can do is to load everything <= GLOBABL_VERSION | 13:59 |
heiko | and then write it once to a saved object | 13:59 |
heiko | yes | 14:00 |
heiko | but this should be ok right | 14:00 |
heiko | I mean, one has to update shogun if he gots objects with a more recent version | 14:00 |
-!- in3xes__ [~in3xes@180.149.49.227] has joined #shogun | 14:00 | |
@sonney2k | and GLOBAL_VERSION only changes between releases of shogun - so it should be fine | 14:01 |
heiko | yes | 14:01 |
heiko | and in every release, the loading routines then have to be updated | 14:01 |
heiko | to work with versions before | 14:02 |
@sonney2k | so the task would then be: a) write out GLOBAL_VERSION in saved files b) load GLOBAL_VERSION if exists (do this first!) and then c) modify load to load only objects <= GLOBAL_VERSION | 14:02 |
@sonney2k | this of course assumes that a) there are no variable type differences, b) there are only variable additions with sane initialization | 14:03 |
@sonney2k | and no deletions :) | 14:03 |
@sonney2k | which brings us to a new problem | 14:03 |
@sonney2k | how do we know that the variable did not get deleted? | 14:03 |
@sonney2k | I mean how do we support this? | 14:04 |
heiko | good question | 14:04 |
@sonney2k | wouldn't we then need the version attached to each variable? | 14:04 |
-!- in3xes_ [~in3xes@180.149.49.227] has quit [Ping timeout: 276 seconds] | 14:04 | |
heiko | does that solve the problem? | 14:04 |
@sonney2k | if we had some introduced_in_version=0; removed_in_version=17; | 14:05 |
@sonney2k | yes | 14:05 |
heiko | I have to admit that I dont know how loading is done currently | 14:05 |
-!- in3xes_ [~in3xes@180.149.49.227] has joined #shogun | 14:07 | |
@sonney2k | for everything else we need some post processing functions | 14:07 |
@sonney2k | these could already now go in the load_serializable_post() | 14:08 |
@sonney2k | so one would get the loaded_parameter_version in the parameters and can then do adjustments as needed | 14:09 |
heiko | ok | 14:10 |
-!- in3xes__ [~in3xes@180.149.49.227] has quit [Ping timeout: 240 seconds] | 14:10 | |
heiko | i am still a bit unsure where to start | 14:11 |
heiko | I mean saving the version is easy | 14:11 |
@sonney2k | there is still one more problem | 14:11 |
heiko | but for loading, this has to be different for each new version, right? | 14:11 |
@sonney2k | when do do loading and some variable is renamed / changed type - we still need the old ptrs in the object | 14:12 |
@sonney2k | otherwise we cannot load them | 14:12 |
heiko | oh, yes | 14:12 |
heiko | mmh, how to solve this? | 14:13 |
heiko | perhaps by temporary void pointers and then casting them depending on old type | 14:13 |
@sonney2k | yeah but it can be even worse | 14:14 |
@sonney2k | think of 3 versions of a file | 14:14 |
@sonney2k | one has double* v; the other int* v; the other SGVector v; | 14:15 |
-!- in3xes__ [~in3xes@180.149.49.227] has joined #shogun | 14:15 | |
heiko | and then? | 14:16 |
@sonney2k | heiko, ok I think void* would work - we just need to load all objects - have them in some void* DynArray and then it can be used to construct the final thing | 14:16 |
heiko | yes | 14:17 |
heiko | and for every element, we have to check version and then evtl do conversion stuff depending on changes | 14:18 |
heiko | deletion could also be treated there: simply do nothing with the data | 14:18 |
-!- in3xes_ [~in3xes@180.149.49.227] has quit [Ping timeout: 240 seconds] | 14:18 | |
heiko | same with type changes | 14:18 |
-!- in3xes_ [~in3xes@180.149.49.227] has joined #shogun | 14:19 | |
@sonney2k | heiko, Re deletion - it might be worthwhile to not even load deleted variables | 14:19 |
@sonney2k | I mean it could happen that these are *huge* arrays | 14:19 |
heiko | mmh, true | 14:20 |
heiko | then the list of names has to be checked before loading | 14:20 |
heiko | and only load if name still exists | 14:20 |
-!- in3xes__ [~in3xes@180.149.49.227] has quit [Ping timeout: 240 seconds] | 14:22 | |
heiko | sonney2k, 2 mins afk | 14:24 |
@sonney2k | the only thing is that this is getting complicated | 14:24 |
@sonney2k | it would really be much easier to always load everything that is <= GLOBAL_VERSION | 14:25 |
@sonney2k | then, when each parameter knows its loaded_version one can do whatever changes in the load_serializable_post() | 14:26 |
@sonney2k | this would include renames, deletions, type changes - everything | 14:27 |
heiko | re | 14:27 |
heiko | but is it so hard to check whether a parameter is still there? | 14:28 |
@sonney2k | so when loading it needs to check the version in the file and the removed_in_version parameter | 14:29 |
heiko | I mean just implement a method for this and then eventually sip | 14:29 |
heiko | skip | 14:29 |
@sonney2k | if it is > removed version | 14:29 |
@sonney2k | it will put it in some void* dynarray with the associated name | 14:29 |
@sonney2k | heiko, how do you check it? I mean how do you distinguish this from rename or type change? | 14:30 |
heiko | mmh also true | 14:30 |
heiko | but the renamings have to be checked at some point | 14:30 |
heiko | a map is needed anyways | 14:31 |
heiko | with renamings /type changes | 14:31 |
heiko | i mean, while iterating over the DynArray, the steps are: | 14:35 |
heiko | 1) check version, if smaller than current, go on | 14:35 |
heiko | 2) check map for name | 14:36 |
heiko | (we could do a method for that, that simply is identity when name has not changed, and new name in other case) | 14:36 |
@sonney2k | wait, why does one have to check for renaming? | 14:37 |
@sonney2k | ohh and how do we treat name changes like v -> vector -> v ? | 14:37 |
heiko | for each version, there has to be a map, not? | 14:38 |
@sonney2k | I mean some loop behavior or whatever clash | 14:38 |
heiko | so when you have: 1.0: v, 2.0:vector, 3.0:v | 14:38 |
@sonney2k | ok that would work | 14:38 |
heiko | and you load while you are in 4.0 | 14:38 |
heiko | you check version and then use map for that version | 14:38 |
heiko | or even better | 14:38 |
heiko | maps call themselves | 14:39 |
@sonney2k | ? | 14:39 |
heiko | sorry, i meant one map for each version that contains the change | 14:39 |
heiko | then you know change from 1.0 to 2.0 and from 2.0 to 3.0 | 14:39 |
heiko | and do not need a new map fpr 1.0 to 3.0 | 14:40 |
heiko | simply transitive | 14:40 |
@sonney2k | yes | 14:40 |
@sonney2k | that makes a lot of sense | 14:40 |
heiko | and all this could be in one method that is handed the name and the version and this method does all the conversion automatucally | 14:40 |
@sonney2k | but when you do a map anyways - could one instead of using the post function also attach a translate() function? | 14:40 |
heiko | yes, perhaps better ? | 14:41 |
@sonney2k | I only see one problem (as always) | 14:41 |
@sonney2k | dependencies between loaded objects | 14:42 |
@sonney2k | but would still work | 14:42 |
@sonney2k | one would then first load everything | 14:42 |
@sonney2k | and then call all these translate functions | 14:42 |
heiko | yes | 14:43 |
@sonney2k | for version 0, then for 1 ... up to GLOBAL_VER | 14:43 |
@sonney2k | actually for loaded_ver ... GLOBAL_VER | 14:44 |
heiko | and i mean, couldnt deletion of variables also be treated that way? | 14:44 |
@sonney2k | yes | 14:44 |
@sonney2k | everything would work this way | 14:44 |
heiko | but stuff has to be loaded first | 14:45 |
heiko | even if not used | 14:45 |
@sonney2k | yes | 14:45 |
@sonney2k | but that is ok I think | 14:45 |
heiko | what about something like, only load names/type of variables first, but not data | 14:45 |
heiko | then do all the mapping, and in the last step load data | 14:45 |
@sonney2k | I mean we guarantee 100% efficiency for the latest version | 14:45 |
heiko | yes also true | 14:46 |
@sonney2k | and if one wants to transition things - one only has to do this once | 14:46 |
heiko | older versions slowly get slower :) | 14:46 |
heiko | yes, then save it again | 14:46 |
@sonney2k | yes | 14:46 |
heiko | well, then it would be ok to always load everything, i mean there might be extreme cases .... | 14:47 |
heiko | but i am unsure whether this really will happen | 14:47 |
@sonney2k | yeah but extreme cases require extreme measures :) | 14:47 |
@bettyboo | smart sonney2k | 14:47 |
@sonney2k | e.g. one could then compile 10 different shogun versions | 14:47 |
heiko | hehe ;) | 14:47 |
@sonney2k | and transition from one version to another ... | 14:47 |
@sonney2k | so I suggest you try to first write down the map and global version nr | 14:50 |
heiko | yes, | 14:50 |
heiko | at first, will only to an identity map to get things working | 14:51 |
heiko | still, my picture of all this is very abstract - not really concrete where to do things | 14:51 |
@sonney2k | well or if sth is not found in the map then it is assumed unchanged | 14:51 |
heiko | but ok, will reed some code now | 14:51 |
heiko | ah ok | 14:52 |
heiko | not found on the key side | 14:52 |
heiko | and if not found on value side, it was deleted | 14:52 |
heiko | do we actually have a map data structure? | 14:52 |
@sonney2k | unfortunately not | 14:55 |
@sonney2k | I mean in the end a sorted list would be sufficent | 14:56 |
@sonney2k | some struct sorted by variable name | 14:57 |
@sonney2k | heiko, ahh and if no hash map exists then one assumes nothing changed | 14:57 |
heiko | ok | 14:58 |
@sonney2k | heiko, and to dump this hash map it would be best if it was derived from SGObject | 14:58 |
heiko | alright | 14:58 |
heiko | but its no hash map, or? | 14:58 |
@sonney2k | heiko, but we only need to look up 'variable_name' for version X | 14:59 |
@sonney2k | and then we get the struct with whatever... | 14:59 |
-!- in3xes__ [~in3xes@180.149.49.227] has joined #shogun | 15:03 | |
-!- in3xes_ [~in3xes@180.149.49.227] has quit [Ping timeout: 240 seconds] | 15:07 | |
-!- in3xes_ [~in3xes@180.149.49.227] has joined #shogun | 15:15 | |
heiko | sonney2k, do you think it is safe to make computer_sparse_feature_vector a const method? | 15:15 |
heiko | compiles at least | 15:15 |
-!- in3xes__ [~in3xes@180.149.49.227] has quit [Ping timeout: 276 seconds] | 15:19 | |
heiko | sonney2k, because i just realilsed that i assumed a feature matrix for the copy_subset method (needed for model selection), but I think it is more wise to call get_feature_vector instead. However this needs the method to be const because copy_subset is const | 15:19 |
heiko | oh no | 15:21 |
heiko | the cache, well then it is not possible :) | 15:21 |
-!- sploving1 [~sploving@210.77.14.135] has joined #shogun | 15:47 | |
-!- f-x [~user@117.192.206.210] has quit [Ping timeout: 260 seconds] | 15:55 | |
-!- in3xes__ [~in3xes@180.149.49.227] has joined #shogun | 16:06 | |
-!- in3xes_ [~in3xes@180.149.49.227] has quit [Ping timeout: 240 seconds] | 16:10 | |
-!- blackburn [~blackburn@188.122.237.5] has joined #shogun | 16:14 | |
blackburn | heiko: guten abend ;) | 16:16 |
blackburn | do you need any efficient CSet? | 16:16 |
@sonney2k | sploving1, how is it going with the c# typemaps? | 16:22 |
@sonney2k | blackburn, he now needs a map ohh and we need an LRU cache :) | 16:22 |
blackburn | hey where might you use it? | 16:23 |
@sonney2k | for kernel caching and for caching the on-demand computed feature vectors (from the preprocessors) | 16:23 |
@sonney2k | I know thought that currently basically everyone uses a feature matrix - in memory :) | 16:24 |
sploving1 | sonney2k, not work now. len = ((sizeof($input)) / (sizeof($input[0]))); does not work | 16:25 |
sploving1 | but it has no realvector error now | 16:25 |
@sonney2k | sploving1,and if you remove the sizeof stuff? don't you get the realvector error again? | 16:27 |
@sonney2k | I mean you didn't change the in typemap or? | 16:27 |
sploving1 | the csout typemap can remove the realvector error | 16:28 |
sploving1 | but now it does not pring any correct for the get_labels | 16:28 |
sploving1 | 16:28 | |
@sonney2k | sploving1, regarding the len thing above - can't you use a macro with the defined type such that you can cast appropriately and use sizeof(SG_TYPE) or so? | 16:30 |
sploving1 | sonney2k, for double[] in c#, it is converted to be double* in the wrap.cxx file, so it is not easy to just use the macro | 16:33 |
sploving1 | http://msdn.microsoft.com/en-us/library/z6cfh6e6%28v=VS.80%29.aspx | 16:34 |
@sonney2k | and when you use CSHARPTYPE, CTYPE? | 16:34 |
sploving1 | has something about the array size, but I am still trying to understand it | 16:34 |
-!- f-x [~user@117.192.196.206] has joined #shogun | 16:35 | |
sploving1 | CSHAPTYPE is c# type, and CTYPE is c type | 16:36 |
@sonney2k | sploving1, ok - just to understand. you have to marshal the array to some raw thing - how do you unmarshal it? | 16:37 |
heiko | blackburn, guten Abend :) but still sonny here | 16:38 |
sploving1 | I think marshal includes two: passting array from .net to C, and passing array from C to .Ne | 16:38 |
sploving1 | .net | 16:39 |
sploving1 | they have inattributes and outattributes | 16:39 |
sploving1 | inattrbutes is used to convertes C# to C, and outattributtes converts C to C#, this is what i understand | 16:40 |
@sonney2k | sploving1, so when you do MarshalAs(UnmanagedType.LPArray) | 16:45 |
@sonney2k | it will create a pointer to what? | 16:46 |
@sonney2k | double? | 16:46 |
sploving1 | sonney2k, yeap. | 16:47 |
sploving1 | double[] -> double* | 16:47 |
@sonney2k | sploving1, shouldn't you use then MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.R8) ? | 17:02 |
@sonney2k | sploving1, at least http://www.gnu.org/projects/dotgnu/pnetlib-doc/System/Runtime/InteropServices/UnmanagedType.html#UnmanagedType.R8%20Field says 8 byte float | 17:03 |
@sonney2k | sploving1, btw would your typemap now work if you hard code a length of say 3 and just use this? | 17:05 |
sploving1 | array = SG_MALLOC(SGTYPE, len); to be array = SG_MALLOC(SGTYPE, 3);? | 17:06 |
sploving1 | I have a try | 17:08 |
-!- sploving1 [~sploving@210.77.14.135] has left #shogun [] | 17:08 | |
-!- sploving1 [~sploving@210.77.14.135] has joined #shogun | 17:15 | |
sploving1 | sonney2k, no. | 17:15 |
sploving1 | double[] y = new double[3] {5, 2, 3}; | 17:15 |
sploving1 | the result is: -3.19979336298487E-44 | 17:16 |
sploving1 | -3.27625512940976E-44 | 17:16 |
sploving1 | 1.37980654479024E-309 | 17:16 |
-!- sploving1 [~sploving@210.77.14.135] has left #shogun [] | 17:18 | |
f-x | sonney2k: how should i use SG_MALLOC if the constructor should be called after initialization? | 17:18 |
@sonney2k | f-x no way - just don't do such things | 17:19 |
f-x | ok | 17:19 |
-!- heiko [~heiko@134.91.53.135] has quit [Ping timeout: 258 seconds] | 17:28 | |
f-x | sonney2k: so could you help me out on this one thing | 17:33 |
@sonney2k | f-x, which? | 17:34 |
f-x | to make the ring of examples suitable for all types | 17:34 |
f-x | i thought it would be ok to call the constructor of type T when the ring is initialized | 17:35 |
f-x | i.e., there will be 1024 pre-initialized T-objects | 17:35 |
f-x | where T=float64_t*, or a sparse vector entry etc | 17:35 |
f-x | or maybe in my case even a VwExample | 17:35 |
f-x | sonney2k: is there a way to do a generic initialization without new[]? | 17:36 |
f-x | ok, wait.. i'll try something and get back to you if there's a problem | 17:38 |
f-x | sonney2k: yes - the code would be simpler if i could call the constructor during initialization.. is using new[] not allowed now? | 17:51 |
-!- in3xes_ [~in3xes@180.149.49.227] has joined #shogun | 18:02 | |
-!- in3xes_ [~in3xes@180.149.49.227] has quit [Client Quit] | 18:04 | |
-!- in3xes__ [~in3xes@180.149.49.227] has quit [Ping timeout: 276 seconds] | 18:07 | |
-!- f-x [~user@117.192.196.206] has quit [Ping timeout: 260 seconds] | 19:02 | |
-!- f-x [~user@117.192.218.249] has joined #shogun | 19:39 | |
@sonney2k | f-x, well you can use CALLOC to have them all 0 | 20:14 |
blackburn | sonney2k: can I introduce method not available in interfaces but only in libshogun? how? | 20:15 |
@sonney2k | ? | 20:16 |
@sonney2k | you mean %ignore? | 20:16 |
@sonney2k | in .i files? | 20:16 |
blackburn | hmm seems yes | 20:16 |
blackburn | thanks | 20:16 |
blackburn | sonney2k: so you don't mind realloc for simplefeatures, right? | 20:18 |
@sonney2k | blackburn, no - that was one of the reasons for the SG_MALLOC transition | 20:18 |
f-x | sonney2k: How do I allocate memory for the labels inside? | 20:19 |
f-x | say it's class a { ptr* b }; does b get allocated to any value when I calloc an obj of type a? | 20:20 |
@sonney2k | yes. NULL | 20:22 |
f-x | in my case for vw it's like 'class example { label* b; }', and the ring stores example objects.. i would like a new label to be created when the example is created | 20:26 |
f-x | so far creating this within the constructor of example has been the simplest way i could see | 20:27 |
f-x | sonney2k: what's the rule for using new/SG_MALLOC now? for single object, use new and for multiple use SG_MALLOC? | 20:35 |
@sonney2k | f-x, the rule is just don't use new[] | 20:40 |
@sonney2k | f-x, allocating objects in constructor is anyway not a great idea... | 20:40 |
-!- f-x [~user@117.192.218.249] has quit [Ping timeout: 260 seconds] | 20:45 | |
* serialhex *LOVES* *nix!!!! | 20:53 | |
-!- f-x [~user@117.192.202.35] has joined #shogun | 20:56 | |
-!- heiko [~heiko@134.91.53.135] has joined #shogun | 21:07 | |
-!- heiko [~heiko@134.91.53.135] has quit [Ping timeout: 258 seconds] | 21:26 | |
CIA-87 | shogun: Heiko Strathmann master * r51aed9e / (16 files): made get_dim_feature_space method const - http://bit.ly/o9Lz7h | 23:08 |
CIA-87 | shogun: Heiko Strathmann master * r4d85fba / (2 files): made get_dim_feature_space method const - http://bit.ly/qeKdr5 | 23:08 |
CIA-87 | shogun: Heiko Strathmann master * r332c8e4 / src/shogun/lib/DataType.h : (hopefully) removed some warnings regarding initialization - http://bit.ly/p8NV0F | 23:08 |
CIA-87 | shogun: Heiko Strathmann master * r765bfc3 / src/shogun/lib/DataType.h : removed another compiler warning - http://bit.ly/rofgZP | 23:08 |
CIA-87 | shogun: Soeren Sonnenburg master * rbf0c2af / (17 files in 2 dirs): | 23:08 |
CIA-87 | shogun: Merge pull request #262 from karlnapf/master | 23:08 |
CIA-87 | shogun: made get_dim_feature_space method const - http://bit.ly/rdgA1w | 23:08 |
@sonney2k | f-x, your patch doesn't apply | 23:24 |
f-x | sonney2k: what do you mean? | 23:24 |
@sonney2k | f-x, it needs to be rebased agains master | 23:24 |
f-x | ok.. i see you already applied heiko's DataType.h patch, probably conflicts | 23:25 |
f-x | i'll send another request | 23:25 |
@sonney2k | take your time - I am too tired now will look at it tomorrow | 23:26 |
f-x | ok, sent anyway | 23:28 |
-!- f-x [~user@117.192.202.35] has quit [Remote host closed the connection] | 23:40 | |
--- Log closed Fri Aug 05 00:00:55 2011 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!