windows 系统R默认开启多核运算

windows 系统

前言

目前有两个版本的R可以下载,第一个版本在这里r-projet,缺点是默认单核运算,速度比较慢,优点是版本更新修复bug比较快,包安装起来比较友好。第二个版本是微软提供的microsoft-r-open,优点是默认多核运算,并且使用MKL(Intel®Math KernelLibrary)加速矩阵运算,速度比较快,缺点是版本更新异常慢,包安装起来没有r-projet友好。今天,我将介绍结合这两个版本的优点,安装配置一个默认多核运算并且安装包比较有好的R。

安装前

保证用户名是英文的,如果是中文用户名,请重装系统并用英文用户名 

在非系统盘位置,新建四个文件夹,比如R_soft,R_studio,R_files,R_tools  

安装路径不要包含中文,R对中文支持不好

下载相关文件

直接官网下载网速非常慢,下面给出国内镜像网站地址

R:(https://mirrors.tuna.tsinghua.edu.cn/CRAN/

Rstudio:(https://rstudio.com/products/rstudio/download/#download

Rtools:(https://cran.r-project.org/bin/windows/Rtools/

MKL:(https://software.intel.com/content/www/us/en/develop/tools/parallel-studio-xe/choose-download.html)

安装相关软件

一定要先安装 R 再安装 RStudio!

R:请选择英文路径,建议安装在一开始建立的R_soft文件夹里 

Rstudio: 建议安装在一开始建立的R_studio文件夹里 

Rtools:建议安装在一开始建立的R_tools文件夹里 

MKL: 直接默认安装即可

配置Rtools

安装完以上软件后,启动安装好的Rstudio,输入以下命令并运行:

writeLines('PATH="${RTOOLS40_HOME}\\usr\\bin;${PATH}"', con = "~/.Renviron")

之后重启Rstudio,运行

Sys.which("make")

给出刚才你安装Rtools路径就表示你安装成功!!

下载常用到的包

启动Rstudio,输入以下命令,静静等待即可!

options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))

pkgs <- c("tidyverse","dplyr","tidyfst",

         "fs","sf","mlr","mlr3",

         "EDA","mice","plotly","randomForest",

         "rpart","splines","mle4","ncdf4","gamma4",

         "lubridate","stringr","tidyr","htmlwidgets",

         "DT","gt","tidymodels","car","mgcv","survival",

         "shiny","data.table","purrr","future","progress",

         "tictoc","jsonlite","listviewer","skimr","devtools",

         "rmarkdown","RcolorBrewer","knitr",

         "Rcpp","plyr","rticles","pacman",

         "beepr","laendR","drake","bayesplot",

         "cowplot","hrbrthemes","janitor",

         "nanirar","tidylog","validate",

         "speedglm","fixest")

install.packages(pkgs,dependencies = T)

配置R

找到你刚才安装R的文件目录,进入以下目录../R_soft/R-4.0.2/etc ,用记事本打开Rprofile.site文件,并参考以下代码选择性复制粘贴到这个文件。

#请修改自己的位置,用于存放你下载的安装包,建议放在非系统盘

.CUSTOM_LIB = "E:/R_files/R_library"

#请修改自己的位置,用于存放临时数据

.TMP = "E:/R_files/R_temp"            

if(!dir.exists(.CUSTOM_LIB)){

   dir.create(.CUSTOM_LIB)

}

.libPaths(c(.CUSTOM_LIB, .libPaths()))

message("Using library: ", .libPaths()[1])

if(dirname(tempdir()) != .TMP){

   if(!dir.exists(.TMP)) dir.create(.TMP)

   cat(paste0("TMPDIR = ", .TMP), file="~/.Renviron", sep = "\n")

}

message("Using temp directory: ", .TMP)

##为xaringan 制作presentation服务

options(servr.daemon = TRUE)

##选择默认的镜像网址,加快安装包下载速度

options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))

# 设定字体,特别注意里面有一个 enfont 和 cnfont 是我最常用的两个字体。

windowsFonts(

  en_font = windowsFont("Times New Roman"),

  cn_font = windowsFont("思源宋体")

)

en_font = "en_font"

cn_font = "cn_font"

# 设定 ggplot2 绘图主题

ggplot2::theme_set(hrbrthemes::theme_ipsum(base_family = 'en_font'))

# 取消科学计数法的显示

options(scipen = 1)

# 设定 ggplot2 的默认调色板

options(

  ggplot2.continuous.colour = "viridis",

  ggplot2.continuous.fill = "viridis"

)

配置Rstudio

能设定元素很多,建议仔细看看!下面只是部分例子:

Tools -> Global Options -> General

Tools -> Global Options -> Code

Tools -> Global Options -> Apperance

快捷键 是提高生产力的重要要素,建议设定一组自己能习惯的快捷键

配置MKL,开启多线程运算

安装好MKL以后,找打以下文件夹:

<!-- -->

"C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\redist\intel64\mkl"

"C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\redist\intel64\compiler"

以上两个文件夹里所有的文件全部复制粘贴到以下文件夹:“...2”,也就是你安装R的文件夹!

复制好以后在该目录下找到mkl_rt.dll文件,复制到桌面,不改变文件内容,修改文件名成Rblas.dll,并放回“...2”,直接覆盖原来的文件

同理找到mkl_rt.dll文件,复制到桌面,不改变文件内容,修改文件名成Rlapack.dll,并放回“...2”,直接覆盖原来的文件

恭喜你,大功告成,感受一下MKL加速后运算速度有多快,尝试运行以下以下代码,同时你可以拿其他单核运算电脑运行下同样的代码,对比下运行速度。

m <- 10000

n <- 2000

a <- matrix(runif(m*n),m,n)

system.time(s <- svd(a,nu=0,nv=0))

##    user  system elapsed

##   14.42    0.58    2.06

提醒:这步配置好可以卸载MKL,以释放空间!!!

致谢

经过一段时间的学习,算是有那么一丁点入门R了,感谢在成长路上指导帮助我的每一位,首先是自己的导师王斌老师,能给与支持和鼓励,感谢薛涛老师不厌其烦的解答我的每一个细节,感谢Rstata学院的老师同学们耐心又及时解答疑惑,感谢黄天远大神及其在大神组的群里每一个大牛们的技术指导,感谢华东吴亦凡(公众号:pypi主人)用爱发电,感谢王诗翔(公众号:优雅R)分享技术,感谢送哥、霸哥、stone哥等等所有技术大哥给予的指导和帮助!!!!!!!!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343