-
Notifications
You must be signed in to change notification settings - Fork 92
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
new compiler flag for storage order #16
base: master
Are you sure you want to change the base?
Conversation
example.cpp -
|
Sorry, I am struggling with this one. Could you help out? The convolutions do memory copies... |
I thought this was a good idea for quicker inference or perhaps training without transposing the dataset, but it seems a lot of work... |
Yeah, my feeling is that transposing the data set is a much cheaper operation than the training and prediction process. Some of the internal operators are indeed hard-coded using the column-based storage, so it may involve a lot of work to refactor everything inside... |
Thanks for the feedback. I think you are right. |
Hi
This is a bit along the same lines as the last PR, but with storage order. I noticed there were a lot of Matrix and Vector typedefs, so I pulled them all together into Config.h, and then decided it would be nice to be able to define storage order, i.e. row or column major, at compile time.
So there's a new compiler flag MDNN_ROWMAJOR that if set to 1 will mean matrices will be row-major.
Test: (I'll attach the mostly unchanged example.cpp for convenience)