| Summary: | tuna under RHEL6.0 can't set cpu affinity on large core count machines | ||
|---|---|---|---|
| Product: | Red Hat Enterprise MRG | Reporter: | Matthew Whitehead <mwhitehe> |
| Component: | realtime-utilities | Assignee: | Red Hat Real Time Maintenance <rt-maint> |
| Status: | CLOSED ERRATA | QA Contact: | David Sommerseth <davids> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | Development | CC: | acme, bhu, iboverma, lgoncalv, ovasik, williams |
| Target Milestone: | 2.0 | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: |
Previously, the Linux scheduler bindings provided by the python-schedutils package were unable to set the CPU affinity on systems with more than 64 cores. With this update, the package was modified to dynamically allocate the required space, allowing the CPU affinity to be successfully set on large core systems.
|
Story Points: | --- |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-06-23 15:04:54 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Matthew Whitehead
2011-02-11 21:12:41 UTC
Matt, What does the error say? Just a few more questions in addition to the one in comment#1, a) When you use--threads=$$, it means that $$ is replaced by a real pid? b) When using taskset, I presume you used 'taskset -p $PID' c) Would 'grep Cpus_allowed: /proc/$PID/status' return the same value? d) Which version of tuna did you try this on? From which repository? This issue was fixed by Clark Williams with an ad-hoc patch to the python-linux-procfs packags.
Technical note added. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
New Contents:
* Cause: python-schedutils couldn't handle more than 64 cores
* Consequence: failed to set cpu affintiy on 80 core system
* Fix: dynamically allocate cpu_set_t data structures
* Result: successfully set cpu affinity on large core systems
python-schedutils-0.3-1.el6rt
Technical note updated. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
Diffed Contents:
@@ -1,4 +1 @@
-* Cause: python-schedutils couldn't handle more than 64 cores
+Previously, the Linux scheduler bindings provided by the python-schedutils package were unable to set the CPU affinity on systems with more than 64 cores. With this update, the package was modified to dynamically allocate the required space, allowing the CPU affinity to be successfully set on large core systems.-* Consequence: failed to set cpu affintiy on 80 core system
-* Fix: dynamically allocate cpu_set_t data structures
-* Result: successfully set cpu affinity on large core systems
Verified by testing tuna according to comment #0. No issues found on RHEL6.1. [root@mrg39 ~]# rpm -q python-schedutils tuna python-schedutils-0.3-1.el6rt.x86_64 tuna-0.10.1-2.el6rt.noarch Tried to reproduce the issues using an older python-schedutils (0.2-2), but was not able to reproduce it. This was tested on a quad socket quad core box. An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHEA-2011-0894.html |