R Performance Differential(Solaris vs Windows)
发布时间:2020-12-14 05:40:22 所属栏目:Windows 来源:网络整理
导读:我注意到一个有趣的问题.如果我在具有2GB RAM的 Windows 3.00 gHz Core 2 Duo CPU上的R 2.12.0(32位)中运行以下代码,它将在不到一秒的时间内运行.如果我在带有sparc-sun-solaris2.10的unix-box上运行它(也是32位,虽然unix盒可以运行64位),它需要84秒. unix盒
我注意到一个有趣的问题.如果我在具有2GB RAM的
Windows 3.00 gHz Core 2 Duo CPU上的R 2.12.0(32位)中运行以下代码,它将在不到一秒的时间内运行.如果我在带有sparc-sun-solaris2.10的unix-box上运行它(也是32位,虽然unix盒可以运行64位),它需要84秒. unix盒的处理速度为2.5 gHz.如果我在代码运行时运行top,我注意到我的R进程只占用了大约3.2%的可用cpu状态,即使有更多可用的状态.这可能是问题的一部分吗?我阅读了安装手册,但没有任何内容成为我问题的明显解决方案. unix操作系统是否以某种方式限制了可用资源,而windows则不然?或者,是否有一些更好的方法从未完成的源编译R?如果我没有提供足够的信息来回答这个问题,我很抱歉,这不是我的专业领域.
t0 <- proc.time()[[3]] x <- rnorm(10000) for(i in 1:10000){ sd(x) } print(proc.time()[[3]]-t0) 解决方法
诸如T1或T2的处理器具有多个核,并且每个核具有多个链(硬件级上下文切换).如果您可以运行多线程应用程序,您将获得大量吞吐量.典型的预期用例是基于Java的web服务器,例如处理同时20-40个连接.
这类处理器的缺点是这些SPARC芯片的单线程性能非常低.看起来像Oracle is aware的问题;目前T4的开发重点是提高单线程速度. T1 processor将32个逻辑CPU暴露给操作系统.如果这是你的情况,显示的值是总计算能力的百分比,1 / 32~ = 3.125%,这接近你所看到的. 要从T1处理器中挤出所有性能,您需要使R使用多个CPU,例如通过multicore package. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows-8 – 如何将metro应用程序部署到Windows 8设备/平板
- SMB协议利用之ms17-010-永恒之蓝漏洞抓包分析SMB协议
- Windows是否提供了我可用于执行免费试用的唯一标识符?
- Way Cross编译可在Windows,Linux和Mac OS上运行的C/C++代码
- 将Windows Azure项目从Gallery加载到Visual Studio 2012中
- WPF应用程序行为取决于Windows用户访问级别
- Expand命令行详解
- Windows系统下如何卸载干净mysql
- windows – Powershell相当于Ctrl R?
- windows – VPN上的动态DNS注册?
推荐文章
站长推荐
热点阅读