combining with np.lib.stride_tricks #236
Replies: 2 comments 3 replies
-
Computations work fine, but issues arise when you need to compute gradients. Overlapping elements produce overlapping (conflicting) writes during backpropagation. That's the main reason why in DL frameworks strides are either not exposed to user or explicitly discouraged. I suppose that in some hardware architectures (where memory can accumulate lock-free) this isn't an issue, but for GPU/TPU this is a problem. |
Beta Was this translation helpful? Give feedback.
-
Take a look at this: |
Beta Was this translation helpful? Give feedback.
-
Hello Alex, great work!
Is there issues with using
einops
with tensors, overlapping in memory? I seeworks pretty well. With such a feature one can implement nearly any DL matrix operation
einsum
+einops
based. I suggest it is good opportunity for uniform NN representation, probably competitor foronnx
.Alexey Birukov
Beta Was this translation helpful? Give feedback.
All reactions