Received: by 10.223.185.116 with SMTP id b49csp5185378wrg; Tue, 27 Feb 2018 09:05:49 -0800 (PST) X-Google-Smtp-Source: AH8x227k4xjSx1oJO3K67ft7vvGUK13BANBdi2e8zcMY6hPp9c8xJ+48F+XLFmt+x/mX9i1ECiWU X-Received: by 2002:a17:902:968e:: with SMTP id n14-v6mr15055150plp.21.1519751149682; Tue, 27 Feb 2018 09:05:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519751149; cv=none; d=google.com; s=arc-20160816; b=bpKkCRL40NxKa7TmysFnOAJWlpsXu7EaovU0MknPLNK5VtCtXGYFDWs7abts1wx7H8 i7uWSlFfjakY+3IcBA21JthUvjAmcG1jIcOf1TaDQEjWWv6x7sDNQDxVnSq5KtEpI4IH MxbRwYsfBZMTlIrR5dZcpxzO2Meh8NDVP/pVEQSeFH3vl4JcVgjY+6CCymSh6ZwWkUTx dNC2ZrdYUC+bijJ5OQ2yGRxsu85J6PriqhKMJdD2DhXsEb1C3bJuL448PfrZ3TKoDbwb QP30P9fjDNVs3T9kFetghIyWkb+5DlJ8XduLVdrWlwBiXCnzCsFDQ+X6DDChKBQaBS9Y oRyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:references:in-reply-to:mime-version :dkim-signature:arc-authentication-results; bh=v6FlQvd4XkxfFC3yYzNAr4AHbkgsQgop8CX9DVVA7L4=; b=nGzwmknv7j/K3ErYe6ddkofYKvnUm8Wjo8JZGjgAkoqGh3gjh8AHAOLGh4wUupE981 s9hXGQvmqHUSIULKsxrVSnn1bY5ZClQ9jDAvkn0fldeEG53bL1RGxjD1c5sXG8mVfK+L LvJhHDvj9M16luTtL6a8Z2swF6xwncbgQkp6n2pwbNmgEX8P372yKNb2jBtZTXJi6yH/ NnyvPz3uM+b1HXXlhntv4KBQGREl/ixTv0baGNQqj9uMo9nagJX/4Hbg3IbSAxqvaZFu ElIjYWfZ8FjMKVHlm/mPIHaeAvzGZp97Zzw+Hb/BHWKAm2JhrgohScbhjkMYRiv2g4wW NI+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=eHE0O8eE; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i3si3020390pgt.470.2018.02.27.09.05.30; Tue, 27 Feb 2018 09:05:49 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=eHE0O8eE; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752113AbeB0REh (ORCPT + 99 others); Tue, 27 Feb 2018 12:04:37 -0500 Received: from mail-io0-f175.google.com ([209.85.223.175]:32914 "EHLO mail-io0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751919AbeB0REe (ORCPT ); Tue, 27 Feb 2018 12:04:34 -0500 Received: by mail-io0-f175.google.com with SMTP id f1so30615iob.0 for ; Tue, 27 Feb 2018 09:04:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-transfer-encoding; bh=v6FlQvd4XkxfFC3yYzNAr4AHbkgsQgop8CX9DVVA7L4=; b=eHE0O8eEKrT48b/1dvr5OhUccPgnJyEYknkKG29CKL6lT0QmxFF3Teod3rXIlYXLBE w6G/l9NChhbTvClCxbQvUqaHZ9odpc5GBI46U1ISdg51b5gwaxKr83xY/cSzv5UQS0s6 1PKxp16EDVNRxxUdEvPZ5y3cIaArd4pobFoV7vCbP9BstmgAYudArMIhlBLb9dpVuhur 1X2jy1kFvDYdmRm4RAcNRK0335scfN93RAtwiOWQ/0Q4xsM0F83ZMiNKiXXISI8QOaWq 2St/hq8TZqc3upVY/EJBxMQvZnbiLEPzlN/DsNLlxVf2HUO+MO+2Quzr1ZwNMlgs4lH1 l78g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc:content-transfer-encoding; bh=v6FlQvd4XkxfFC3yYzNAr4AHbkgsQgop8CX9DVVA7L4=; b=RSvGBlmBdIKNSYYO7raP1wUnja42C49Uyd4vSn/EkaKkhARrilqRj029KR9RIgSjz9 rwKIc48EDch9Y4+Z2snthLeqUqRE/kZ/Cj49G2hScCUdZ3KnCI8g68tOP8Q4u1+jEKHI HeXhE6Aa+Ooi9XuRQWP4Hh32XnPV+BnYqrIOZ532/rGduVz6ebHJBIzi/moaKOd+YSDu rrIerVDG49KhgKg29bvWN2LRRfdhgKUtPywKtJowG7xmUSh338L4F+ata1F7WsDGKlJJ mtjE4OivbnqdUilhXziZteEvlgp7x9zokBwKwEym+H1wnGKdYtNdKa81AdrjlpGXZmXH IEAw== X-Gm-Message-State: APf1xPC1dHIlMEbzZ2E7ISgNC5J0XksVw4QYG2xKw6XebnPy9PE754rn FWHc9tpsXr+RaQbYRkNZZ5MeZX/Fp1Ywv+q1Lw0= X-Received: by 10.107.22.1 with SMTP id 1mr17318056iow.238.1519751073862; Tue, 27 Feb 2018 09:04:33 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.135.221 with HTTP; Tue, 27 Feb 2018 09:04:32 -0800 (PST) In-Reply-To: <666.1519738993@warthog.procyon.org.uk> References: <20180225150505.GD7144@yexl-desktop> <1519573271.4702.10.camel@redhat.com> <20180226083807.GE8942@yexl-desktop> <1519645434.4443.15.camel@redhat.com> <1519648433.4443.18.camel@redhat.com> <8b48844f-7f9a-a9d7-b5bc-3bc403e0fa78@intel.com> <1519738149.4300.45.camel@redhat.com> <666.1519738993@warthog.procyon.org.uk> From: Linus Torvalds Date: Tue, 27 Feb 2018 09:04:32 -0800 X-Google-Sender-Auth: P_TnJGTGLnryeqR1yuNUXNvtclY Message-ID: Subject: Re: [LKP] [lkp-robot] [iversion] c0cef30e4f: aim7.jobs-per-min -18.0% regression To: David Howells Cc: Jeff Layton , kemi , Ye Xiaolong , LKP , LKML Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Feb 27, 2018 at 5:43 AM, David Howells wrote: > Is it possible there's a stall between the load of RCX and the subsequent > instructions because they all have to wait for RCX to become available? No. Modern Intel big-core CPU's simply aren't that fragile. All these instructions should do OoO fine for trivial sequences like this, and as far as I can tell, the new code sequence should be better. And even if it were worse for some odd reason, it would be worse by a cycle= . This kind of 18% change is something else, it is definitely not about instruction scheduling. Now, if the change to inode_cmp_iversion() causes some actual _behavioral_ changes, and we get more IO, that's more like it. But the code really does seem to be equivalent. In both cases it is simply comparing 63 bits: the high 63 bits of 0x150(%rbp) - inode->i_version - with the low 63 bits of 0x20(%rax) - iint->version. The only issue would be if the high bit of 0x20(%rax) was somehow set. The new code doesn't shift that bit away an more, but it should never be set since it comes from i_version =3D inode_query_iversion(inode); ... iint->version =3D i_version; and that inode_query_iversion() will have done the version shift. > The interleaving between operating on RSI and RCX in the older code might > alleviate that. > > In addition, the load if the 20(%rax) value is now done in the CMP instru= ction > rather than earlier, so it might not get speculatively loaded in time, wh= ereas > the earlier code explicitly loads it up front. No again, OoO cores will generally hide details like that. You can see effects of it, but it's hard, and it can go both ways. Anyway, I think the _real_ change has nothing to with instruction scheduling, and everything to do with this: 107.62 =C2=B1 37% +139.1% 257.38 =C2=B1 16% vmstat.io.bo 48740 =C2=B1 36% +191.4% 142047 =C2=B1 16% proc-vmstat.pgpgout (There's fairly big variation in those numbers, but the changes are even bigger) or this: 258.12 -100.0% 0.00 turbostat.Avg_MHz 21.48 -21.5 0.00 turbostat.Busy% or this: 27397 =C2=B1194% +43598.3% 11972338 =C2=B1139% latency_stats.max.io_schedule.nfs_lock_and_join_requests.nfs_updatepage.nfs= _write_end.generic_perform_write.nfs_file_write.__vfs_write.vfs_write.SyS_w= rite.entry_SYSCALL_64_fastpath 27942 =C2=B1189% +96489.5% 26989044 =C2=B1139% latency_stats.sum.io_schedule.nfs_lock_and_join_requests.nfs_updatepage.nfs= _write_end.generic_perform_write.nfs_file_write.__vfs_write.vfs_write.SyS_w= rite.entry_SYSCALL_64_fastpath but those all sound like something changed in the setup, not in the kernel. Odd. Linus