Skip to content
This repository has been archived by the owner on Jan 11, 2022. It is now read-only.

[manyblock mode] why is "act_out" in "nv_wavenet_persistent_GEMM_MxK" necessary? #81

Open
isaacleeai opened this issue Dec 4, 2018 · 1 comment

Comments

@isaacleeai
Copy link

isaacleeai commented Dec 4, 2018

since we are storing the same values in the last layer of "accum_in", and we are actually using "accum_in" to pass values from skip_block to Zs block, Zs block to Za block, and Za to softmax, why do we even have act_out? Please tell me if I am wrong, but it seems unnecessary.

@isaacleeai
Copy link
Author

isaacleeai commented Dec 6, 2018

Commented out this single line in nv_wavenet_persistent_GEMM_MxK in nv_wavenet_persistent.cuh
act_out[layer*ldc + row] = accum[0];
and ran nv_wavenet_test for manyblock with batch_size = 0, R = 64, A = 256, S = 256, num_layers = 16 ( with comparing Za and Zs commented out as well )
Except for not checking Za and Zs, everything else was correct, in manyblock mode ( but since persistent is almost like manyblock, they should both work, although I can't test persistent on the GPU I have ).
It seems like act_out is unnecessary... Let me know what you think!

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

No branches or pull requests

1 participant