Re: Object creation in librbd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



All the various types of IO operations against backing objects are all confined within AioObjectRequest.cc. At a high-level, the IO will follow this path:

fio -> librbd AIO API -> librbd AioImageRequestWQ [1] -> librbd AioImageRequest (-> osdc ObjectCacher [2] -> librbd LibrbdWriteback [3]) -> AioObjectRequest -> librados -> OSDs -> librados AIO callback [4] (-> librbd LibrbdWriteback -> osdc ObjectCacher-> [3]) librbd AioCompletion -> fio.

[1] IO enters a work queue unless 'rbd_non_blocking_aio' configuration option set to false. This option will eventually be removed once librados is updated to ensure AIO operations cannot block (for extended periods of time) to avoid the context switch on IO submission.
[2] If librbd cache is enabled, the fio IO operation will be immediately completed here if 'rbd_cache_writethrough_until_flush' is set to false or if fio is configured to send syncs).
[3] The librbd cache is single-threaded so high queue-depths can result in a bottleneck here.
[4] librados AIO callbacks are currently single-threaded so high queue depths can result in a bottleneck here.


On Tue, Jul 12, 2016 at 3:42 AM, Wido den Hollander <wido@xxxxxxxx> wrote:

> Op 12 juli 2016 om 0:28 schreef Mansour Shafaei Moghaddam <mansoor.shafaei@xxxxxxxxx>:
>
>
> Can anyone explain or at least refer to the lines of the codes in librd by
> which objects are created? I need to know the relation between objects and
> fio's iodepth...

Objects are not created in librados, you just write to them and they start to exist.

So librbd simply issues a write() to RADOS regardless of the object's existence.

Wido

>
> Thanks in advance
> _______________________________________________
> ceph-users mailing list
> ceph-users@xxxxxxxxxxxxxx
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com



--
Jason
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux