При использовании -binding linear: 1 будет привязывать SGE к следующему доступному ядру. Однако в случае использования Hyperthreading это приводит только к тому, что только половина заданий получает набор задач, а другая половина продолжает работать. Это приводит к снижению производительности остальных ядер.
Как видно из вывода qconf -se, топология, которую выводит sge, равна ctt
для серверов с поддержкой гиперпоточности. Таким образом, он планирует только одно задание на этом ядре вместо двух заданий.
Есть ли у sge способ подумать, что число ядер равно столько, сколько показывает lscpu? Или каким-то образом, чтобы гарантировать, что он будет выполнять задания на всех ядрах?
Вывести "qconf -se"
hostname <sample_exec_host>
load_scaling NONE
complex_values NONE
load_values arch=lx-amd64,num_proc=64,mem_total=257190.054688M, \
swap_total=4095.996094M,virtual_total=261286.050781M, \
m_topology=SCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTSCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTT, \
m_socket=2,m_core=32,m_thread=64,load_avg=56.110000, \
load_short=56.570000,load_medium=56.110000, \
load_long=56.790000,mem_free=111833.890625M, \
swap_free=3993.488281M,virtual_free=115827.378906M, \
mem_used=145356.164062M,swap_used=102.507812M, \
virtual_used=145458.671875M,cpu=91.100000, \
m_topology_inuse=ScttcttcttcttcttcttcttcttcttcttcttcttcttcttcttcttScttcttcttcttcttcttcttcttcttcttcttcttcttcttcttctt, \
np_load_avg=0.876719,np_load_short=0.883906, \
np_load_medium=0.876719,np_load_long=0.887344
processors 64
user_lists NONE
xuser_lists NONE
projects NONE
xprojects NONE
usage_scaling NONE
report_variables NONE
Вывести lscpu -
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 64
On-line CPU(s) list: 0-63
Thread(s) per core: 2
Core(s) per socket: 16
Socket(s): 2
NUMA node(s): 2
Vendor ID: GenuineIntel
CPU family: 6
Model: 85
Model name: Intel(R) Xeon(R) Gold 5218 CPU @ 2.30GHz
Stepping: 7
CPU MHz: 2300.000
BogoMIPS: 4600.00
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 1024K
L3 cache: 22528K
NUMA node0 CPU(s): 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62
NUMA node1 CPU(s): 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63