juice
juice copied to clipboard
CUDNN Bidirectional Fails
Summary
RNN Forward fails with CUDNN RNN when using Bidirectional as a direction mode as compared to Unidirectional.
Code Snippet
net_cfg.add_layer(LayerConfig::new(
// Layer name is only used internally - can be changed to anything
"LSTMInitial",
RnnConfig {
hidden_size: 5,
num_layers: 1,
dropout_seed: 123,
dropout_probability: 0.5,
rnn_type: RnnNetworkMode::LSTM,
input_mode: RnnInputMode::LinearInput,
direction_mode: DirectionMode::BiDirectional,
},
));
Command & Error
C:/Users/Lissa/.cargo/bin/cargo.exe +stable run --color=always --no-default-features --features cuda,native train --file=NetworkOut.juice
warning: Running bindgen(cublas-sys), make sure to have all required host libs installed!
warning: Running bindgen(cudnn-sys), make sure to have all required host libs installed!
Compiling example-rnn-regression v0.0.1 (D:\BitBucket\juice\juice-examples\mackey-glass-rnn-regression)
Finished dev [unoptimized + debuginfo] target(s) in 44.77s
Running `target\debug\example-rnn-regression.exe train --file=NetworkOut.juice`
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Plugin(Plugin("Unable to perform RNN Forward"))', D:\BitBucket\juice\juice\src\layers\common\rnn.rs:206:9
Stacktrace
stack backtrace:
0: 0x7ff7fc53888f - backtrace::backtrace::trace_unsynchronized
at C:\Users\VssAdministrator\.cargo\registry\src\github.com-1ecc6299db9ec823\backtrace-0.3.46\src\backtrace\mod.rs:66
1: 0x7ff7fc53888f - std::sys_common::backtrace::_print_fmt
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\sys_common\backtrace.rs:78
2: 0x7ff7fc53888f - std::sys_common::backtrace::_print::{{impl}}::fmt
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\sys_common\backtrace.rs:59
3: 0x7ff7fc54e2bb - core::fmt::write
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libcore\fmt\mod.rs:1069
4: 0x7ff7fc5361cc - std::io::Write::write_fmt<std::sys::windows::stdio::Stderr>
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\io\mod.rs:1504
5: 0x7ff7fc53b70c - std::sys_common::backtrace::_print
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\sys_common\backtrace.rs:62
6: 0x7ff7fc53b70c - std::sys_common::backtrace::print
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\sys_common\backtrace.rs:49
7: 0x7ff7fc53b70c - std::panicking::default_hook::{{closure}}
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:198
8: 0x7ff7fc53b34f - std::panicking::default_hook
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:218
9: 0x7ff7fc53bef7 - std::panicking::rust_panic_with_hook
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:511
10: 0x7ff7fc53ba7f - std::panicking::begin_panic_handler
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:419
11: 0x7ff7fc54c250 - core::panicking::panic_fmt
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libcore\panicking.rs:111
12: 0x7ff7fc54c073 - core::option::expect_none_failed
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libcore\option.rs:1268
13: 0x7ff7fbfc94c0 - core::result::Result<(), coaster::error::Error>::unwrap<(),coaster::error::Error>
at C:\Users\Lissa\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\src\libcore\result.rs:1005
14: 0x7ff7fc13a933 - juice::layers::common::rnn::{{impl}}::compute_output<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>
at D:\BitBucket\juice\juice\src\layers\common\rnn.rs:206
15: 0x7ff7fc13ce61 - juice::layer::ILayer::forward<juice::layers::common::rnn::Rnn<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>,coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>
at D:\BitBucket\juice\juice\src\layer.rs:1096
16: 0x7ff7fc014163 - juice::layer::Layer<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>::forward<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>
at D:\BitBucket\juice\juice\src\layer.rs:558
17: 0x7ff7fc065569 - juice::layers::container::sequential::{{impl}}::forward<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>
at D:\BitBucket\juice\juice\src\layers\container\sequential.rs:301
18: 0x7ff7fc014163 - juice::layer::Layer<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>::forward<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>
at D:\BitBucket\juice\juice\src\layer.rs:558
19: 0x7ff7fc06d074 - juice::solver::Solver<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>, coaster::backend::Backend<coaster::frameworks::cuda::Cuda>>::train_minibatch<coaster::backend::Backend<coaster::frameworks::cuda::Cuda>,coaster::backend::Backend<coaster::fr
at D:\BitBucket\juice\juice\src\solver\mod.rs:79
20: 0x7ff7fc0697fd - example_rnn_regression::train
at D:\BitBucket\juice\juice-examples\mackey-glass-rnn-regression\src\main.rs:189
21: 0x7ff7fc06aeda - example_rnn_regression::main
at D:\BitBucket\juice\juice-examples\mackey-glass-rnn-regression\src\main.rs:265
22: 0x7ff7fc0613db - std::rt::lang_start::{{closure}}<()>
at C:\Users\Lissa\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\src\libstd\rt.rs:67
23: 0x7ff7fc53c10a - std::rt::lang_start_internal::{{closure}}
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\rt.rs:52
24: 0x7ff7fc53c10a - std::panicking::try::do_call
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:331
25: 0x7ff7fc53c10a - std::panicking::try
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:274
26: 0x7ff7fc53c10a - std::panic::catch_unwind
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panic.rs:394
27: 0x7ff7fc53c10a - std::rt::lang_start_internal
at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\rt.rs:51
28: 0x7ff7fc0613b3 - std::rt::lang_start<()>
at C:\Users\Lissa\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\src\libstd\rt.rs:67
29: 0x7ff7fc06af90 - main
30: 0x7ff7fd234b34 - invoke_main
at d:\agent\_work\4\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
31: 0x7ff7fd234b34 - __scrt_common_main_seh
at d:\agent\_work\4\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
32: 0x7ffc19376fd4 - BaseThreadInitThunk
33: 0x7ffc1b29cec1 - RtlUserThreadStart
error: process didn't exit successfully: `target\debug\example-rnn-regression.exe train --file=NetworkOut.juice` (exit code: 101)
Should also be covered by #139