DIY HPC群集运行Jupyter/Python笔记本

2024-06-26 00:29:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我最近将我的Python/Jupyter工作从macbook迁移到了一台重新升级的第8代HP机架式服务器(192GB DDR3 2 x 8C Xeon E5-2600),我从亚马逊以400美元购得该服务器。额外的CPU内核极大地提高了模型的拟合速度,特别是对于我经常使用的决策树集成。我现在正在考虑从那个时代(2010年代中期早期)购买更多服务器(双座或四座intel xeon E5,E7 v1/v2),并在我的公寓中将它们作为一个小型HPC集群连接起来。以下是我需要帮助决定的事项:

  1. 这是个坏主意吗?我最好买一个GPU(比如GTX1080)。我不愿意走GPU路线的原因是我倾向于依赖sklearn(这几乎是我唯一知道和使用的东西)。据我所知,GPU上的模型培训目前不是sklearn生态系统的一部分。我所有的代码都是用numpy/pandas/sklearn编写的。因此,将出现陡峭的学习曲线和向后兼容性问题。我错了吗

  2. 假设(1)是正确的,CPU在短期内确实对我更好。如何构建集群并在其上运行Jupyter笔记本。它是否像购买额外的服务器一样简单。将其中一台服务器指定为头节点。通过以太网连接服务器。在两台机器上安装Centos/Rocks。并使用IPython Parallel(?)启动Jupyter服务器

  3. 假设(2)为真,或至少部分为真。我还需要什么硬件/软件?我需要以太网交换机吗?或者如果我只连接两台机器,就没有必要了?或者我至少需要三台机器来利用额外的CPU核,因此需要一个交换机?我需要安装Centos/Rocks吗?还是有更好、更现代的软件层替代方案。就上下文而言,现在我在HP服务器上使用openSUSE,在操作系统和网络方面,我几乎是新手

  4. 我的硬件应该有多同质?我可以在机器上混合和匹配不同频率的CPU和内存吗?例如,在一台机器上有1600 MHz DDR3内存,在另一台机器上有1333 MHz DDR3内存?还是使用2.9 GHz E5-2600v1和2.6 GHz E5-2600v2 CPU

  5. 我应该担心权力吗?也就是说,我可以安全地将三台机架式服务器插入公寓的同一个电源板中吗?我知道有一个插座,如果我插上吹风机,灯就会熄灭。所以我可能应该避免这种情况:)说真的,我如何在负载下运行2-3台多CPU机器,避免断路器跳闸

多谢各位


Tags: 内存模型服务器机器gpu集群jupytersklearn
1条回答
网友
1楼 · 发布于 2024-06-26 00:29:23
  1. Nvidia的rapids.ai在GPU上实现了相当多的sklearn。不管那是不是你用的部分,只有你能说

  2. 众所周知,使用Jupiter笔记本进行生产是一个错误

  3. 您不需要交换机,除非延迟是一个严重的问题,它很少是

  4. 完全无关

  5. 对于您正在考虑的那种旧硬件,您将有非常高的电费。但更糟糕的是,由于您将拥有许多不太新的机器,某些组件在任何给定时间发生故障的概率都很高,因此除非您在计算机维护方面寻求未来,否则这不是一个好主意。一个更好的主意是:在macbook/现有集群上开发您的想法,然后租用一个AWS spot实例(或两三个)几天。更便宜,没有混乱,没有大惊小怪。一切正常

相关问题 更多 >