pluskid / Mocha.jl

Deep Learning framework for Julia
Other
1.29k stars 254 forks source link

Fix unit tests and deprecations on Julia v0.6 #230

Closed rdeits closed 7 years ago

rdeits commented 7 years ago

This PR fixes all of the unit tests on Julia v0.6 (as of today's release-0.6 branch). It also fixes all of the outstanding deprecation warnings except for a few relating to produce() and consume() which I don't understand well enough to fix yet.

Notable changes:

This does not fix:

pluskid commented 7 years ago

Thank you very much!! It seems some of the unit tests on Travis CI is breaking. Could you have a look?

rdeits commented 7 years ago

Sure! My most recent commit should fix v0.5 support. The test errors on v0.6 will be fixed with: https://github.com/kmsquire/Logging.jl/pull/54 and I've updated the .travis.yml temporarily to try out my branch of Logging.jl

rdeits commented 7 years ago

Hmm, the Julia v0.5 tests are stalling out. I'm not sure what's going on there. On the other hand, the v0.6 tests are running much faster than before.

Could this be due to the randomness inside the test functions? Would you consider fixing the random number seed to get more consistent test behavior?

rdeits commented 7 years ago

The Travis build on v0.5 is consistently getting stuck here:

-- Testing ChannelPooling(Mocha.Pooling.Max) on Mocha.CPUBackend{Float64}...
    > Setup (pool along dimension 1 for 6-D tensors)
    > Forward

perhaps it's using enough memory to force the Travis VM to swap and thrash?

pluskid commented 7 years ago

Yes Pooling with 6D inputs takes a bit longer to run. Let's wait a bit since the nightly test has already passed. It should be ready to be merged once the 0.5 test pasts!

rdeits commented 7 years ago

How do you want to handle the changes to Logging.jl? I don't know how long it will take for that PR to be merged.

rdeits commented 7 years ago

It might be possible to replacing the use of Logging.jl with the new built-in logging capabilities in Julia v0.6: https://github.com/JuliaLang/julia/pull/16213

pluskid commented 7 years ago

Yes, it is a bit tricky. We can merge this PR first and then either try to push the Logging PR to be merged or as you mentioned, try to use the built-in logging capability. Do you know when is the planned release for Julia v0.6?

rdeits commented 7 years ago

Soon, hopefully :)

By the way, one reason that the v0.5 tests are so slow could be the coverage tracking. @tkoolen and I have noticed that running tests with coverage=true is much faster on v0.6 than v0.5, especially on Travis.