Skip to content
Discussion options

You must be logged in to vote

The answer turned out to be squarely on our side.

Scipp allocates its buffers with a plain new[], i.e., via malloc, and never called madvise(MADV_HUGEPAGE). NumPy does, for every array of 4 MByte and more, which is exactly why its arrays use HugePages with the madvise setting while ours did not. It is not a TBB issue either, though libtbbmalloc_proxy.so does not help: tbbmalloc contains no madvise call at all and treats HugePages as unavailable unless they are reserved explicitly or the setting is always. So the note in our docs was accurate, but for a reason we can fix.

If #3937 pans out and gets merged, Scipp would then by default request HugePages for buffers of 4 MByte and more, match…

Replies: 1 comment 8 replies

Comment options

You must be logged in to vote
8 replies
@SimonHeybrock
Comment options

Answer selected by SimonHeybrock
@pordyna
Comment options

@SimonHeybrock
Comment options

@MridulS
Comment options

@pordyna
Comment options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
3 participants