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

Merge Spectra Logic's optimizations to the DMU #1738

Closed
Rudd-O opened this issue Sep 19, 2013 · 4 comments
Closed

Merge Spectra Logic's optimizations to the DMU #1738

Rudd-O opened this issue Sep 19, 2013 · 4 comments
Labels
Type: Feature Feature request or new feature Type: Performance Performance improvement or performance problem

Comments

@Rudd-O
Copy link
Contributor

Rudd-O commented Sep 19, 2013

http://www.youtube.com/watch?v=LtY3vpX-cdM

@Ukko-Ylijumala
Copy link

Published on May 19, 2012

Optimizing ZFS for Block Storage

The ZFS file system has been heavily tuned for workloads where file rewrite activity is minimal or is aligned and sized to match ZFS's native record size. Exporting ZFS storage to block consumers, however, presents a situation where every write is rewriting an existing block, and unaligned writes incur a performance killing synchronous read.

This paper and talk presents Spectra Logic's optimizations to ZFS's data management layer (DMU) to convert the majority of these synchronous reads to be asynchronous and, for sequential access patterns, to avoid them entirely. We also describe a new scheme that allows concurrent reads to be issued through the DMU without the need to allocate a thread context for each I/O. The result, as implemented and tested using the FreeBSD operating system, is up to a five fold performance increase for unaligned write workloads and a three fold improvement for random read workloads.

Interesting. This has relevance in the context of bug #361, and maybe also #824.

However, this is already covered by #1074.

@behlendorf
Copy link
Contributor

This code has been around for some time and it's absolutely a good idea. However, Spectra Logic's optimizations haven't yet made it in to FreeBSD proper or Illumos. Someone needs to spend the time to gather up their changes and post them in a form they can be reviewed and tested.

@Rudd-O
Copy link
Contributor Author

Rudd-O commented Oct 7, 2013

OK, so they haven't been merged. I'll retitle this issue.

@behlendorf behlendorf added Type: Feature Feature request or new feature Difficulty - Hard labels Oct 29, 2014
@behlendorf behlendorf removed this from the 0.7.0 milestone Oct 29, 2014
@behlendorf
Copy link
Contributor

Closing, these changes were never push upstream and aren't available for us to include.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Feature Feature request or new feature Type: Performance Performance improvement or performance problem
Projects
None yet
Development

No branches or pull requests

3 participants