scala - 为什么在 Linux 上使用 SparkML 的 XGBoost 比在 Windows 上慢得多
问题描述
我已经设置了一个 Linux 工作站,我计划将 Spark ML 与 Scala 和 XGBoost (0.90) 一起使用。到目前为止,我一直在 Windows 上使用类似的配置。Spark、Java 等的相同版本,但对于 XGBoost,我一直在使用 criteo fork 0.81 版。
两种配置都有效。我面临的问题是,对于完全相同的数据集,Windows 上的 XGBoost 需要几分钟(2-3 分钟)来计算训练集,但在 Linux 上需要 20 分钟。
奇怪的是,当我在 Windows 上运行 XGBoost 时,CPU 负载为 100%,而 Linux 工作站仅为 5-10%。
我会坚持使用 Windows 工作站,但它会时不时地崩溃,所以我认为使用 Linux 是“安全”的一面。
解决方案
推荐阅读
- android - 如何在表格布局中精确对齐项目?
- c++ - 如何从字符串开头到第二个分隔符提取子字符串?
- c# - 使用 DB2 和 .NET 进行异步查询
- python - 谷歌语音识别同时连续收听和转录
- selenium - 无法为 Chrome Windows 执行 Selenum Grid
- python-3.x - 尝试新数据集时特征不匹配。模型特征多于输入特征
- javascript - 方法未定义 - Jasmine
- asp.net - Asp Net Boilerplate - 为什么它自动设置 isEmailConfirmed 是真的
- git - git相似度指数是如何计算的?
- visual-c++ - 如何枚举全局目录中的所有用户?