mirror of
https://github.com/odin-lang/Odin.git
synced 2026-07-21 23:21:08 +00:00
Only count bits in touched array members.
This commit is contained in:
@@ -59,9 +59,8 @@ _get_current_thread_id :: proc "contextless" () -> int {
|
||||
@(private="package")
|
||||
_get_processor_core_count :: proc() -> (core_count: int) {
|
||||
cpu_set: [128]u64
|
||||
|
||||
if _, err := linux.sched_getaffinity(0, size_of(cpu_set), &cpu_set); err == nil {
|
||||
for set in cpu_set {
|
||||
if n, err := linux.sched_getaffinity(0, size_of(cpu_set), &cpu_set); err == nil {
|
||||
for set in cpu_set[:n / 8] {
|
||||
core_count += int(intrinsics.count_ones(set))
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user