Skip to content
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

Tracking issues of Buffer migration #4452

Closed
14 tasks done
Tracked by #4495
Xuanwo opened this issue Apr 9, 2024 · 3 comments
Closed
14 tasks done
Tracked by #4495

Tracking issues of Buffer migration #4452

Xuanwo opened this issue Apr 9, 2024 · 3 comments

Comments

@Xuanwo
Copy link
Member

Xuanwo commented Apr 9, 2024

Recently, OpenDAL has transitioned its I/O traits to a Buffer-based approach, which is optimized for both contiguous and non-contiguous bytes input. Additionally, the new Buffer facilitates vectored I/O and is io_uring compatible, enhancing prospects for future development.

However, some code paths convert Buffer back into Bytes, resulting in additional allocations, unnecessary copying, and increased memory usage, thereby negating all the advantages of using Buffer.

This tracking issue addresses all Buffer-related issues. Please comment if you identify any other cases that might cause regression.

All tasks are easy and good-first-issues, please jump in for details.

Tasks

Related

@George-Miao
Copy link
Contributor

Is there any particular reason why implementing Iterator directly for Buffer instead of IntoIterator, iter and iter_mut?

@Xuanwo
Copy link
Member Author

Xuanwo commented Apr 13, 2024

Is there any particular reason why implementing Iterator directly for Buffer instead of IntoIterator, iter and iter_mut?

No, this is just for easy implementation. I can't expose to expose too many types to user. We can refine this part later if users find it unsatisfactory.

@Xuanwo
Copy link
Member Author

Xuanwo commented Apr 27, 2024

All task has been finised. Closing...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants