-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Enable "small file" data to be excluded from L2ARC #11761
Comments
This was actually a change we discussed making to the default behavior in the original implementation. It looks like it was never included in the finalized version, however I think it's still a good idea. Specifically, any block which is stored on a dedicated "special allocation class" vdev should not be written to the L2ARC. For anyone interested in picking up this work it looks pretty straight forward. We'd want to update the |
Special allocation class or dedup vdevs may have roughly the same performance as L2ARC vdevs. Introduce a new tunable to exclude those buffers from being cacheable on L2ARC. Reviewed-by: Don Brady <don.brady@delphix.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: George Amanakis <gamanakis@gmail.com> Closes #11761 Closes #12285
Special allocation class or dedup vdevs may have roughly the same performance as L2ARC vdevs. Introduce a new tunable to exclude those buffers from being cacheable on L2ARC. Reviewed-by: Don Brady <don.brady@delphix.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: George Amanakis <gamanakis@gmail.com> Closes openzfs#11761 Closes openzfs#12285
Describe the feature would like to see added to OpenZFS
I believe it would be useful to have a per-pool flag to disable placing data residing in a Small File VDEV into the L2ARC.
How will this feature improve OpenZFS?
The use case for this feature is when both L2ARC and Small Files are kept on SSDs of a similar performance. Under these circumstances, the time to get the data from L2ARC is similar to the time to get the data from the Small File VDEV. By not allowing Small File data into the L2ARC, it becomes more able to cache data from spinning disk.
In addition, the L2ARC segment size will be more consistent. By removing the smallest files from consideration for L2ARC, the average block size will increase, causing less memory to be used for L2ARC headers.
The text was updated successfully, but these errors were encountered: