簡體   English   中英

如何在特定的NUMA內存節點上實例化C ++對象?

[英]How to instantiate C++ objects on specific NUMA memory nodes?

簡單的C代碼可以使用libnuma庫在NUMA系統中的特定內存節點中分配內存。 例如,可以使用以下功能完成:

void *numa_alloc_onnode(size_t size, int node)

如何在某個內存節點中實例化一個類? 我能想到的一種方法是:

numa_set_membind(<nodemask>);
o = new Object();
numa_set_localalloc();

這會有用嗎?

Placement new就是你要找的。 例:

void *blob = numa_alloc_onnode(sizeof(Object), ...);
Object *object = new(blob) Object;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM