--- Log opened Wed Jun 07 00:00:02 2017 | ||
@sukey | Pull Request #3836 "[ProgressBar] Replace SG_PROGRESS with the new progress bar." merged by vigsterkr - https://github.com/shogun-toolbox/shogun/pull/3836 | 03:02 |
---|---|---|
@sukey | New Commit "Merge pull request #3836 from geektoni/replace_SG_PROGRESS | 03:02 |
@sukey | [ProgressBar] Replace SG_PROGRESS with the new progress bar." to shogun-toolbox/shogun by vigsterkr: https://github.com/shogun-toolbox/shogun/commit/796f1db625c3301e955c41f23d2a91d3b0982721 | 03:03 |
-!- mikeling [uid89706@gateway/web/irccloud.com/x-mqhezswsrvtpsxpu] has joined #shogun | 03:43 | |
@sukey | Pull Request #3838 "Linalg library format update (clang-format-3.8)" opened by OXPHOS - https://github.com/shogun-toolbox/shogun/pull/3838 | 03:44 |
mikeling | wiking: I found push_back wouldn't change the dim_size | 03:45 |
mikeling | like we push_back in here https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/mathematics/Integration.cpp#L334-L335 | 03:46 |
mikeling | and the display_element will only output DynamicArray 'DynamicArray' of size:1x1x1 element(0,:,0) = [ -1.0, ] | 03:47 |
@wiking | mmm | 03:50 |
@wiking | i'm not so sure | 03:50 |
@wiking | what you mean by not changing dim_size | 03:51 |
@wiking | do you change? | 03:51 |
@wiking | i mean you just num_elements++ right? | 03:51 |
mikeling | wiking: yep, it just push the element to the back of array https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/lib/DynamicArray.h#L337 | 03:54 |
mikeling | but we display element as the dim_size https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/lib/DynamicArray.h#L556-L557 | 03:55 |
@wiking | yeah push_back on deque resizes as far as i remember right? | 03:55 |
mikeling | yeah | 03:55 |
@wiking | ok but so if dim1 is not changed neither by you | 03:55 |
@wiking | then i dont get | 03:56 |
@wiking | how come it's different | 03:56 |
@wiking | i mean it's clear to me | 03:56 |
@wiking | just a sec | 03:56 |
@wiking | so in integrate | 03:56 |
@wiking | the first 3 arrays | 03:56 |
@wiking | are | 03:56 |
@wiking | DynamicArray 'DynamicArray' of size: 1x1x1 | 03:56 |
@wiking | element(0,:,0) = [ -1.0, ] | 03:57 |
mikeling | ok, I don't think it's the reason make them(use deque or don't), | 03:57 |
@wiking | DynamicArray 'DynamicArray' of size: 1x1x1 | 03:57 |
@wiking | element(0,:,0) = [ -1.0, ] | 03:57 |
@wiking | DynamicArray 'DynamicArray' of size: 1x1x1 | 03:57 |
@wiking | element(0,:,0) = [ 0.0, ] | 03:57 |
@wiking | ^ this is when you have the original code | 03:57 |
@wiking | and this is with your patches | 03:57 |
@wiking | DynamicArray 'DynamicArray' of size: 1x1x1 | 03:57 |
@wiking | element(0,:,0) = [ -1.0, ] | 03:57 |
@wiking | DynamicArray 'DynamicArray' of size: 1x1x1 | 03:57 |
@wiking | element(0,:,0) = [ -1.0, ] | 03:57 |
@wiking | DynamicArray 'DynamicArray' of size: 10x1x1 | 03:57 |
@wiking | element(0,:,0) = [ 0.0, ] | 03:57 |
@wiking | ... | 03:57 |
mikeling | yep | 03:57 |
@wiking | so | 03:57 |
mikeling | I know | 03:57 |
@wiking | there's a difference right? | 03:57 |
mikeling | yep | 03:57 |
@wiking | is it coming from the constructor? | 03:57 |
mikeling | I got same output locally | 03:58 |
mikeling | yes, I guess the size changed in set_array() | 03:58 |
@wiking | ? | 03:59 |
@wiking | but i mean | 03:59 |
@wiking | lets step back one step here | 03:59 |
@wiking | what are we trying to do right? | 03:59 |
@wiking | make CDynamicArray to use std::deque | 03:59 |
@wiking | right? | 03:59 |
mikeling | yep | 03:59 |
@wiking | i'm not so sure if i understand | 03:59 |
@wiking | why is it so hard | 03:59 |
@wiking | i mean you did change SO many things (constructors, setters etc) | 04:00 |
@wiking | in your PR | 04:00 |
@wiking | but couldn't we first just change DynArray to be deque | 04:00 |
@wiking | and just change minimally the api? | 04:00 |
@wiking | i mean you are working on this | 04:00 |
@wiking | for at least 3 days right? | 04:00 |
@wiking | i really dont understand why is it so complicated | 04:00 |
mikeling | yes :/ | 04:00 |
@wiking | i mean it's just using a different container | 04:01 |
@wiking | nothing more right? | 04:01 |
mikeling | yes, you're right. | 04:01 |
mikeling | But things just don't work as I expected :/ | 04:02 |
@wiking | i mean yes | 04:02 |
@wiking | because you just change way too many things | 04:02 |
@wiking | i mean you have significantly changed | 04:03 |
@wiking | the public API of DynamicArray | 04:03 |
@wiking | and one example of that is the set_array | 04:03 |
@wiking | you dropped some of them | 04:03 |
@wiking | you changed the arguments | 04:03 |
@wiking | added default values | 04:03 |
@wiking | i mean i dont understand why | 04:03 |
@wiking | why do you need to do those things? | 04:03 |
@wiking | why cannot we just keep the public api as is | 04:03 |
@wiking | and just change the private members | 04:04 |
mikeling | just want to simplify it | 04:04 |
mikeling | but | 04:04 |
mikeling | you are right | 04:04 |
@wiking | like this | 04:05 |
@wiking | https://github.com/shogun-toolbox/shogun/pull/3832/files#diff-1a43b9169d617ac582b2a21332230795R70 | 04:05 |
@wiking | i mean you remove some elements from the constructor | 04:05 |
@wiking | this will act totally different | 04:05 |
@wiking | then the original implementation | 04:06 |
@wiking | so i mean what i would do is | 04:06 |
mikeling | because we don't need p_free_array or p_copy_array anymore | 04:06 |
@wiking | why? | 04:06 |
@wiking | i mean | 04:06 |
@wiking | i dont understand why? | 04:06 |
@wiking | i mean if you get a reference to a memory area and you have p_copy_array = true | 04:06 |
@wiking | then you actually have to copy that memory area | 04:06 |
@wiking | and make that memory to be wrapped by deque | 04:07 |
@wiking | again | 04:07 |
@wiking | i would not touch any of the public api | 04:07 |
@wiking | i would keep it as is | 04:07 |
@wiking | just change from DynArray to deque | 04:07 |
@wiking | and make sure that using unit tests | 04:07 |
@wiking | they are still the same | 04:07 |
@wiking | there are many many | 04:07 |
@wiking | unit tests missing | 04:07 |
@wiking | for CDynamicAray | 04:08 |
mikeling | kk, I agree. I will reset it and change the things step by step | 04:08 |
@wiking | super simple to write | 04:08 |
@wiking | test each and every ctor | 04:08 |
@wiking | make sure it copies | 04:08 |
@wiking | if it needs copying | 04:08 |
@wiking | etc etc etc etc | 04:08 |
@wiking | and then when you have all the public api | 04:08 |
@wiking | ALL | 04:08 |
@wiking | not just some tested | 04:08 |
@wiking | then you change the private member of CDynamicArray | 04:08 |
@wiking | and start seeing the errors | 04:08 |
@wiking | then you fix one by one | 04:09 |
@wiking | but not BY removing public api | 04:09 |
@wiking | or changing it totally | 04:09 |
@wiking | no | 04:09 |
@wiking | just under the hood | 04:09 |
@wiking | to keep the functionality the same | 04:09 |
@sukey | Pull Request #3838 "Linalg library format update (clang-format-3.8)" closed by OXPHOS - https://github.com/shogun-toolbox/shogun/pull/3838 | 04:24 |
shogun-buildbot | build #76 of nightly_all is complete: Failure [failed test] Build details are at http://buildbot.shogun-toolbox.org/builders/nightly_all/builds/76 blamelist: Michele Mazzoni <mic.mazzoni@gmail.com>, Viktor Gal <vigsterkr@gmail.com> | 07:58 |
-!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has joined #shogun | 09:01 | |
-!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has left #shogun [] | 09:33 | |
-!- mikeling [uid89706@gateway/web/irccloud.com/x-mqhezswsrvtpsxpu] has quit [Quit: Connection closed for inactivity] | 11:02 | |
-!- mikeling [uid89706@gateway/web/irccloud.com/x-uzalzmesuwfseior] has joined #shogun | 12:30 | |
-!- olinguyen [81615ad9@gateway/web/freenode/ip.129.97.90.217] has joined #shogun | 16:06 | |
@wiking | mikeling, sup? | 16:13 |
mikeling | wiking: sorry, I'm rebuilding the project. I will update the pr | 16:23 |
mikeling | after I finish it | 16:23 |
mikeling | within today :) | 16:23 |
@wiking | :) | 16:31 |
@wiking | kk | 16:31 |
@wiking | just asking if you need any help | 16:32 |
mikeling | wiking: thank you, I only have SplittingStrategy.standard test failed right now | 16:37 |
mikeling | I'm working on it | 16:37 |
@wiking | sounds good | 16:37 |
@wiking | good luck | 16:37 |
mikeling | thank you :) | 16:38 |
-!- OXPHOS [92bd305b@gateway/web/freenode/ip.146.189.48.91] has joined #shogun | 17:56 | |
OXPHOS | wiking: there? | 17:57 |
@wiking | yes | 18:01 |
@wiking | barely | 18:01 |
@wiking | but eyes | 18:01 |
OXPHOS | oh me too. I'll pour. | 18:02 |
OXPHOS | linalg is failing vs2017 compiling consistently now. The error is C1060: out of heap space | 18:03 |
OXPHOS | I looked up and people seem to think that too many templates is the problem | 18:03 |
OXPHOS | someone suggests to change the precompiled header memory allocation limit) | 18:04 |
OXPHOS | -zm | 18:04 |
OXPHOS | do you think this is a good solution? | 18:04 |
OXPHOS | oh sorry on appveyor | 18:05 |
OXPHOS | But Heiko mentioned he had some ideas about linalg lib last week. Haven't heard from him yet. | 18:05 |
OXPHOS | Not sure what he wants to change | 18:06 |
OXPHOS | wiking ^ | 18:06 |
@wiking | mmm | 18:06 |
@wiking | "precompiled header memory allocation limit" | 18:06 |
@wiking | how? :) | 18:06 |
OXPHOS | https://msdn.microsoft.com/en-us/library/bdscwf1c.aspx | 18:07 |
OXPHOS | zm 10 | 18:07 |
OXPHOS | default is 100 | 18:08 |
OXPHOS | i.e. 75MB | 18:08 |
OXPHOS | We should be able to change build config somewhere.. | 18:08 |
OXPHOS | on appveyor | 18:08 |
micmn | wiking, OXPHOS: A.col(i) = B.col(j) with sgmatrix/linalg? | 18:33 |
OXPHOS | micmn: sorry I didn't get it. What are you trying to say?? | 19:04 |
@sukey | Pull Request #3832 "use std::deque instead of DynArray(on going)" synchronized by MikeLing - https://github.com/shogun-toolbox/shogun/pull/3832 | 19:19 |
@sukey | Pull Request #3832 "use std::deque instead of DynArray(on going)" synchronized by MikeLing - https://github.com/shogun-toolbox/shogun/pull/3832 | 19:23 |
mikeling | wiking: ping | 19:23 |
mikeling | still aroung? :) | 19:23 |
micmn | OXPHOS: sorry :p the corresponding eigen3 operation, put the content of the j-th column of B into the i-th column of A | 19:33 |
OXPHOS | micmn: you want to have the method in linalg library? Because SGMatrix doens't have col(i) now | 19:38 |
OXPHOS | also I feel like it should be in sgmatrix, not linalg lib | 19:38 |
micmn | yeah, I wanted to know it there is a way of doing that without eigen | 19:39 |
OXPHOS | micmn: only this | 19:47 |
OXPHOS | https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/lib/SGMatrix.h#L140 | 19:47 |
OXPHOS | I didn't see the downside having a set_column_vector() in sgmatrix @wiking | 19:47 |
micmn | I mean, the purpose of linalg is to abstract away eigen (or other backends), am I getting it wrong? :D | 19:50 |
OXPHOS | oh. we used to have native backends and now the linalg lib SHOULD allow us to use whatever backends we want, CPU and GPU-wise. But currently eigen is the only available CPU backend, and it is a hard requirement | 19:53 |
OXPHOS | Computation-wise, linalg ops SHOULD for into one of the backends, eigen or viennacl or others | 19:54 |
OXPHOS | Am i getting u right? | 19:55 |
OXPHOS | fall* | 19:55 |
micmn | yep :) | 19:56 |
OXPHOS | so either have the method in sgmatrix and use raw pointers, or realize it in linalg lib with eigen, and other backends in the future | 19:56 |
-!- mikeling [uid89706@gateway/web/irccloud.com/x-uzalzmesuwfseior] has quit [Quit: Connection closed for inactivity] | 21:39 | |
-!- besser82 [~besser82@fedora/besser82] has quit [Ping timeout: 240 seconds] | 23:31 | |
-!- besser82_ [~besser82@fedora/besser82] has joined #shogun | 23:31 | |
-!- mode/#shogun [+o besser82_] by ChanServ | 23:32 | |
-!- besser82_ is now known as besser82 | 23:32 | |
--- Log closed Thu Jun 08 00:00:04 2017 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!