检查是否从 R 中启用了超线程
Check if hyperthreading is enabled from within R
有没有办法检查是否在 R
中启用了超线程?
我现在能想到的最好的就是运行下面的系统调用,但是这个需要root权限,还得解析
system("dmidecode -t processor | grep HTT")
根据 F. Privé 的评论,parallel
包中的 detectCores
函数应该能够通过其第二个参数(合乎逻辑的)完成您想要的操作。来自 ?parallel::detectCores
:
logical: Logical: if possible, use the number of physical CPUs/cores (if FALSE) or logical CPUs (if TRUE). The default is TRUE on Windows and FALSE elsewhere.
对于我的机器,一个 4 核超线程 i-7,我得到
# physical cores
parallel::detectCores(logical=FALSE)
[1] 4
# logical cores (threads)
parallel::detectCores(logical=TRUE)
[1] 8
有没有办法检查是否在 R
中启用了超线程?
我现在能想到的最好的就是运行下面的系统调用,但是这个需要root权限,还得解析
system("dmidecode -t processor | grep HTT")
根据 F. Privé 的评论,parallel
包中的 detectCores
函数应该能够通过其第二个参数(合乎逻辑的)完成您想要的操作。来自 ?parallel::detectCores
:
logical: Logical: if possible, use the number of physical CPUs/cores (if FALSE) or logical CPUs (if TRUE). The default is TRUE on Windows and FALSE elsewhere.
对于我的机器,一个 4 核超线程 i-7,我得到
# physical cores
parallel::detectCores(logical=FALSE)
[1] 4
# logical cores (threads)
parallel::detectCores(logical=TRUE)
[1] 8