Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758061AbYCYPuf (ORCPT ); Tue, 25 Mar 2008 11:50:35 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1756283AbYCYPuQ (ORCPT ); Tue, 25 Mar 2008 11:50:16 -0400 Received: from mail.gmx.net ([213.165.64.20]:57770 "HELO mail.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1756043AbYCYPuO (ORCPT ); Tue, 25 Mar 2008 11:50:14 -0400 X-Authenticated: #14349625 X-Provags-ID: V01U2FsdGVkX18ucD5Oz3Qu7O5jc3mifT9Vhdn7KvVCm8tEexLUj9 Y9hfI739ShOIPW Subject: Re: Scalability requirements for sysv ipc From: Mike Galbraith To: Manfred Spraul Cc: Linux Kernel Mailing List , paulmck@linux.vnet.ibm.com, Nadia Derbey , Andrew Morton , Peter Zijlstra In-Reply-To: <47E55945.10109@colorfullife.com> References: <47E382DB.70503@colorfullife.com> <47E3ADE3.4030304@bull.net> <47E3B924.3000304@colorfullife.com> <20080321141339.GB9618@linux.vnet.ibm.com> <47E3DD8C.4000904@colorfullife.com> <1206164608.3659.11.camel@marge.simson.net> <47E4DB06.3020003@colorfullife.com> <1206186832.4545.1.camel@marge.simson.net> <47E51637.8060102@colorfullife.com> <47E55945.10109@colorfullife.com> Content-Type: multipart/mixed; boundary="=-H4YYm13rQIKksfNKCWTS" Date: Tue, 25 Mar 2008 16:50:06 +0100 Message-Id: <1206460206.4414.21.camel@marge.simson.net> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Y-GMX-Trusted: 0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 26590 Lines: 377 --=-H4YYm13rQIKksfNKCWTS Content-Type: text/plain Content-Transfer-Encoding: 7bit On Sat, 2008-03-22 at 20:08 +0100, Manfred Spraul wrote: > just the normal performance of 2.6.25-rc3 is abyssimal, 55 to 60% slower > than 2.6.18.8: After manually reverting 3e148c79938aa39035669c1cfa3ff60722134535, 2.6.25.git scaled linearly, but as you noted, markedly down from earlier kernels with this benchmark. 2.6.24.4 with same revert, but all 2.6.25.git ipc changes piled on top still performed close to 2.6.22, so I went looking. Bisection led me to.. 8f4d37ec073c17e2d4aa8851df5837d798606d6f is first bad commit commit 8f4d37ec073c17e2d4aa8851df5837d798606d6f Author: Peter Zijlstra Date: Fri Jan 25 21:08:29 2008 +0100 sched: high-res preemption tick Use HR-timers (when available) to deliver an accurate preemption tick. The regular scheduler tick that runs at 1/HZ can be too coarse when nice level are used. The fairness system will still keep the cpu utilisation 'fair' by then delaying the task that got an excessive amount of CPU time but try to minimize this by delivering preemption points spot-on. The average frequency of this extra interrupt is sched_latency / nr_latency. Which need not be higher than 1/HZ, its just that the distribution within the sched_latency period is important. Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar :040000 040000 ab225228500f7a19d5ad20ca12ca3fc8ff5f5ad1 f1742e1d225a72aecea9d6961ed989b5943d31d8 M arch :040000 040000 25d85e4ef7a71b0cc76801a2526ebeb4dce180fe ae61510186b4fad708ef0211ac169decba16d4e5 M include :040000 040000 9247cec7dd506c648ac027c17e5a07145aa41b26 950832cc1dc4d30923f593ecec883a06b45d62e9 M kernel ..and I verified it via :-/ echo 7 > sched_features in latest. That only bought me roughly half though, so there's a part three in there somewhere. -Mike --=-H4YYm13rQIKksfNKCWTS Content-Disposition: attachment; filename=xxxx.pdf Content-Type: application/pdf; name=xxxx.pdf Content-Transfer-Encoding: base64 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 wTJ2RCLRQDSMDMFGeit9YH5u2WNiDCqZM604apyDR8mt0eQw3vwEb3Lxxhqehnr5/wHazRvMCmVu ZHN0cmVhbQplbmRvYmoKCjEzIDAgb2JqCjEyNTA3CmVuZG9iagoKMTQgMCBvYmoKPDwvVHlwZS9G b250RGVzY3JpcHRvci9Gb250TmFtZS9CQUFBQUErQWxiYW55QU1UCi9GbGFncyA0Ci9Gb250QkJv eFstMjIyIC0zMDYgMTA3MiAxMDM3XS9JdGFsaWNBbmdsZSAwCi9Bc2NlbnQgOTA1Ci9EZXNjZW50 IC0yMTEKL0NhcEhlaWdodCAxMDM3Ci9TdGVtViA4MAovRm9udEZpbGUyIDEyIDAgUj4+CmVuZG9i agoKMTUgMCBvYmoKPDwvTGVuZ3RoIDQxMC9GaWx0ZXIvRmxhdGVEZWNvZGU+PgpzdHJlYW0KeJxd k8FuozAQhu88hY/toQI7wbRShNQmjZRDd1eb9gEITFKkxiCHHPL29T8/uyvtAfTZnjHfjIZ8vdvs Qj/lv+LQ7mUyxz50US7DNbZiDnLqQ2ad6fp2mlf6bs/NmOUpd3+7THLeheOwWmX573R2meLN3D13 w0Hus/xn7CT24WTuPtb7tN5fx/FLzhImU2R1bTo5pnvemvFHc5Zcsx52XTrup9tDSvkX8H4bxThd W6q0QyeXsWklNuEk2aooarPabutMQvff2dIx5XBsP5uYQm0KLYqFrRM7sgMvyAvwkrwEl+QK7MlP 4Ipcgh/JBfiJ7MHP5Efwi7J7Ba/JG/BG2et3X8mau1WusG8LMvYt/R2+ZelfKdPfw8fS3+N+S3/3 AqZ/hXot/SvUaOnvlenv1mD6e/TK0t/rPv09emJnf/TEzv6o19Lfo15Hf78F09/Dx9Hfw8fN/dd4 +pcaT/8KdTn6L9ETR/8StTv6lxpD/xK1OPqXCx2MeQIwIpjhP6Nn2muMaex00HXeMGl9kL//wjiM yNLnGwq6zV0KZW5kc3RyZWFtCmVuZG9iagoKMTYgMCBvYmoKPDwvVHlwZS9Gb250L1N1YnR5cGUv VHJ1ZVR5cGUvQmFzZUZvbnQvQkFBQUFBK0FsYmFueUFNVAovRmlyc3RDaGFyIDAKL0xhc3RDaGFy IDQyCi9XaWR0aHNbNzUwIDU1NiA1NTYgNTU2IDU1NiA1NTYgNTU2IDU1NiA1NTYgNTU2IDU1NiAy NzcgMzMzIDUwMCAyNzcgNTAwCjUwMCAyNzcgNTU2IDU1NiA4MzMgNTgzIDMzMyAyNzcgNTU2IDI3 NyA1NTYgMjIyIDU1NiAyMjIgNTU2IDU1Ngo1NTYgNTAwIDU1NiA1ODMgNTU2IDU1NiA3MjIgNjY2 IDcyMiA2MTAgNjY2IF0KL0ZvbnREZXNjcmlwdG9yIDE0IDAgUgovVG9Vbmljb2RlIDE1IDAgUgo+ PgplbmRvYmoKCjE3IDAgb2JqCjw8L0YxIDE2IDAgUgo+PgplbmRvYmoKCjE4IDAgb2JqCjw8L0Zv bnQgMTcgMCBSCi9Qcm9jU2V0Wy9QREYvVGV4dF0KPj4KZW5kb2JqCgoxIDAgb2JqCjw8L1R5cGUv UGFnZS9QYXJlbnQgMTEgMCBSL1Jlc291cmNlcyAxOCAwIFIvTWVkaWFCb3hbMCAwIDc5MiA2MTJd L1N0cnVjdFBhcmVudHMgMAovR3JvdXA8PC9TL1RyYW5zcGFyZW5jeS9DUy9EZXZpY2VSR0IvSSB0 cnVlPj4vQ29udGVudHMgMiAwIFI+PgplbmRvYmoKCjE5IDAgb2JqCjw8L0NvdW50IDEvRmlyc3Qg MjAgMCBSL0xhc3QgMjAgMCBSCj4+CmVuZG9iagoKMjAgMCBvYmoKPDwvQ291bnQgMC9UaXRsZTxG RUZGMDA1MzAwNjgwMDY1MDA2NTAwNzQwMDMxPgovRGVzdFsxIDAgUi9YWVogMCA2MTIgMF0vUGFy ZW50IDE5IDAgUj4+CmVuZG9iagoKNCAwIG9iago8PC9UeXBlL1N0cnVjdEVsZW0KL1MvUAovUCAy MSAwIFIKL1BnIDEgMCBSCi9LWzAgXQo+PgplbmRvYmoKCjUgMCBvYmoKPDwvVHlwZS9TdHJ1Y3RF bGVtCi9TL1AKL1AgMjEgMCBSCi9QZyAxIDAgUgovS1sxIF0KPj4KZW5kb2JqCgo2IDAgb2JqCjw8 L1R5cGUvU3RydWN0RWxlbQovUy9QCi9QIDIxIDAgUgovUGcgMSAwIFIKL0tbMiBdCj4+CmVuZG9i agoKNyAwIG9iago8PC9UeXBlL1N0cnVjdEVsZW0KL1MvUAovUCAyMSAwIFIKL1BnIDEgMCBSCi9L WzMgXQo+PgplbmRvYmoKCjggMCBvYmoKPDwvVHlwZS9TdHJ1Y3RFbGVtCi9TL1AKL1AgMjEgMCBS Ci9QZyAxIDAgUgovS1s0IF0KPj4KZW5kb2JqCgo5IDAgb2JqCjw8L1R5cGUvU3RydWN0RWxlbQov Uy9QCi9QIDIxIDAgUgovUGcgMSAwIFIKL0tbNSBdCj4+CmVuZG9iagoKMTAgMCBvYmoKPDwvVHlw ZS9TdHJ1Y3RFbGVtCi9TL1AKL1AgMjEgMCBSCi9QZyAxIDAgUgovS1s2IF0KPj4KZW5kb2JqCgoy MSAwIG9iago8PC9UeXBlL1N0cnVjdFRyZWVSb290Ci9QYXJlbnRUcmVlIDIyIDAgUgovS1s0IDAg UiA1IDAgUiA2IDAgUiA3IDAgUiA4IDAgUiA5IDAgUiAxMCAwIFIgXQo+PgplbmRvYmoKCjIyIDAg b2JqCjw8L051bXNbCjAgWyA0IDAgUiA1IDAgUiA2IDAgUiA3IDAgUiA4IDAgUiA5IDAgUiAxMCAw IFIgXQpdPj4KZW5kb2JqCgoxMSAwIG9iago8PC9UeXBlL1BhZ2VzCi9SZXNvdXJjZXMgMTggMCBS Ci9NZWRpYUJveFsgMCAwIDU5NSA4NDIgXQovS2lkc1sgMSAwIFIgXQovQ291bnQgMT4+CmVuZG9i agoKMjMgMCBvYmoKPDwvVHlwZS9DYXRhbG9nL1BhZ2VzIDExIDAgUgovT3BlbkFjdGlvblsxIDAg UiAvWFlaIG51bGwgbnVsbCAwXQovT3V0bGluZXMgMTkgMCBSCi9TdHJ1Y3RUcmVlUm9vdCAyMSAw IFIKL01hcmtJbmZvPDwvTWFya2VkIHRydWU+Pgo+PgplbmRvYmoKCjI0IDAgb2JqCjw8L0NyZWF0 b3I8RkVGRjAwNDMwMDYxMDA2QzAwNjM+Ci9Qcm9kdWNlcjxGRUZGMDA0RjAwNzAwMDY1MDA2RTAw NEYwMDY2MDA2NjAwNjkwMDYzMDA2NTAwMkUwMDZGMDA3MjAwNjcwMDIwMDAzMjAwMkUwMDMzPgov Q3JlYXRpb25EYXRlKEQ6MjAwODAzMjUxNjIxNDQrMDEnMDAnKT4+CmVuZG9iagoKeHJlZgowIDI1 CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNTc3MyAwMDAwMCBuIAowMDAwMDAwMDE5IDAwMDAw IG4gCjAwMDAwMDIwNTAgMDAwMDAgbiAKMDAwMDAxNjA5NSAwMDAwMCBuIAowMDAwMDE2MTY1IDAw MDAwIG4gCjAwMDAwMTYyMzUgMDAwMDAgbiAKMDAwMDAxNjMwNSAwMDAwMCBuIAowMDAwMDE2Mzc1 IDAwMDAwIG4gCjAwMDAwMTY0NDUgMDAwMDAgbiAKMDAwMDAxNjUxNSAwMDAwMCBuIAowMDAwMDE2 Nzc1IDAwMDAwIG4gCjAwMDAwMDIwNzEgMDAwMDAgbiAKMDAwMDAxNDY2NSAwMDAwMCBuIAowMDAw MDE0Njg4IDAwMDAwIG4gCjAwMDAwMTQ4ODAgMDAwMDAgbiAKMDAwMDAxNTM2MCAwMDAwMCBuIAow MDAwMDE1Njg1IDAwMDAwIG4gCjAwMDAwMTU3MTggMDAwMDAgbiAKMDAwMDAxNTkzNCAwMDAwMCBu IAowMDAwMDE1OTkwIDAwMDAwIG4gCjAwMDAwMTY1ODYgMDAwMDAgbiAKMDAwMDAxNjY5NiAwMDAw MCBuIAowMDAwMDE2ODc1IDAwMDAwIG4gCjAwMDAwMTcwMjYgMDAwMDAgbiAKdHJhaWxlcgo8PC9T aXplIDI1L1Jvb3QgMjMgMCBSCi9JbmZvIDI0IDAgUgovSUQgWyA8MUUzMDU1Qjc2NkMzRjFEMjAy RDExMDFCNzMyREQ5OTQ+CjwxRTMwNTVCNzY2QzNGMUQyMDJEMTEwMUI3MzJERDk5ND4gXQovRG9j Q2hlY2tzdW0gLzcxMjRDOTk5NzI3OUI2RkI0MTkyMDcxNTA5RjcxNzlECj4+CnN0YXJ0eHJlZgox NzIwNQolJUVPRgo= --=-H4YYm13rQIKksfNKCWTS-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/