Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stream usage for backpropagation or softmax usage? #32

Closed
jyoung3131 opened this issue Mar 8, 2017 · 1 comment
Closed

Stream usage for backpropagation or softmax usage? #32

jyoung3131 opened this issue Mar 8, 2017 · 1 comment
Labels

Comments

@jyoung3131
Copy link

We've been using MKL-DNN to implement a simple CNN, but we had a somewhat basic question about doing the softmax error calculation and backpropagation.

Should we use separate streams for different phases of execution, or do we add backpropagation primitives to our existing forward path stream? It's somewhat unclear from the unit tests in the codebase and there don't seem to be any relevant examples in the Intel caffe branch.

Thanks,
Jeff

@rsdubtso
Copy link

rsdubtso commented Mar 9, 2017

Hi Jeff,

In general you'd have to split execution into multiple streams when you have some non-mkl-dnn computations that need to happen in-between two primitives. For example, the loss computations will have to happen after the forward pass, and mkl-dnn currently has no loss primitive. This means that all forward propagation computations will have to be executed in one stream / set of streams, and backward propagation -- in another.

Hope this helps,
Roma

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants