Hi.
Already have the necessary changes in git.
https://github.com/ceph/ceph/commit/86926c6089d63014dd770b4bb61fc7aca3998542

2014-10-23 16:42 GMT+04:00 Paweł Sadowski <[email protected]>:

> On 10/23/2014 09:10 AM, Paweł Sadowski wrote:
> > Hi,
> >
> > I was trying to determine performance impact of deep-scrubbing with
> > osd_disk_thread_ioprio_class option set but it looks like it's ignored.
> > Performance (during deep-scrub) is the same with this options set or
> > left with defaults (1/3 of "normal" performance).
> >
> >
> > # ceph --admin-daemon /var/run/ceph/ceph-osd.26.asok config show  | grep
> > osd_disk_thread_ioprio
> >   "osd_disk_thread_ioprio_class": "idle",
> >   "osd_disk_thread_ioprio_priority": "7",
> >
> > # ps -efL | grep 'ce[p]h-osd --cluster=ceph -i 26' | awk '{ print $4; }'
> > | xargs --no-run-if-empty ionice -p | sort | uniq -c
> >      18 unknown: prio 0
> >     186 unknown: prio 4
> >
> > # cat /sys/class/block/sdf/queue/scheduler
> > noop deadline [cfq]
> >
> > And finallyGDB:
> >
> > Breakpoint 1, ceph_ioprio_string_to_class (s=...) at
> > common/io_priority.cc:48
> > warning: Source file is more recent than executable.
> > 48        return IOPRIO_CLASS_IDLE;
> > (gdb) cont
> > Continuing.
> >
> > Breakpoint 2, OSD::set_disk_tp_priority (this=0x3398000) at
> osd/OSD.cc:8548
> > warning: Source file is more recent than executable.
> > 8548      disk_tp.set_ioprio(cls,
> > cct->_conf->osd_disk_thread_ioprio_priority);
> > (gdb) print cls
> > $1 = -22
> >
> > So the IO priorities are *NOT*set (cls >= 0). I'm not sure where this
> > -22 came from.Any ideas?
> > In the mean time I'll compile ceph from sources and check again.
> >
> >
> >
> > Ceph installed from Ceph repositories:
> >
> > # ceph-osd -v
> > ceph version 0.86 (97dcc0539dfa7dac3de74852305d51580b7b1f82)
> >
> > # apt-cache policy ceph
> > ceph:
> >   Installed: 0.86-1precise
> >   Candidate: 0.86-1precise
> >   Version table:
> >  *** 0.86-1precise 0
> >         500 http://eu.ceph.com/debian-giant/ precise/main amd64 Packages
> >         100 /var/lib/dpkg/status
>
> Following patch corrects problem:
>
> diff --git a/src/common/io_priority.cc b/src/common/io_priority
> index b9eeae8..4cd299a 100644
> --- a/src/common/io_priority.cc
> +++ b/src/common/io_priority.cc
> @@ -41,7 +41,7 @@ int ceph_ioprio_set(int whence, int who, int
>
>  int ceph_ioprio_string_to_class(const std::string& s)
>  {
> -  std::string l;
> +  std::string l(s);
>    std::transform(s.begin(), s.end(), l.begin(), ::tolower);
>
>    if (l == "idle")
>
>
> # ps -efL | grep 'ce[p]h-osd --cluster=ceph -i 26' | awk '{ print $4; }'
> | xargs --no-run-if-empty ionice -p | sort | uniq -c
>       1 idle
>       4 unknown: prio 0
>     183 unknown: prio 4
>
> Change to *best effort* (ceph tell osd.26 injectargs
> '--osd_disk_thread_ioprio_class be')
>
> # ps -efL | grep 'ce[p]h-osd --cluster=ceph -i 26' | awk '{ print $4; }'
> | xargs --no-run-if-empty ionice -p | sort | uniq -c
>       1 best-effort: prio 7
>       4 unknown: prio 0
>     183 unknown: prio 4
>
>
> --
> PS
> _______________________________________________
> ceph-users mailing list
> [email protected]
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>



-- 
С уважением, Фасихов Ирек Нургаязович
Моб.: +79229045757
_______________________________________________
ceph-users mailing list
[email protected]
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

Reply via email to