--- Log opened Wed Apr 17 00:00:39 2019 | ||
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 01:55 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 01:56 | |
-!- mode/#shogun [+o wiking] by ChanServ | 01:56 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 246 seconds] | 02:01 | |
-!- Moatman [~Moatman@pool-96-255-151-151.washdc.fios.verizon.net] has quit [Remote host closed the connection] | 05:49 | |
-!- Moatman [~Moatman@pool-96-255-151-151.washdc.fios.verizon.net] has joined #shogun | 05:50 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 07:02 | |
-!- mode/#shogun [+o wiking] by ChanServ | 07:02 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 07:57 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 07:59 | |
-!- mode/#shogun [+o wiking] by ChanServ | 07:59 | |
-!- Moatman [~Moatman@pool-96-255-151-151.washdc.fios.verizon.net] has quit [Remote host closed the connection] | 08:34 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 09:26 | |
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun | 09:33 | |
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Changing host] | 09:33 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 09:33 | |
-!- mode/#shogun [+o wiking] by ChanServ | 09:34 | |
-!- geektoni [5d2045c3@gateway/web/freenode/ip.93.32.69.195] has joined #shogun | 10:02 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 10:37 | |
-!- gf712 [9052087a@gateway/web/freenode/ip.144.82.8.122] has joined #shogun | 10:42 | |
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun | 11:08 | |
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Changing host] | 11:08 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 11:08 | |
-!- mode/#shogun [+o wiking] by ChanServ | 11:08 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 11:08 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 11:11 | |
-!- mode/#shogun [+o wiking] by ChanServ | 11:11 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 250 seconds] | 11:18 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 12:05 | |
-!- mode/#shogun [+o wiking] by ChanServ | 12:05 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 240 seconds] | 12:09 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 12:13 | |
-!- mode/#shogun [+o wiking] by ChanServ | 12:14 | |
-!- geektoni [5d2045c3@gateway/web/freenode/ip.93.32.69.195] has quit [Ping timeout: 256 seconds] | 13:57 | |
-!- Moatman [~Moatman@pool-96-255-151-151.washdc.fios.verizon.net] has joined #shogun | 14:05 | |
@wiking | gf712: ping? | 15:08 |
---|---|---|
gf712 | wiking: pong | 15:14 |
@wiking | ok so i'm struggling with this for a while | 15:14 |
@wiking | and dont know how to solve it so maybe you have ideas | 15:14 |
@wiking | basically there's an object that has some serialization issues with the new framework | 15:14 |
@wiking | obj.equals(obj2) is true | 15:14 |
@wiking | so whatever is registered in the tags fw | 15:15 |
@wiking | that gets correctly (de)serialized | 15:15 |
@wiking | but still when i use the object to do prediction | 15:15 |
@wiking | it gives different results :) | 15:15 |
@wiking | with the old parameters.cpp it works fine | 15:16 |
@wiking | i've checked couple of times | 15:16 |
@wiking | the same parameters are registered in the class | 15:16 |
@wiking | i.e. it's either SG_ADD | 15:16 |
@wiking | or there's a watch_param for every add_vector/add_matrix call | 15:16 |
@wiking | so now i'm like what now ?:) | 15:16 |
gf712 | hmmm, ok, so any subclasses are also being deserialised properly? i.e. kernel is the same in both machine if they have any? | 15:18 |
@wiking | yes | 15:19 |
@wiking | hah ok there's one hope! | 15:19 |
@wiking | load_serializable_post | 15:19 |
gf712 | what does that do? | 15:19 |
@wiking | well we have all these stuff | 15:20 |
@wiking | like load_serializable_pre/load_serializable_post and for save as well | 15:20 |
-!- geektoni [5d2045c3@gateway/web/freenode/ip.93.32.69.195] has joined #shogun | 15:20 | |
@wiking | sometimes we dont serialize stuff | 15:20 |
@wiking | that is big and can be computed | 15:20 |
@wiking | on the fly | 15:20 |
@wiking | so these stuff makes it sure that it actually gets called | 15:20 |
@wiking | now funny enough | 15:20 |
@wiking | it is not being called | 15:21 |
@wiking | which makes me wonder why | 15:21 |
@wiking | load_serializable_post namely | 15:21 |
@wiking | gf712: load_serializable_post is defined in SGO | 15:21 |
@wiking | but there's an override for it in the inherited kernel | 15:21 |
@wiking | so if SGO* obj | 15:21 |
@wiking | is being passed and i call load_serializable_post on it | 15:21 |
@wiking | it should check still the vtable no? | 15:21 |
@wiking | :) | 15:21 |
@wiking | no i feel like i dont understand anything anymore from c++ :DDD | 15:23 |
@wiking | maybe geektoni knows ? | 15:24 |
geektoni | wiking: what's the issue? | 15:24 |
@wiking | see above | 15:24 |
@wiking | just when u joined :) | 15:24 |
@wiking | basically there's a virtual method of SGO | 15:24 |
@wiking | that is being overriden by an inherited obj | 15:24 |
@wiking | say class A | 15:25 |
@wiking | SGO* o = new A() | 15:25 |
@wiking | then if i call o.overriden_virtual_method() that should call the method of A no? | 15:25 |
@wiking | regardless that i currently pass around o as SGO* | 15:25 |
@wiking | that would be the point of virtual methods | 15:25 |
@wiking | :) | 15:25 |
geektoni | wiking: it should indeed | 15:25 |
@wiking | but in fact | 15:26 |
@wiking | it actually calls the default implementation of SGO | 15:26 |
@wiking | not the override in A | 15:26 |
@wiking | i've even set a breakpoint in gdb for that method | 15:26 |
@wiking | and do a step over step in gdb | 15:26 |
@wiking | and it only goes into the SGO implementation | 15:26 |
@wiking | not the A implementation | 15:26 |
@wiking | of that method | 15:26 |
geektoni | wiking: are you missing a "virtual" somewhere? | 15:28 |
geektoni | because | 15:28 |
geektoni | if the method is declared virtual | 15:28 |
@wiking | these are both ancient codes | 15:28 |
@wiking | it works with the other parameter framework | 15:28 |
@wiking | but not with the new one :) | 15:28 |
@wiking | here | 15:29 |
@wiking | https://github.com/shogun-toolbox/shogun/pull/4573/files#diff-9c3599c0d2090e493be261b079e9b63eR474 | 15:29 |
@wiking | as you can see i haven't even changed the method | 15:30 |
@wiking | but still only load_serializable_post is being called | 15:30 |
@wiking | :S | 15:30 |
@wiking | ah ok | 15:32 |
@wiking | i know EXACTLY why | 15:32 |
@wiking | :D | 15:32 |
@wiking | because i'm stupid | 15:32 |
@wiking | :) | 15:32 |
geektoni | wiking: LoL | 15:33 |
geektoni | what was then? | 15:33 |
@wiking | yeah i mean in the serialization fw | 15:33 |
@wiking | i'm not really calling it | 15:33 |
@wiking | just at the top level | 15:33 |
@wiking | but not within the rest | 15:33 |
@wiking | so for any included SGO | 15:33 |
@wiking | those methods are not called | 15:33 |
@wiking | the reason because the interface changed... so now idk whether i should make all those methods public | 15:34 |
@wiking | or wtf | 15:34 |
@wiking | :) | 15:34 |
geektoni | wiking: do you have any idea why windows spit out this error https://pastebin.com/RgQ37Xcz when using your safe_convert? | 15:48 |
@wiking | not yet | 15:48 |
@wiking | :D | 15:48 |
@wiking | ah i've seen those | 15:48 |
@wiking | in a unit test once | 15:49 |
@wiking | i mean PR | 15:49 |
@wiking | for a unit test and i had no idea what's happening there | 15:49 |
@wiking | :( | 15:49 |
geektoni | yeah, I have also no idea why it is failing :( | 15:49 |
geektoni | it seems to be something with is_finite, but I am not sure.. | 15:50 |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 15:53 | |
-!- wiking [~wiking@inf-ise-etx-dock-1-111.ethz.ch] has joined #shogun | 16:03 | |
-!- wiking [~wiking@inf-ise-etx-dock-1-111.ethz.ch] has quit [Changing host] | 16:03 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 16:03 | |
-!- mode/#shogun [+o wiking] by ChanServ | 16:03 | |
@wiking | gf712: what was the new funky way to spec a function throwing an exception? | 16:03 |
gf712 | you mean with the std::no throw_t? | 16:04 |
@wiking | is that it | 16:04 |
@wiking | so i wanna add throw (ShogunException); | 16:05 |
@wiking | but i guess that's the oldschool way right? | 16:05 |
@wiking | i guess noexcept(false); | 16:06 |
@wiking | there's no way to provide the type of exception being thrown? | 16:06 |
@wiking | so it's only void post_deserialize(CSGObject* obj) const noexcept(false); now or what? | 16:08 |
gf712 | ohh | 16:08 |
gf712 | noexcept(false) | 16:08 |
gf712 | or noexcept(true) | 16:08 |
@wiking | so there's no way to specify the type of exception | 16:09 |
gf712 | you don't specialise types | 16:09 |
@wiking | like in java | 16:09 |
@wiking | kk | 16:09 |
gf712 | yea, which is great | 16:09 |
@wiking | me dont like :) | 16:09 |
@wiking | why? | 16:09 |
@wiking | it's great to know the type of catch you should write | 16:09 |
@wiking | ;) | 16:09 |
gf712 | because an exception is an exception | 16:09 |
gf712 | you should handle it :D | 16:09 |
@wiking | yes | 16:09 |
@wiking | but how do you know | 16:09 |
@wiking | which exception is coming from that specific function | 16:09 |
@wiking | and others from underlying | 16:09 |
@wiking | see what i mean? | 16:09 |
gf712 | https://stackoverflow.com/questions/88573/should-i-use-an-exception-specifier-in-c/88905#88905 | 16:10 |
gf712 | yes, I see the convenience | 16:10 |
gf712 | btw is saw there was an issue with std::isfinite for msvc | 16:11 |
gf712 | you should use the isfinite for cmath | 16:12 |
gf712 | https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/finite-finitef?view=vs-2019 | 16:12 |
gf712 | geektoni ^ | 16:12 |
gf712 | which then uses throw() which is not great | 16:13 |
@wiking | btw i'm having some asdf in ruby swig | 16:13 |
@wiking | for std::isfinite as well | 16:13 |
gf712 | wiking: can you use the isfinite in <float.h>? | 16:15 |
@wiking | float? :) | 16:16 |
@wiking | uff | 16:16 |
@wiking | we used to have a fucking crazy | 16:16 |
@wiking | cmake check for std::isfinite/isnan etc | 16:16 |
gf712 | it takes double | 16:16 |
@wiking | but those things are c++11 | 16:16 |
@wiking | hence it's all out now | 16:16 |
@wiking | why msvc is not c++11 | 16:16 |
gf712 | because they chose to focus on parallel code instead of developing std library for them... :D | 16:16 |
@wiking | :D | 16:17 |
@wiking | great | 16:17 |
gf712 | btw | 16:17 |
@wiking | i mean the easiest is just to add there | 16:17 |
@wiking | #ifdef _MSV_VER | 16:17 |
gf712 | ppl at gcc are working on parallel implementations for <algorithm> | 16:17 |
gf712 | yup | 16:17 |
gf712 | classic | 16:17 |
@wiking | i wouldn't change it other way | 16:17 |
@wiking | i would love to be able to use | 16:17 |
@wiking | std:: | 16:17 |
@wiking | :D | 16:17 |
@wiking | and not use other stuff | 16:17 |
@wiking | if not necessary | 16:18 |
@wiking | it was a mess prior c++11 | 16:18 |
gf712 | https://godbolt.org/z/IVs6P3 | 16:18 |
gf712 | not even 19.20 will fix it | 16:19 |
@wiking | amazing | 16:19 |
@wiking | can u patch it or should i do it? | 16:19 |
gf712 | this works | 16:20 |
gf712 | https://godbolt.org/z/XOKqtx | 16:20 |
gf712 | I can do that | 16:20 |
@wiking | yeah just add a macro hack there | 16:21 |
gf712 | cmath uses std::isfinite | 16:22 |
gf712 | and it seems fine? | 16:22 |
gf712 | as in math.cpp | 16:22 |
gf712 | oh right | 16:22 |
gf712 | the issue is that non floats don't work | 16:23 |
gf712 | pffff | 16:23 |
@wiking | void write(Some<CSGObject> object) noexcept(false) override; | 16:24 |
@wiking | is this valid? :) | 16:24 |
@wiking | or override should be before? | 16:24 |
@wiking | i would say not | 16:24 |
@wiking | but my syntax highlighter seems to be gone haywire | 16:24 |
@wiking | hahaha | 16:25 |
@wiking | https://stackoverflow.com/questions/21577466/the-order-of-override-and-noexcept-in-the-standard | 16:25 |
gf712 | hmm I would say it doesn't matter | 16:25 |
gf712 | its a compiler keyword | 16:25 |
@wiking | it does | 16:25 |
@wiking | it will fail | 16:25 |
gf712 | sometimes I wonder who writes these rules... | 16:25 |
@wiking | :) | 16:25 |
@wiking | if you swap it | 16:25 |
@wiking | noexcept(false) override works | 16:26 |
@wiking | override noexcept(false) does not | 16:26 |
@wiking | :) | 16:26 |
gf712 | ok, and then const? :D | 16:26 |
gf712 | where does that go | 16:26 |
@wiking | before noexcept | 16:27 |
@wiking | :) | 16:27 |
gf712 | wiking: is this fine https://github.com/shogun-toolbox/shogun/pull/4612 ? | 16:32 |
gf712 | might work 99.99% of the time :p | 16:33 |
@wiking | add there a TODO: microsoft should really start supporting c++11 :) | 16:35 |
gf712 | lol ok | 16:35 |
@wiking | argh i hate coding without a compiler | 16:47 |
@wiking | :D | 16:47 |
gf712 | what do you mean? | 16:50 |
gf712 | you don't have compiler? :O | 16:50 |
@wiking | no resource for compile | 16:52 |
@wiking | r | 16:52 |
@wiking | :) | 16:52 |
@wiking | just vim | 16:52 |
@wiking | :> | 16:52 |
@wiking | ok yeeeey | 17:00 |
@wiking | fixed | 17:00 |
@wiking | only java and c# is left | 17:01 |
@wiking | :DDDD | 17:01 |
gf712 | what is fixed? | 17:01 |
gf712 | your massive pr? | 17:01 |
gf712 | what's left to do? | 17:01 |
@wiking | yes | 17:04 |
@wiking | but c# and java is still cryin | 17:04 |
@wiking | g | 17:04 |
@wiking | gf712: in ruby swig | 17:06 |
@wiking | https://dev.azure.com/shogunml/shogun/_build/results?buildId=1227&view=logs&jobId=ce545db6-3633-5ac2-98dc-e1c37a5d2f09&taskId=955d0d88-f39c-597d-e1a9-d3455114b125&lineStart=914&lineEnd=915&colStart=1&colEnd=1 | 17:06 |
@wiking | there's this same error | 17:06 |
@wiking | as if its msvc | 17:06 |
@wiking | no member named isfinite in std | 17:06 |
@wiking | ttyl | 17:07 |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 17:07 | |
-!- wiking [~wiking@2001:67c:10ec:5784:8000::3ff] has joined #shogun | 17:20 | |
-!- wiking [~wiking@2001:67c:10ec:5784:8000::3ff] has quit [Changing host] | 17:20 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 17:20 | |
-!- mode/#shogun [+o wiking] by ChanServ | 17:20 | |
gf712 | wiking: I am not sure what causes the ruby issue | 17:41 |
@wiking | yeah | 17:41 |
@wiking | me neither | 17:41 |
@wiking | as it uses clang | 17:41 |
@wiking | :D | 17:41 |
gf712 | but you can include <cmath> in swig and I am sure it will work | 17:41 |
@wiking | i did include it in there (converter.h) | 17:42 |
@wiking | did not help | 17:42 |
@wiking | :P | 17:42 |
gf712 | what about in swig? | 17:42 |
gf712 | %{#include <cmath> %} | 17:42 |
@wiking | oooooh motherasdf | 17:42 |
@wiking | . /home/wiking/shogun/src/shogun/io/serialization/BitserySerializer.h:19: Error: Syntax error - possibly a missing semicolon. | 17:42 |
@wiking | for void write(Some<CSGObject> object) noexcept(false) override; | 17:42 |
@wiking | :( | 17:42 |
gf712 | wat? | 17:43 |
@wiking | swig doesn't like noexcept(false) override | 17:43 |
@wiking | :D | 17:43 |
gf712 | oh... | 17:43 |
@wiking | so it's back to virtual | 17:44 |
@wiking | :) | 17:44 |
gf712 | are the methods that already use noexcept not included in swig? | 17:44 |
gf712 | the ones in sgobject.h | 17:44 |
@wiking | they are | 17:44 |
@wiking | buit there's no override ther | 17:44 |
@wiking | :P | 17:44 |
gf712 | or is the issue the ovveride | 17:45 |
gf712 | right | 17:45 |
gf712 | oh | 17:45 |
@wiking | it's only the override keyword that makes it fail | 17:45 |
gf712 | but that should be fixed | 17:45 |
@wiking | there's swig 4.0.0 beta | 17:45 |
gf712 | in the new siwg | 17:45 |
@wiking | yeah | 17:45 |
gf712 | I had that issue in a different project | 17:45 |
gf712 | but it doesn't work for all combinations of qualifiers | 17:46 |
@wiking | argh | 17:50 |
@wiking | SGObject.java:64: error: incompatible types: JsonDeserializer cannot be converted to SWIGTYPE_p_shogun__io__CDeserializer | 17:50 |
@wiking | :S | 17:50 |
gf712 | well that sucks :D | 17:54 |
gf712 | doesn't inheritance work? | 17:54 |
@wiking | one woudl hope | 17:55 |
gf712 | wiking: just had a look at the stl implementation of isfinite, and it returns true whenever it is an int | 18:10 |
gf712 | I guess can have an overload set for msvc | 18:11 |
-!- geektoni [5d2045c3@gateway/web/freenode/ip.93.32.69.195] has quit [Ping timeout: 256 seconds] | 18:17 | |
@wiking | gf712: stilll here? | 18:19 |
@wiking | because this part i dont get from mSvc | 18:19 |
@wiking | https://dev.azure.com/shogunml/shogun/_build/results?buildId=1235&view=logs&jobId=9ffa40d6-0008-5f71-b4ad-2956145303e6&taskId=4c6a8d5c-d9f7-5d77-51f8-d43faa094742&lineStart=1894&lineEnd=1895&colStart=1&colEnd=1 | 18:19 |
@wiking | https://github.com/shogun-toolbox/shogun/pull/4573/files#diff-30c7a22fd9dc922ec65bf29a93db7688R52 | 18:20 |
-!- gf712 [9052087a@gateway/web/freenode/ip.144.82.8.122] has quit [Ping timeout: 256 seconds] | 18:23 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 18:28 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 18:49 | |
-!- mode/#shogun [+o wiking] by ChanServ | 18:49 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 19:57 | |
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun | 20:03 | |
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Changing host] | 20:03 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 20:03 | |
-!- mode/#shogun [+o wiking] by ChanServ | 20:03 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 20:49 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 20:51 | |
-!- mode/#shogun [+o wiking] by ChanServ | 20:51 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 21:17 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 21:29 | |
-!- mode/#shogun [+o wiking] by ChanServ | 21:29 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 246 seconds] | 21:33 | |
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun | 22:00 | |
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Changing host] | 22:00 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 22:00 | |
-!- mode/#shogun [+o wiking] by ChanServ | 22:00 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 23:21 | |
--- Log closed Thu Apr 18 00:00:41 2019 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!