From: rulinhuang <rulin.huang@intel.com>
To: urezki@gmail.com
Cc: akpm@linux-foundation.org, colin.king@intel.com,
hch@infradead.org, linux-kernel@vger.kernel.org,
linux-mm@kvack.org, lstoakes@gmail.com, rulin.huang@intel.com,
tim.c.chen@intel.com, zhiguo.zhou@intel.com,
wangyang.guo@intel.com, tianyou.li@intel.com
Subject: Re: [PATCH] mm/vmalloc: lock contention optimization under multi-threading
Date: Fri, 9 Feb 2024 06:51:47 -0500 [thread overview]
Message-ID: <20240209115147.261510-1-rulin.huang@intel.com> (raw)
In-Reply-To: <ZcNMa-CFEDNWDO2J@pc636>
Hi Rezki, thanks so much for your review. Exactly, your suggestions
could effectively enhance the maintainability and readability of this
code change as well as the whole vmalloc implementation. To avoid the
partial initialization issue, we are trying to refine this patch by
separating insert_map_area(), the insertion of VA into the tree, from
alloc_map_area(), so that setup_vmalloc_vm() could be invoked between
them. However, our initial trial ran into a boot-time error, which we
are still debugging, and it may take a little bit longer than expected
as the coming week is the public holiday of Lunar New Year in China.
We will share with you the latest version of patch once ready for your
review.
In the performance test, we firstly build stress-ng by following the
instructions from https://github.com/ColinIanKing/stress-ng, and then
launch the stressor for pthread (--pthread) for 30 seconds (-t 30) via
the below command:
./stress-ng -t 30 --metrics-brief --pthread -1 --no-rand-seed
The aggregated count of spawned threads per second (Bogo ops/s) is
taken as the score of this workload. We evaluated the performance
impact of this patch on the Ice Lake server with 40, 80, 120 and 160
online cores respectively. And as is shown in below figure, with
the expansion of online cores, this patch could relieve the
increasingly severe lock contention and achieve quite significant
performance improvement of around 5.5% at 160 cores.
vcpu number 40 80 120 160
patched/original 100.5% 100.8% 105.2% 105.5%
Thanks again for your help and please let us know if more details
are needed.
next prev parent reply other threads:[~2024-02-09 11:49 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-07 3:30 rulinhuang
2024-02-07 9:24 ` Uladzislau Rezki
2024-02-09 11:51 ` rulinhuang [this message]
2024-02-20 9:05 ` [PATCH v2] " rulinhuang
2024-02-20 19:54 ` Andrew Morton
2024-02-21 3:34 ` rulinhuang
2024-02-20 9:12 ` [PATCH] " rulinhuang
2024-02-21 8:38 ` Uladzislau Rezki
2024-02-21 3:29 ` [PATCH v3] " rulinhuang
2024-02-21 8:36 ` Uladzislau Rezki
2024-02-22 12:09 ` rulinhuang
2024-02-22 12:10 ` rulinhuang
2024-02-22 12:52 ` Uladzislau Rezki
2024-02-22 15:36 ` Baoquan He
2024-02-23 13:09 ` rulinhuang
2024-02-22 12:05 ` [PATCH v4] " rulinhuang
2024-02-23 13:03 ` [PATCH v5] " rulinhuang
2024-02-23 14:03 ` Baoquan He
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=20240209115147.261510-1-rulin.huang@intel.com \
--to=rulin.huang@intel.com \
--cc=akpm@linux-foundation.org \
--cc=colin.king@intel.com \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lstoakes@gmail.com \
--cc=tianyou.li@intel.com \
--cc=tim.c.chen@intel.com \
--cc=urezki@gmail.com \
--cc=wangyang.guo@intel.com \
--cc=zhiguo.zhou@intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox