-# Copyright (c) 2023 Cisco and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
"""Return list of DUT node related list of CPU numbers. The main
computing unit is physical core count.
+ On SMT enabled DUTs, both sibling logical cores are used,
+ unless Robot variable \${smt_used} is set to False.
+
:param node: DUT node.
:param cpu_node: Numa node number.
:param nf_chains: Number of NF chains.
raise RuntimeError(u"NodeID is out of range!")
smt_used = CpuUtils.is_smt_enabled(node[u"cpuinfo"])
+ smt_used = BuiltIn().get_variable_value("\${smt_used}", smt_used)
cpu_list = CpuUtils.cpu_list_per_node(node, cpu_node, smt_used)
# CPU thread sibling offset.
sib = len(cpu_list) // CpuUtils.NR_OF_THREADS