linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] Extend migrate_misplaced_page() to support batch migration
@ 2023-08-19 10:52 Baolin Wang
  2023-08-19 10:52 ` [PATCH 1/4] mm: migrate: move migration validation into numa_migrate_prep() Baolin Wang
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Baolin Wang @ 2023-08-19 10:52 UTC (permalink / raw)
  To: akpm
  Cc: mgorman, shy828301, david, ying.huang, baolin.wang, linux-mm,
	linux-kernel

Hi,

Currently, on our ARM servers with NUMA enabled, we found the cross-die latency
is a little larger that will significantly impact the workload's performance.
So on ARM servers we will rely on the NUMA balancing to avoid the cross-die
accessing. And I posted a patchset[1] to support speculative numa fault to
improve the NUMA balancing's performance according to the principle of data
locality. Moreover, thanks to Huang Ying's patchset[2], which introduced batch
migration as a way to reduce the cost of TLB flush, and it will also benefit
the migration of multiple pages all at once during NUMA balancing.

So we plan to continue to support batch migration in do_numa_page() to improve
the NUMA balancing's performance, but before adding complicated batch migration
algorithm for NUMA balancing, some cleanup and preparation work need to do firstly,
which are done in this patch set. In short, this patchset extends the
migrate_misplaced_page() interface to support batch migration, and no functional
changes intended.

[1] https://lore.kernel.org/lkml/cover.1639306956.git.baolin.wang@linux.alibaba.com/t/#mc45929849b5d0e29b5fdd9d50425f8e95b8f2563
[2] https://lore.kernel.org/all/20230213123444.155149-1-ying.huang@intel.com/T/#u

Baolin Wang (4):
  mm: migrate: move migration validation into numa_migrate_prep()
  mm: migrate: move the numamigrate_isolate_page() into do_numa_page()
  mm: migrate: change migrate_misplaced_page() to support multiple pages
    migration
  mm: migrate: change to return the number of pages migrated
    successfully

 include/linux/migrate.h | 15 ++++++++---
 mm/huge_memory.c        | 19 +++++++++++---
 mm/memory.c             | 34 +++++++++++++++++++++++-
 mm/migrate.c            | 58 ++++++++---------------------------------
 4 files changed, 71 insertions(+), 55 deletions(-)

-- 
2.39.3



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2023-08-21  8:50 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-19 10:52 [PATCH 0/4] Extend migrate_misplaced_page() to support batch migration Baolin Wang
2023-08-19 10:52 ` [PATCH 1/4] mm: migrate: move migration validation into numa_migrate_prep() Baolin Wang
2023-08-21  2:20   ` Huang, Ying
2023-08-21  7:52     ` Baolin Wang
2023-08-19 10:52 ` [PATCH 2/4] mm: migrate: move the numamigrate_isolate_page() into do_numa_page() Baolin Wang
2023-08-19 10:52 ` [PATCH 3/4] mm: migrate: change migrate_misplaced_page() to support multiple pages migration Baolin Wang
2023-08-19 10:52 ` [PATCH 4/4] mm: migrate: change to return the number of pages migrated successfully Baolin Wang
2023-08-21  2:29 ` [PATCH 0/4] Extend migrate_misplaced_page() to support batch migration Huang, Ying
2023-08-21  8:10   ` Baolin Wang
2023-08-21  8:41     ` Huang, Ying
2023-08-21  8:50       ` Baolin Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox