Skip to content

[Deepin-Kernel-SIG] [linux 6.6.y] [deepin] arm64: decrease NR_CPUS to 1024#1752

Open
opsiff wants to merge 1 commit into
deepin-community:linux-6.6.yfrom
opsiff:linux-6.6.y-2026-05-20-config-arm64
Open

[Deepin-Kernel-SIG] [linux 6.6.y] [deepin] arm64: decrease NR_CPUS to 1024#1752
opsiff wants to merge 1 commit into
deepin-community:linux-6.6.yfrom
opsiff:linux-6.6.y-2026-05-20-config-arm64

Conversation

@opsiff
Copy link
Copy Markdown
Member

@opsiff opsiff commented May 20, 2026

deepin inclusion
category: performance

CONFIG_NR_CPUS=4096 clearly over our all desktop/server/hpc users requirement, limit it to a possible value to more match cacheline and save memory.

Summary by Sourcery

Build:

  • Lower the CONFIG_NR_CPUS setting in the deepin arm64 desktop defconfig from 4096 to 1024 to reduce memory usage and improve cache behavior.

deepin inclusion
category: performance

CONFIG_NR_CPUS=4096 clearly over our all desktop/server/hpc users requirement,
limit it to a possible value to more match cacheline and save memory.

Signed-off-by: Wentao Guan <guanwentao@uniontech.com>
@deepin-ci-robot deepin-ci-robot requested review from Wenlp and shy129 May 20, 2026 09:17
@sourcery-ai
Copy link
Copy Markdown

sourcery-ai Bot commented May 20, 2026

Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

This PR updates the Deepin ARM64 desktop kernel defconfig to reduce the configured maximum CPU count from 4096 to 1024 in order to better match actual hardware requirements and reduce memory/cache overhead.

File-Level Changes

Change Details Files
Reduce CONFIG_NR_CPUS from 4096 to 1024 in the Deepin ARM64 desktop kernel configuration to lower memory usage while still covering expected hardware.
  • Update the CONFIG_NR_CPUS value in the Deepin ARM64 desktop defconfig from 4096 to 1024
  • Retain all other configuration options unchanged
arch/arm64/configs/deepin_arm64_desktop_defconfig

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've left some high level feedback:

  • Consider explicitly justifying the choice of 1024 (vs e.g. 256 or 512) in the commit message with expected CPU count ranges for supported Deepin arm64 desktop deployments, so future maintainers understand why this value was selected.
  • If there are other Deepin arm64 defconfigs (e.g., server/HPC variants) that still assume CONFIG_NR_CPUS=4096, it may be worth checking and aligning those where appropriate to avoid surprising differences in CPU limits between flavors.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- Consider explicitly justifying the choice of 1024 (vs e.g. 256 or 512) in the commit message with expected CPU count ranges for supported Deepin arm64 desktop deployments, so future maintainers understand why this value was selected.
- If there are other Deepin arm64 defconfigs (e.g., server/HPC variants) that still assume CONFIG_NR_CPUS=4096, it may be worth checking and aligning those where appropriate to avoid surprising differences in CPU limits between flavors.

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@Avenger-285714
Copy link
Copy Markdown
Member

有没有前后对比数据

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Reduces the maximum compiled-in CPU count for the Deepin arm64 desktop kernel configuration to lower per-CPU memory overhead and potentially improve cache behavior.

Changes:

  • Lower CONFIG_NR_CPUS in deepin_arm64_desktop_defconfig from 4096 to 1024.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

CONFIG_SCHED_CLUSTER=y
CONFIG_SCHED_SMT=y
CONFIG_NR_CPUS=4096
CONFIG_NR_CPUS=1024
@opsiff
Copy link
Copy Markdown
Member Author

opsiff commented May 21, 2026

有没有前后对比数据

before:
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 30143791.8 2583.0
Double-Precision Whetstone 55.0 4517.1 821.3
Execl Throughput 43.0 2630.9 611.8
File Copy 1024 bufsize 2000 maxblocks 3960.0 847459.0 2140.0
File Copy 256 bufsize 500 maxblocks 1655.0 256133.0 1547.6
File Copy 4096 bufsize 8000 maxblocks 5800.0 2124482.0 3662.9
Pipe Throughput 12440.0 1676894.3 1348.0
Pipe-based Context Switching 4000.0 172936.2 432.3
Process Creation 126.0 5833.8 463.0
Shell Scripts (1 concurrent) 42.4 7659.3 1806.4
Shell Scripts (8 concurrent) 6.0 6191.7 10319.4
System Call Overhead 15000.0 1424036.8 949.4
========
System Benchmarks Index Score 1433.3

after:
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 30659634.0 2627.2
Double-Precision Whetstone 55.0 4517.7 821.4
Execl Throughput 43.0 2645.5 615.2
File Copy 1024 bufsize 2000 maxblocks 3960.0 855722.0 2160.9
File Copy 256 bufsize 500 maxblocks 1655.0 262114.0 1583.8
File Copy 4096 bufsize 8000 maxblocks 5800.0 2159526.0 3723.3
Pipe Throughput 12440.0 1698222.9 1365.1
Pipe-based Context Switching 4000.0 178263.4 445.7
Process Creation 126.0 5879.0 466.6
Shell Scripts (1 concurrent) 42.4 7690.3 1813.7
Shell Scripts (8 concurrent) 6.0 6220.3 10367.2
System Call Overhead 15000.0 1425168.0 950.1
========
System Benchmarks Index Score 1449.2

@Avenger-285714
Copy link
Copy Markdown
Member

有没有前后对比数据

before: System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 30143791.8 2583.0 Double-Precision Whetstone 55.0 4517.1 821.3 Execl Throughput 43.0 2630.9 611.8 File Copy 1024 bufsize 2000 maxblocks 3960.0 847459.0 2140.0 File Copy 256 bufsize 500 maxblocks 1655.0 256133.0 1547.6 File Copy 4096 bufsize 8000 maxblocks 5800.0 2124482.0 3662.9 Pipe Throughput 12440.0 1676894.3 1348.0 Pipe-based Context Switching 4000.0 172936.2 432.3 Process Creation 126.0 5833.8 463.0 Shell Scripts (1 concurrent) 42.4 7659.3 1806.4 Shell Scripts (8 concurrent) 6.0 6191.7 10319.4 System Call Overhead 15000.0 1424036.8 949.4 ======== System Benchmarks Index Score 1433.3

after: System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 30659634.0 2627.2 Double-Precision Whetstone 55.0 4517.7 821.4 Execl Throughput 43.0 2645.5 615.2 File Copy 1024 bufsize 2000 maxblocks 3960.0 855722.0 2160.9 File Copy 256 bufsize 500 maxblocks 1655.0 262114.0 1583.8 File Copy 4096 bufsize 8000 maxblocks 5800.0 2159526.0 3723.3 Pipe Throughput 12440.0 1698222.9 1365.1 Pipe-based Context Switching 4000.0 178263.4 445.7 Process Creation 126.0 5879.0 466.6 Shell Scripts (1 concurrent) 42.4 7690.3 1813.7 Shell Scripts (8 concurrent) 6.0 6220.3 10367.2 System Call Overhead 15000.0 1425168.0 950.1 ======== System Benchmarks Index Score 1449.2

请将对比数据(和对应的内核base commit)更新到提交信息中,以便回溯

/approve

@deepin-ci-robot
Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: Avenger-285714

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants