From: Rik van Riel <riel@redhat.com>
To: Khalid Aziz <khalid.aziz@oracle.com>,
tglx@linutronix.de, corbet@lwn.net, mingo@redhat.com,
hpa@zytor.com, peterz@infradead.org, akpm@linux-foundation.org,
rientjes@google.com, ak@linux.intel.com, mgorman@suse.de,
raistlin@linux.it, kirill.shutemov@linux.intel.com,
atomlin@redhat.com, avagin@openvz.org, gorcunov@openvz.org,
serge.hallyn@canonical.com, athorlton@sgi.com, oleg@redhat.com,
vdavydov@parallels.com, daeseok.youn@gmail.com,
keescook@chromium.org, yangds.fnst@cn.fujitsu.com,
sbauer@eng.utah.edu, vishnu.ps@samsung.com, axboe@fb.com,
paulmck@linux.vnet.ibm.com
Cc: linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org,
linux-api@vger.kernel.org
Subject: Re: [PATCH v3] sched/fair: Add advisory flag for borrowing a timeslice
Date: Tue, 25 Nov 2014 12:45:57 -0500 [thread overview]
Message-ID: <5474C055.8070409@redhat.com> (raw)
In-Reply-To: <5474BADC.5030808@oracle.com>
On 11/25/2014 12:22 PM, Khalid Aziz wrote:
> On 11/25/2014 08:25 AM, Rik van Riel wrote:
>> On 11/25/2014 09:52 AM, Khalid Aziz wrote:
>>> On 11/24/2014 07:03 PM, Rik van Riel wrote:
>>>> -----BEGIN PGP SIGNED MESSAGE-----
>>>> Hash: SHA1
>>>>
>>>> On 11/24/2014 03:56 PM, Khalid Aziz wrote:
>>>>> sched/fair: Add advisory flag for borrowing a timeslice
>>>>>
>>>>> This patch adds a way for a task to request to borrow one
>>>>> timeslice from future if it is about to be preempted, so it could
>>>>> delay preemption and complete any critical task it is in the middle
>>>>> of.
>>>>>
>>>>> This feature helps with performance on databases and has been used
>>>>> for many years on other OSs by the databases. This feature helps in
>>>>> situation where a task acquires a lock before performing a critical
>>>>> operation on the database and happens to get preempted
>>>>
>>>> Why don't the other tasks that want the lock sleep on the
>>>> lock?
>>>>
>>>> I can see this "solution" help mostly with userspace spinlocks,
>>>> which are relics of a past era that need to die. There is no
>>>> way userspace spinlocks will not fail miserably on virtual
>>>> machines, and it is time to get rid of them.
>>>
>>> This solution indeed is for userspace spinlocks. Database code has been
>>> written with all critical locking implemented in userspace (as I have
>>> been told by database folks. I am not a database guy).
>>
>> They should fix that.
>
> Agreed, but that is a very large task for databases for sure and
> potentially for java as well (think exhaustive testing as well besides
> code re-write). I do not see this happening except as part of major
> re-architecture. In the mean time, if we can give them help without
> impacting kernel significantly for other users, it only makes Linux a
> more usable platform for them.
I am not convinced that permanently adding overhead to the
Linux scheduler in order to deal with a temporary problem in
database and Java software (probably not every JVM, either!)
is a worthwhile trade-off..
next prev parent reply other threads:[~2014-11-25 17:45 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-24 20:56 [PATCH v3] sched/fair: Add advisory flag for borrowing a timeslice (was: Pre-emption control for userspace) Khalid Aziz
2014-11-24 22:43 ` Andi Kleen
[not found] ` <20141124224302.GL10824-KWJ+5VKanrL29G5dvP0v1laTQe2KTcn/@public.gmane.org>
2014-11-24 23:20 ` Khalid Aziz
2014-11-24 23:20 ` Khalid Aziz
2014-11-24 23:35 ` Thomas Gleixner
2014-11-25 2:12 ` Davidlohr Bueso
2014-11-25 2:12 ` Davidlohr Bueso
2014-11-25 4:20 ` Mike Galbraith
[not found] ` <1416889208.4335.127.camel-sZ+7a5bGyC/1wTEvPJ5Q0F6hYfS7NtTn@public.gmane.org>
2014-11-25 14:50 ` [PATCH v3] sched/fair: Add advisory flag for borrowing a timeslice Khalid Aziz
2014-11-25 14:50 ` Khalid Aziz
2014-11-25 17:46 ` Mike Galbraith
[not found] ` <1416937564.3512.15.camel-sZ+7a5bGyC/1wTEvPJ5Q0F6hYfS7NtTn@public.gmane.org>
2014-11-25 19:38 ` Khalid Aziz
2014-11-25 19:38 ` Khalid Aziz
2014-11-25 14:45 ` Khalid Aziz
[not found] ` <54749617.5030309-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2014-11-25 18:27 ` Davidlohr Bueso
2014-11-25 18:27 ` Davidlohr Bueso
2014-11-25 19:23 ` Khalid Aziz
[not found] ` <5474D71E.8070603-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2014-11-25 19:40 ` Davidlohr Bueso
2014-11-25 19:40 ` Davidlohr Bueso
2014-11-25 2:03 ` [PATCH v3] sched/fair: Add advisory flag for borrowing a timeslice (was: Pre-emption control for userspace) Rik van Riel
2014-11-25 6:30 ` Davidlohr Bueso
2014-11-25 13:38 ` Rik van Riel
2014-11-25 14:52 ` [PATCH v3] sched/fair: Add advisory flag for borrowing a timeslice Khalid Aziz
2014-11-25 15:25 ` Rik van Riel
[not found] ` <54749F77.50905-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-11-25 17:22 ` Khalid Aziz
2014-11-25 17:22 ` Khalid Aziz
2014-11-25 17:45 ` Rik van Riel [this message]
[not found] ` <1416862595-24513-1-git-send-email-khalid.aziz-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2014-11-25 10:12 ` [PATCH v3] sched/fair: Add advisory flag for borrowing a timeslice (was: Pre-emption control for userspace) Srikar Dronamraju
2014-11-25 10:12 ` Srikar Dronamraju
2014-11-25 14:56 ` [PATCH v3] sched/fair: Add advisory flag for borrowing a timeslice Khalid Aziz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5474C055.8070409@redhat.com \
--to=riel@redhat.com \
--cc=ak@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=athorlton@sgi.com \
--cc=atomlin@redhat.com \
--cc=avagin@openvz.org \
--cc=axboe@fb.com \
--cc=corbet@lwn.net \
--cc=daeseok.youn@gmail.com \
--cc=gorcunov@openvz.org \
--cc=hpa@zytor.com \
--cc=keescook@chromium.org \
--cc=khalid.aziz@oracle.com \
--cc=kirill.shutemov@linux.intel.com \
--cc=linux-api@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=oleg@redhat.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=peterz@infradead.org \
--cc=raistlin@linux.it \
--cc=rientjes@google.com \
--cc=sbauer@eng.utah.edu \
--cc=serge.hallyn@canonical.com \
--cc=tglx@linutronix.de \
--cc=vdavydov@parallels.com \
--cc=vishnu.ps@samsung.com \
--cc=yangds.fnst@cn.fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.