-
Notifications
You must be signed in to change notification settings - Fork 1
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
Iterators #10
Comments
I have yet to understand the exact differences between iterators and indices, but my experience tought me that while indices are convenient, they don't perform very well. Thus whenever a user needs to add a new algorithm involving iteration over an entire tensor, being able to use iterators may yield vastly better performance. |
I was thinking of users who only need built-in functions. Also there is a discussion comparing iterator-based approaches versus ranges discussion1 and discussion2. So maybe we could design multidimensional ranges instead of multidimensional iterators? In case of new algorithm, pointers and iterators are definitely advantageous. Actually this is part of my dissertation and I have published and discussed runtime results of different implementations of entry-wise tensor operations in LNCS 10860. I'll link the paper as soon as it is online. So I think we can use my findigs here. |
Very good ! So to come back to your original question: Are you wondering whether / how to expose iterators to users ? Perhaps we can frame the question as "how to extend ublas with custom algorithms ?". |
Yes. In other words, what API layer / data structure should provide iterators?
|
I am not sure if iterators need to be visible for the user of the library. Does a physicist or mathematician want to deal with iterators instead of indices?
The text was updated successfully, but these errors were encountered: