Skip to content

Initial support for CPU Sets#2572

Open
wnstngs wants to merge 3 commits intowinsiderss:masterfrom
wnstngs:CPUSets
Open

Initial support for CPU Sets#2572
wnstngs wants to merge 3 commits intowinsiderss:masterfrom
wnstngs:CPUSets

Conversation

@wnstngs
Copy link
Contributor

@wnstngs wnstngs commented May 26, 2025

Summary

This PR introduces initial support for CPU Sets (introduced in Windows 10).

Related issue: #2289

Changes made:

  • Process Default CPU Sets
    • API: Added functions to query and assign default CPU Sets for a process.
    • GUI: Implemented a dialog to view and configure process CPU Sets.
  • System CPU Sets
    • API: Implemented support for querying system-wide CPU Set information.

TODO (future work):

  • Thread Selected CPU Sets
    • Get/Set (API)
    • Get/Set (GUI dialog)
  • System CPU Sets
    • Set (API)
    • Get/Set (GUI dialog)
  • Use CPU Set APIs in relevant places (e.g., improving core parking detection via System CPU Set enumeration).

Related issue: winsiderss#2289

Changes made:
- Process Default CPU Sets
  - Get/Set (API)
  - Get/Set (GUI)
- System CPU Sets
  - Get (API)
@wnstngs wnstngs marked this pull request as ready for review May 27, 2025 22:50
- Remove AFX_DIALOG_LAYOUT
- Update processor group retrieval to use PhSystemProcessorInformation.NumberOfProcessorGroups
- Replace slow text parsing in listview with ID passed via listview item lParam
- Add new helper PhGetSelectedListViewItemParams()
- Use NTAPI in cpuset.h for 32-bit compatibility
@wnstngs wnstngs requested a review from dmex June 5, 2025 16:12
@dmex dmex added the enhancement New feature or request label Jun 6, 2025
@jxy-s jxy-s self-requested a review as a code owner August 1, 2025 03:04
@dmex dmex self-assigned this Aug 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants