-
Notifications
You must be signed in to change notification settings - Fork 31
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
generation finalisation #18
Conversation
@nopeslide Sorry for the late reply. My 5 cents :) I can see that you are using a doubly linked list. Is there any benefit from that? Maybe for variadic inputs? But even if its variadic, we have in the Node the I like having the Lets imagine we call an operator, and we need some input tensor for calculating whatever. We have the As I previously explained in #17 I don't think we need to wrap the NodeProto, just add the TensorProto inputs/outputs pointers and thats all the information we need. Perhaps you can hardcode the mnist model to make it work with this code so we can see it in action. I will try to implement my version presented in #17 also. Cheers! |
I intented to use it for managing objects created by us (global inputs, global outputs, contexts).
the
either by position as before: operator_status
operator_add( operator_context *ctx )
{
//various access variants or the same ctx pointer
Onnx__TensorProto *A = ((operator_context_add*)ctx)->input->A;
Onnx__TensorProto *A = ((operator_context_input_add*)(ctx->input))->A;
Onnx__TensorProto *A = ctx->input[0];
}
the only 'extra' thing I did was creating an order list for the attributes, so we can access them by position (over structs or array) and not by searching. that's the thing I wanted to show to you :D
Will do, just wanted to show you what I meant.
|
8cc2361
to
ee7a016
Compare
Just thought that we could also generate the files included inside Quite useful also if someone wants to implement an operator. If the file and function is already in place (but empty) would be easier for someone without much knowledge of the code to implement and operator. We can abstract them from the complexity of running the Python script and so on. I like keeping the PRs short, so maybe we can have a new one for this small feature instead of adding it to this one. |
604c51d
to
19a50ea
Compare
windows seems to have the same problems as mac :/ |
- renamed check structure to info structure - added info struct to operator sets - added info&resolver for operator stub
the formatting destroys ascii drawings
- simplified generation scripts - removed SanityChecks generation it is already covered by operator info and static testing functions
- check/no_check, replaced by info - info_header/no_info_header removed, merged into header - info_src/no_info_src renamed to info/no_info
some operators have the same tensord in input and output which lead to name/redefinition conflicts
closed in favor to #34 |
TODO