gpt4 book ai didi

h2o - H2O 中的内存管理

转载 作者:行者123 更新时间:2023-12-05 03:07:40 25 4
gpt4 key购买 nike

我很想知道 H2O 中是如何管理内存的。它是完全“内存中”还是允许交换以防内存消耗超出可用物理内存?如果我在一个节点上总共有 384GB 的 RAM,我可以将 -mapperXmx 参数设置为 350GB 吗?我确实意识到在这种情况下集群将无法处理 H2O 集群以外的任何东西。非常感谢任何指点,谢谢。

最佳答案

  1. H2O-3 将数据完全存储在内存中的分布式列压缩分布式键值存储中。

  2. 不支持交换到磁盘。

  3. 既然您提到的是 mapperXmx,我假设您是在谈论在 YARN 环境中运行 H2O。在这种情况下,每个节点分配的总 YARN 容器大小为:

    mapreduce.map.memory.mb = mapperXmx * (1 + extramempercent/100)

extramempercent 是 h2odriver.jar 的另一个(很少使用的)命令行参数。请注意默认的 extramempercent 是 10(百分比)。

mapperXmx 是 Java 堆的大小,上面提到的额外内存是为了 JVM 实现本身的额外开销(例如 C/C++ 堆)。

YARN 对此非常挑剔,如果您的容器试图在其分配 (mapreduce.map.memory.mb) 上使用哪怕一个字节,YARN 将立即终止容器。 (对于 H2O-3,由于它是一个内存处理引擎,丢失一个容器将终止整个作业。)

您可以将 mapperXmxextramempercent 设置为与 YARN 启动容器的空间一样大的值。

关于h2o - H2O 中的内存管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46787105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com