问题标签 [numa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1410 浏览

c - 数组内存管理

我正在做我的计算科学项目。我正在使用 C 进行多处理器编程。对我们的一个要求是,我们不能一直分配小块内存。需要时可以大块分配内存。

所以想象一下我在我的程序中使用结构。而且我的程序的工作方式需要动态内存分配。但它在我们使用的硬件中非常昂贵。所以最好的解决方案是在开始时分配一个大的内存池,并在需要时从这个池中分配内存。

我设想它的工作方式是,我将分配这些结构的位数组并编写我自己的内存管理模块,该模块从这个池中分配和释放内存。但我想知道编写这些模块的最理想方式。是否有任何库可以帮助我管理内存,或者有什么方法可以编写这些库?

编辑:这是我使用的平台:运行 Ubuntu 的 AMD opteron 系统。opterons 具有 NUMA 架构,我想在分配内存时利用它。因此,我没有使用 malloc,而是使用numa_alloc_onnode 在一个特定节点上分配内存。我想使用它分配一大块内存,然后使用内存管理器来管理这个内存。

0 投票
2 回答
7951 浏览

java - 如何确认NUMA?

如何确认主机支持 NUMA?Oracle 文档说 NUMA 感知从内核 2.6.19 开始,但NUMA手册页说它是在 2.6.14 中引入的。我想确定一个 Java 进程开始时-XX:+UseNUMA实际上正在利用某些东西。

检查 numa_maps,我发现我有它们:

虽然我的内核落后于 Oracle 所说的:

我目前在 RHEL5.1 上使用 64 位 jdk1.6.0_29。

0 投票
1 回答
651 浏览

linux - /sys/devices/system/node/node0/distance中的单位是什么

这个问题在标题上说。有谁知道这个 sys 文件中的距离代表什么?

0 投票
1 回答
906 浏览

multithreading - 在特定的 NUMA 内存上分配线程的堆栈

我想知道是否有办法在特定的 NUMA 节点上创建线程堆栈。我已经编写了这段代码,但我不确定它是否有效。

谢谢您的帮助

0 投票
1 回答
2769 浏览

linux - NUMA 内存页迁移开销

我必须找到与Linux 下的NUMA 内存页面迁移相关的开销。

你能告诉我我可以使用哪些工具吗?

如果可能的话,你能举个例子。

0 投票
1 回答
2011 浏览

windows - 我应该担心一个 CPU 系统中的 NUMA 吗?

如果只有一个 CPU,对于支持 NUMA 的 CPU 架构的 Windows 开发人员是否有任何影响?

0 投票
5 回答
43983 浏览

linux - 我如何知道我的服务器是否有 NUMA?

从 Java Garbage Collection 跳出来,我遇到了 NUMA 的 JVM 设置。奇怪的是,我想检查我的 CentOS 服务器是否具有 NUMA 功能。是否有可以获取此信息的 *ix 命令或实用程序?

0 投票
5 回答
9382 浏览

mongodb - 通过 numactl 作为守护进程启动 mongodb

我试图让 mongodb 在 NUMA 机器上作为守护进程启动。当我跑

Mongo 启动并正常运行,但所有输出仍然显示。(例如,Fri Jun 22 12:10:29 [initandlisten] 接受来自 127.0.1.1:51837 的连接)

但是,当我自己启动 mongo(如下所示)时,它会失败(下面的日志):

我在日志中得到以下信息

我不知道当我以 root 身份运行时 admin.ns 会如何出现权限问题,或者为什么用 numactl 包装时它可以正常启动。理想情况下,我想在 start_server() 函数中使用 numactl,如下所示:

底线,我怎样才能让 mongo 作为 NUMA 机器上的守护进程启动?

0 投票
1 回答
123 浏览

linux - numa_police_memory

我正在 MIPS 机器上调试 NUMACTL。在 numa_police_memory() API 中,我们有:

似乎“asm volatile("" :: "r" (((volatile unsigned char *)mem)[i]));" 用于读取 VM,以便将先前 mmap 应用的所有内存分配到某些特定的物理内存上。但是这个 asm 代码是如何工作的呢?我看不懂汇编语言!为什么第一个双引号是空的???

谢谢

0 投票
2 回答
5039 浏览

c++ - OpenMP 和 NUMA 的关系?

我有一台双插槽 Xeon E5522 2.26GHZ 机器(禁用超线程)在支持 NUMA 的 linux 内核 3.0 上运行 ubuntu 服务器。架构布局是每个插槽 4 个物理内核。OpenMP 应用程序在这台机器上运行,我有以下问题:

  1. 在 NUMA 机器 + 感知内核上运行时,OpenMP 程序是否会自动利用(即线程及其私有数据在执行过程中保存在 numa 节点上)?如果没有,可以做什么?

  2. NUMA 和每线程私有 C++ STL 数据结构怎么样?