AcademySoftwareFoundation / AcademySoftwareFoundation/OpenCue

Better support for hybrid CPUs -> and remove fractional cores ?

Open
#1,552 1 comment 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
957
Forks
259
Avg merge
3d 6h
Merged PRs (30d)
16

Description

## The problem
The current implementation supports full single-threaded/hyper-threaded processors, but does not report hybrid cpus correctly.
I have 3 procs:
- AMD Ryzen9 9600HX : 8 Cores - 16 Threads
- Intel i9-11900K : 8 Cores - 16 Threads
- Intel i9-12900HK: 14 Cores - 20 Threads (6 PCores(x2) + 8 ECores)

CueGui:
![image](https://github.com/user-attachments/assets/2edb859a-63ab-4142-87f8-165a55d71303)

As seen in CueGui, the first two are ok and reports 8 Cores as expected.
But the last one reports 20 Cores instead of 14.

## Describe the enhancement
- either fix rqd to correctly report all the physical cores ?
- (at the risk of not being able to see which one are HT)
- or report logical cores instead of physical cores ?

I would see some benefits to having logical cores reported (please correct my assumptions if they seem false):
- remove the need for "fractional" cores, all values will be coherent and not multiples of 100 (this is very strange on first encounter).
- (Is there some history on why we have multiples of 100 ?)
- a HT host could handle more small jobs instead of reserving 2 logical cores per small task.
- Have the same number of cores users can see in htop or task manager.

And some potential downfalls:
- Change the core requirement habits : instead of requiring 8 cores, we would need to require 16
- or even more than 16 on specialized non-x86 CPU architectures like IBM Power.
- (though 0 or negative would be acceptable req from now on)

**Version Number**
1.0

Contributor guide

Open the contributing guide

Research direction

Start by examining rqd's CPU reporting and how the values are displayed in CueGui, then reproduce the discrepancy on the Intel i9-12900HK described here. Define whether completion means reporting physical hybrid cores or logical cores, and verify that core requirements and fractional-core behavior remain coherent.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.