Skip to content
Discussion options

You must be logged in to vote

My current understanding is that there are two types of tensor operations: primitive (cannot be composed of other tensor ops) and non-primitive (more complex tensor ops that are computed using other primitive and non-primitive tensor ops).

It's a bit more nuanced than that.

Primitive ops must be implemented by backends and non-primitive ops have default implementations built from primitives.

Some ops have a default implementation that can be overridden by backends for performance.

For det(), I don't think you would write an actual kernel for that. It would likely be composed of other linalg ops to compute the determinant, such as LU decomposition. LU decomposition in tensor::linalg curr…

Replies: 2 comments 1 reply

Comment options

You must be logged in to vote
1 reply
@softmaximalist
Comment options

Comment options

You must be logged in to vote
0 replies
Answer selected by softmaximalist
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
3 participants