1
1

OSC RDMA: only touch pages before memory registration, don't fill them

Signed-off-by: Joseph Schuchart <schuchart@hlrs.de>
(cherry picked from commit 52b52b8ebbe82636b65f0adc6a0a40c165eda306)
Этот коммит содержится в:
Joseph Schuchart 2020-09-29 07:45:07 +02:00
родитель de354eae9d
Коммит 2e1e9dc9dd

Просмотреть файл

@ -650,7 +650,12 @@ static int allocate_state_shared (ompi_osc_rdma_module_t *module, void **base, s
}
if (size && MPI_WIN_FLAVOR_ALLOCATE == module->flavor) {
*base = (void *)((intptr_t) module->segment_base + my_base_offset);
char *baseptr = (char *)((intptr_t) module->segment_base + my_base_offset);
*base = (void *)baseptr;
// touch each page to force allocation on local NUMA node
for (size_t i = 0; i < size; i += page_size) {
baseptr[i] = 0;
}
}
module->rank_array = (ompi_osc_rdma_rank_data_t *) module->segment_base;