Received: by 10.223.164.202 with SMTP id h10csp6160556wrb; Tue, 21 Nov 2017 23:45:17 -0800 (PST) X-Google-Smtp-Source: AGs4zMZxCq/7SH/mTXE0adty0yTizdqM9v+ZzEJD5bAlzGExQddCHUY4yHSeBjyrqQULPOJvw9dj X-Received: by 10.84.214.2 with SMTP id h2mr10334538pli.142.1511336717126; Tue, 21 Nov 2017 23:45:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1511336717; cv=none; d=google.com; s=arc-20160816; b=k854IiUpHiG9WAtqKp4gRMz+zHvUMzkDml1QVtB6jnJ0dzfka8aXTMaiFuExsnpO0Z Vs5Y4BGWvddnPkjzG5oJV1uwVR8OteSZVU2RUtLgisXgf0OUM7LpH14ZxJDW6PZyexad Vz9BvaTLPP12GSfB4X6I3VrgVGtA8CWoeH71uuA0kaVRM16xqERPMxbYLh/40mITJBfk UsSlBS8o1ipx1Yx7h/MrpU8LYq2WEljEcgO6xIPL8QMDrU9UDbaC9cm/IZkXny/IwdFD OXRqhZu74fD4GqKUrjr5epIuMHbwlO4+rm8AMPHSKwfn3ZQZOShYPNhO7NJ7zG2Soabp IqOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=FxDTVQSVx+L0OrkVQ3cdOeLYIkxpcJnkl+N+WiK42xk=; b=YIn7WjLH1o9qlp+SXXcH2lMn/zt63XdBbCSmI8Ig1gvDLNuI9ylhk2k70UIpxJyWTU lP1u8aVEIEzVMf4IUEE2zMDAcPe42edljwpmIl+0e5m9c4xjO4Iu62RW/6hCG5pUjGpW yeOJCqGttA5pV9zEF99fgvvBfjnRuym1QiUFmEbkOO88Y74AZHbDn/A5bTH5hYN3QjQ1 eliT2CU31KsknLErJ+JDD42Q8ETeJpsY5TgytcPI4uQ3SvBW59dz8tO7W+f4lq1W/KSz iz6uwL7i53uZQbF3GG1gQxk5N81yU+Z95KRnffRvhhDJraYKZqZSNSFKgbgi5xekqT63 ru9Q== ARC-Authentication-Results: i=1; mx.google.com; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r12si13577917plj.70.2017.11.21.23.45.06; Tue, 21 Nov 2017 23:45:17 -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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751494AbdKVHn4 (ORCPT + 76 others); Wed, 22 Nov 2017 02:43:56 -0500 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:44118 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751375AbdKVHny (ORCPT ); Wed, 22 Nov 2017 02:43:54 -0500 Received: from pps.filterd (m0098393.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id vAM7gvxS064459 for ; Wed, 22 Nov 2017 02:43:54 -0500 Received: from e06smtp13.uk.ibm.com (e06smtp13.uk.ibm.com [195.75.94.109]) by mx0a-001b2d01.pphosted.com with ESMTP id 2ed4cesw67-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Wed, 22 Nov 2017 02:43:53 -0500 Received: from localhost by e06smtp13.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 22 Nov 2017 07:43:51 -0000 Received: from b06cxnps4074.portsmouth.uk.ibm.com (9.149.109.196) by e06smtp13.uk.ibm.com (192.168.101.143) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Wed, 22 Nov 2017 07:43:48 -0000 Received: from d06av24.portsmouth.uk.ibm.com (d06av24.portsmouth.uk.ibm.com [9.149.105.60]) by b06cxnps4074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id vAM7hlRF34340966; Wed, 22 Nov 2017 07:43:47 GMT Received: from d06av24.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7E99142045; Wed, 22 Nov 2017 07:38:32 +0000 (GMT) Received: from d06av24.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0B87C4204B; Wed, 22 Nov 2017 07:38:31 +0000 (GMT) Received: from satheesh-ThinkPad-T450.in.ibm.com (unknown [9.122.211.73]) by d06av24.portsmouth.uk.ibm.com (Postfix) with ESMTP; Wed, 22 Nov 2017 07:38:30 +0000 (GMT) From: sathnaga@linux.vnet.ibm.com To: acme@kernel.org, mingo@kernel.org, linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org Cc: srikar@linux.vnet.ibm.com, bala24@linux.vnet.ibm.com, naveen.n.rao@linux.vnet.ibm.com, Satheesh Rajendran Subject: [PATCH v4 0/1] Fixup for discontiguous/sparse numa nodes Date: Wed, 22 Nov 2017 13:13:34 +0530 X-Mailer: git-send-email 2.7.4 X-TM-AS-GCONF: 00 x-cbid: 17112207-0012-0000-0000-000005903D60 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 17112207-0013-0000-0000-0000190B0FCE Message-Id: <1511336614-15283-1-git-send-email-sathnaga@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-11-22_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=2 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1709140000 definitions=main-1711220105 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Satheesh Rajendran Certain systems would have sparse/discontinguous numa nodes. perf bench numa doesnt work well on such nodes. 1. It shows wrong values. 2. It can hang. 3. It can show redundant information for non-existant nodes. #numactl -H available: 2 nodes (0,8) node 0 cpus: 0 1 2 3 4 5 6 7 node 0 size: 61352 MB node 0 free: 57168 MB node 8 cpus: 8 9 10 11 12 13 14 15 node 8 size: 65416 MB node 8 free: 36593 MB node distances: node 0 8 0: 10 40 8: 40 10 Scenario 1: Before Fix: # perf bench numa mem --no-data_rand_walk -p 2 -t 20 -G 0 -P 3072 -T 0 -l 50 -c -s 1000 ... ... # 40 tasks will execute (on 9 nodes, 16 CPUs): ----> Wrong number of nodes ... # 2.0% [0.2 mins] 1/1 0/0 0/0 0/0 0/0 0/0 0/0 0/0 4/1 [ 4/2 ] l: 0-0 ( 0) ----> Shows info on non-existant nodes. After Fix: # ./perf bench numa mem --no-data_rand_walk -p 2 -t 20 -G 0 -P 3072 -T 0 -l 50 -c -s 1000 ... ... # 40 tasks will execute (on 2 nodes, 16 CPUs): ... # 2.0% [0.2 mins] 9/1 0/0 [ 9/1 ] l: 0-0 ( 0) # 4.0% [0.4 mins] 21/2 19/1 [ 2/3 ] l: 0-1 ( 1) {1-2} Scenario 2: Before Fix: # perf bench numa all # Running numa/mem benchmark... .... ... # Running RAM-bw-remote, "perf bench numa mem -p 1 -t 1 -P 1024 -C 0 -M 1 -s 20 -zZq --thp 1 --no-data_rand_walk" perf: bench/numa.c:306: bind_to_memnode: Assertion `!(ret)' failed. ------------> Got hung After Fix: # ./perf bench numa all # Running numa/mem benchmark... .... ... # Running RAM-bw-remote, "perf bench numa mem -p 1 -t 1 -P 1024 -C 0 -M 1 -s 20 -zZq --thp 1 --no-data_rand_walk" # NOTE: ignoring bind NODEs starting at NODE#1 # NOTE: 0 tasks mem-bound, 1 tasks unbound 20.017 secs slowest (max) thread-runtime 20.000 secs fastest (min) thread-runtime 20.006 secs average thread-runtime 0.043 % difference between max/avg runtime 413.794 GB data processed, per thread 413.794 GB data processed, total 0.048 nsecs/byte/thread runtime 20.672 GB/sec/thread speed 20.672 GB/sec total speed Changes in v2: Fixed review comments for function names and alloc failure handle Changes in v3: Coding Style fixes. Changes in v4: Address review comments from Naveen and Arnaldo. Merge two commits into single. Satheesh Rajendran (1): perf/bench/numa: Handle discontiguous/sparse numa nodes tools/perf/bench/numa.c | 57 +++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 51 insertions(+), 6 deletions(-) -- 2.7.4 From 1584767302001189162@xxx Wed Nov 22 11:57:53 +0000 2017 X-GM-THRID: 1583468629599259765 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread