From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751485AbcBLRWX (ORCPT ); Fri, 12 Feb 2016 12:22:23 -0500 Received: from mail-bl2on0123.outbound.protection.outlook.com ([65.55.169.123]:53613 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751076AbcBLRWU (ORCPT ); Fri, 12 Feb 2016 12:22:20 -0500 Authentication-Results: hp.com; dkim=none (message not signed) header.d=none;hp.com; dmarc=none action=none header.from=hpe.com; Message-ID: <56BE14C2.5080603@hpe.com> Date: Fri, 12 Feb 2016 12:22:10 -0500 From: Waiman Long User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130109 Thunderbird/10.0.12 MIME-Version: 1.0 To: Jason Low CC: Ingo Molnar , Peter Zijlstra , , Linus Torvalds , Ding Tianhong , Jason Low , Davidlohr Bueso , "Paul E. McKenney" , Thomas Gleixner , Will Deacon , Tim Chen Subject: Re: [PATCH 0/2] locking/mutex: Enable optimistic spinning of lock waiter References: <1455047262-27731-1-git-send-email-Waiman.Long@hpe.com> <1455054274.2976.31.camel@j-VirtualBox> In-Reply-To: <1455054274.2976.31.camel@j-VirtualBox> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [72.71.243.73] X-ClientProxiedBy: BLUPR11CA0002.namprd11.prod.outlook.com (10.141.240.12) To DF4PR84MB0138.NAMPRD84.PROD.OUTLOOK.COM (25.162.192.24) X-Microsoft-Exchange-Diagnostics: 1;DF4PR84MB0138;2:fP6KqF7x1Lr9Logd47lAvvWiaXVlgNn14zzN4ccwf1BLaFsoVxCwIqMYrBNVQ/JNkHAWtVoKtW8FOkMPwj/yJn8j64M+k7UbVklqo8ZI6WHOwgPjtcC2xwryPe8ylIA08luqN5GAVafxX0Z5TTN5Lg==;3:/MLiA3jfW42zBTgQ34ubsBiGcZX2ofn1rOdPuU9IHebNTvPLF6xQCrOyWOyDnTAnAvuC1aVxV//wGrY5KCZ+JuaqDmp+hxIUHo9tVHBZb74vhc/zOHUjY9u5C60ZnmTA;25:eIKrI6uKM8pKzm5ye9IqwTihOB9w6koI+MXtCJWuXBHRkxRTxiJ+5YMRHjSX898EIh8kWXuC7FqR9vu4Dn/ED/PyMbrLi2f4eXX/i/CXKfRWH5y/p3C29BfbvKL0BOp/I6MWOtf7uBDyyYWa+YjK7LDlWifh+0t2bYcUbVgHQrhIAz8ihMl1zBM1/KMMTnGG9iHUBkCmvuL6E54qgCLJdV0t+axOfBPjiw0+4BRBBR7C/bMlJmOJ4cw49fNNp1tQqRbbiK9ITiGs7SPyWKYmGbXThKjhdqePHqalWmPu98XPLh0hnyrbZRTFNJCxD4Rv;20:cnLOrtswmITVLpZQ3t9/KcedBTvB55EbJiEQx+nA35EanGdYI7ou94EafiJ4BAcgQSVMKvMD8E9tNvKGH1y7HfibdbXOenroXEMkICoW1byLXA955sySQWIKRNhaFo6+17ckwFLlHT4kGTPQdeuzE5tExjPZz7WT0eTexPW5g1ami/jpmGwaLTlY9AKsIrl3meCxyKd3UeV5q43QasbbKgtFj41hCXDUDFDIsH1Si2lbiDiQLT4dN3sNZt+4q+8z X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DF4PR84MB0138; X-MS-Office365-Filtering-Correlation-Id: f18c8040-28c3-4df9-a76d-08d333d10f39 X-LD-Processed: 105b2061-b669-4b31-92ac-24d304d195dc,ExtAddr X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001);SRVR:DF4PR84MB0138;BCL:0;PCL:0;RULEID:;SRVR:DF4PR84MB0138; X-Microsoft-Exchange-Diagnostics: 1;DF4PR84MB0138;4:nEl0jAJOtZyveuThSsRerm/nWq3iT9Yk15z7s81mAjnZfjgcLM2T///nkvXp0QWw6Zdv8IHiMZ45naiIRlJPlieJB6wDWNunqha/zsJLd/SsJHOiB/afr8BQWfK6GS/yfZmzMkDrZiAL2dSJchD3lng80+5+b5ojWEisH9zzSTi/hCHMUqTRTBn9JFBqMm25me/Iq5AexLbS/gstzdpPzhewHx/lNxCl/UsNsGqsH9ORIuCr1dknhWRuwgfQILljpf/WDm8S/i/OCGl3TKqjr4g/9ig3AJX2kCPKwQmxLXnMuHhbRvjPaK1q0zuW0FXMer3Mr6Tz1cwEYZndQkp2v/Jpni+8+9dbopuAN/XcrafyCGFHctqTM2a3DLokkDdM X-Forefront-PRVS: 0850800A29 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(6009001)(6049001)(479174004)(24454002)(377454003)(377424004)(92566002)(65816999)(36756003)(40100003)(50466002)(54356999)(50986999)(76176999)(5008740100001)(189998001)(586003)(5001960100002)(4326007)(6116002)(4001350100001)(2906002)(110136002)(230700001)(5004730100002)(3846002)(86362001)(77096005)(23676002)(59896002)(1096002)(87976001)(2950100001)(33656002)(83506001)(65956001)(42186005)(65806001)(47776003)(66066001)(117156001)(7059030);DIR:OUT;SFP:1102;SCL:1;SRVR:DF4PR84MB0138;H:[192.168.142.185];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtERjRQUjg0TUIwMTM4OzIzOjRYc0JqWWZkMlJ2RkxCR1RzUGJiSldsaW1S?= =?utf-8?B?WXpYakhJNmdyYnBuaHhvN2I0YVU5eCtNNUpkS3JROWxDR3MxSWZIZEhIS1VE?= =?utf-8?B?UjhwUGRuQXN3Ny9LUXpJRXlMMUZEdmRPSkNWQWV1MmdOQkNaOUY3clFITWdz?= =?utf-8?B?SUZhUFV6RzEvaFRFVDh1OHVUVXh6aFdSMGJuQTZ6YnR5bWwzcHZ2TmhGZitK?= =?utf-8?B?WnpPdzZadnJRWEVPWDhraytjNlFnUUp6OWJYcHVMc1FNRFpTdENrRTEyMlJQ?= =?utf-8?B?NDhiL2FXb2ZHQnh1MzEwVGk2SFhPL21lR241LzM2TE12elpiVE9lNVhwSjZ0?= =?utf-8?B?Q293TENIUGZ0cE55V1NRaHJlS2t1N28zd0FXR2tSRE1NbldvMldNMjl3OXZj?= =?utf-8?B?RGxTYmorc0NjVzJQNXl0Mjcvc0ZRbjJxcDUxeUVnU1NGM2hYcytlSUlVeCs5?= =?utf-8?B?WGdPL05NRHJKa3h1Z2FVUFZuQXJSTXNBdm96OHVkV2crVjhpSlg2YjNQWWFI?= =?utf-8?B?L0RtOUdGTiszd25OaHp0RElxQll4L1pmQllHaTBMelY0bVhNL0RPWVcySWhO?= =?utf-8?B?OXBHNUVTc1RPeWdpeUlsVUNPYmVQNjg3cTdjaXZMOFdoYUdBa0JvbTdYNFha?= =?utf-8?B?dEM2L0FlcVltdEZWejVMZ05GMGNHMkIxYWlhL2xCOTFmVEo4RDJXVFhBTFU5?= =?utf-8?B?WFRJSS95M1orQWxTUTVXUjVVK1RWTnNtMmo3dzRGcHU2TnJqOVFaQkQxUFhh?= =?utf-8?B?MFFacy9NOVl6c0I1R3F6a1ZzcFdzTnQ5WS93emxIQVNNbGhKd3lOSVplcXNT?= =?utf-8?B?RHcrcUJ3TEhCS0ttNUQ3ZkZjdng3K1hOZGljZVgvZWYvaVIvamN3U1RMWkZj?= =?utf-8?B?MTVYUk91bUZRQW1pNHhPMEc4dUdQR09mVnVUNmdCZmRWODVFNXFFVHBNY1l6?= =?utf-8?B?eFRjSlhONEZpekdPcDVNRmJEeFExZFIwQXlkK1dLaFlxNGJVVkFaci9lcEkw?= =?utf-8?B?L2MzM2F5aFpXTUFMbzBDUE54RGU4YXljTmgwMTdhazdWWE84R0d4cElGUHg5?= =?utf-8?B?QXpnbUg3c29kYVRnUEZVT3JrdjdOMTc1emNJZzJFenBsWTRJZC9tbVZlOENj?= =?utf-8?B?UVBhTWlQOFBuNGFIN1pTWU0vSXNuYkRTZk1ScWxCaFlhWmk2UUxsc01ndis1?= =?utf-8?B?SlBZOHRINklDeCsyaGRZdGpzcFlRQ01yYmtoS0JVdVBxcWtNNU5ta1kvemZQ?= =?utf-8?B?N0tDYjZEejlXejZuNHJYWGdkQjRwZExkVktZdlVBVWk3cHlYQlp4VnN2eXZH?= =?utf-8?B?cm9jelJVT1pOeDhTQkdldnBremNxKytOK0VpcWNoQm05YWRYaklsY05XanNx?= =?utf-8?B?MldxcDB1VHhrWVNNQlBFRGhKZGxJMUZodHNnVXlvQjN4cXVPOXlkSVdFcDhM?= =?utf-8?B?MXVxRldVRGZOMk5adFgrM2xLUXBTYTdQcWN0R0FFcUlsMUR1SnN6TEc0aXAv?= =?utf-8?B?SnRUZz09?= X-Microsoft-Exchange-Diagnostics: 1;DF4PR84MB0138;5:XI+5M5DfxU2LTxC767WhuPOZoF3gkfvw6z4DRVnxnbWFvjAC6Z5U4yitmOfrJOsscxuOawGj3gbSBL+ohukPVNFy0ucNjYp3BOmrsc5P/9W9GIc4q4XZ6VTwGwshIA2i/xlwScGCfODfSTtthtq2+Q==;24:mlVz8QYe9NgJNSt15+nwOeRte8iURMkzrYJk3xt15yTJnFvGEEj4Y1bKEYK48VaqgabnHs/JBJp+wxliUCaF3CS7se0cZCstgKoihCe5B0M= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: hpe.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Feb 2016 17:22:17.6614 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DF4PR84MB0138 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02/09/2016 04:44 PM, Jason Low wrote: > On Tue, 2016-02-09 at 14:47 -0500, Waiman Long wrote: >> This patchset is a variant of PeterZ's "locking/mutex: Avoid spinner >> vs waiter starvation" patch. The major difference is that the >> waiter-spinner won't enter into the OSQ used by the spinners. Instead, >> it will spin directly on the lock in parallel with the queue head >> of the OSQ. So there will be a bit more cacheline contention on the >> lock cacheline, but that shouldn't cause noticeable impact on system >> performance. >> >> This patchset tries to address 2 issues with Peter's patch: >> >> 1) Ding Tianhong still find that hanging task could happen in some cases. >> 2) Jason Low found that there was performance regression for some AIM7 >> workloads. > This might help address the hang that Ding reported. > > Performance wise, this patchset reduced AIM7 fserver throughput on the 8 > socket machine by -70%+ at 1000+ users. > > | fserver JPM > ----------------------------- > baseline | ~450000 > Peter's patch | ~410000 > This patchset | ~100000 > > My guess is that waiters spinning/acquiring the lock is less efficient, > and this patchset further increases the chance for waiters to > spin/acquire the lock over the fastpath optimistic spinners. > > Jason > That was just a configuration error as the CPU scaling governor wasn't set to performance. With the performance scaling governor, the patchset's performance was comparable to Peter's patch. Cheers, Longman