-
-
Notifications
You must be signed in to change notification settings - Fork 221
Expand file tree
/
Copy pathglobals.py
More file actions
22 lines (13 loc) · 574 Bytes
/
globals.py
File metadata and controls
22 lines (13 loc) · 574 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import os
def set_affinity_mask(affinity_mask = None):
if affinity_mask is None:
cpu_count = os.cpu_count()
affinity_mask = set(range(cpu_count))
os.sched_setaffinity(0, affinity_mask)
def set_affinity_list(affinity_list = None):
if affinity_list is None: set_affinity_mask(None)
else: set_affinity_mask(set(affinity_list))
def set_affinity_str(affinity_str = None):
if affinity_str is None or affinity_str.isspace(): set_affinity_mask(None)
aff = [int(alloc) for alloc in affinity_str.split(",")]
set_affinity_list(aff)