Hi,

Both swift[1] and gluster-swift[2] calls posix_fadvise64()  with
POSIX_FADV_DONTNEED
right after calling fdatasync() or fsync(). This is only performed during
object PUT operation
(writing an object to disk) suggesting the kernel that the data written is
no longer needed
with the hopes that cached pages that are more useful are not discarded
instead.

[1]:
https://github.com/openstack/swift/blob/2105ad2a7f6e56cabea0e0b71c5cae94088fd597/swift/common/utils.py#L833
[2]:
https://github.com/gluster/gluster-swift/blob/master/gluster/swift/obj/diskfile.py#L300

On Fri, Aug 11, 2017 at 10:17 AM, Raghavendra Gowdappa <rgowd...@redhat.com>
wrote:

> Hi all,
>
> In a conversation between me, Milind and Csaba, Milind pointed out
> fadvise(2) [1] and its potential benefits to Glusterfs' caching translators
> like read-ahead etc. After discussing about it, we agreed that our
> performance translators can leverage the hints to provide better
> performance. Now the question is how commonly applications actually provide
> hints? Is it something that is used quite frequently? If yes, we can think
> of implementing this in glusterfs (probably kernel-fuse too?). If no, there
> is not much of an advantage in spending our energies here. Your inputs will
> help us to prioritize this feature.
>
> [1] https://linux.die.net/man/2/fadvise
>
> regards,
> Raghavendra
> _______________________________________________
> Gluster-devel mailing list
> gluster-de...@gluster.org
> http://lists.gluster.org/mailman/listinfo/gluster-devel
>
_______________________________________________
Gluster-users mailing list
Gluster-users@gluster.org
http://lists.gluster.org/mailman/listinfo/gluster-users

Reply via email to