Преподаватель R предоставил этот код, чтобы убедиться, что учащиеся используют только половину ядер на своих ПК/ноутбуках при параллельной обработке. Однако, как показано ниже, системный отчет с моего Mac говорит, что у меня 4, в то время как эта библиотека, кажется, обнаруживает 8. Правильно ли установлен этот код, чтобы убедиться, что по крайней мере 1 или 2 ядра свободны? Или мне следует изменить последнюю строку, может быть, с оператором ifelse()
, который говорит ему, что делать, когда системные спецификации не согласуются с его обнаружением?
R-код:
# Setting Parallel processing
library(doMC)
library(parallel)
number_of_cores <- detectCores()
registerDoMC(cores = number_of_cores/2)
Вывод (сколько ядер он видит):
[1] 8
Что сообщает «Об этом Mac» -> «Системный отчет» для спецификаций, включая ядра:
Model Name: MacBook Pro
Model Identifier: MacBookPro14,3
Processor Name: Intel Core i7
Processor Speed: 2.8 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 6 MB
Memory: 16 GB
Boot ROM Version: MBP143.0160.B02
detectCores(logical = FALSE)
- person F. Privé   schedule 14.08.2017