Consequences of changing EigenNonBlockingThreadPool alignment requirements #17134
Unanswered
leandro-gracia-gil
asked this question in
General
Replies: 1 comment
-
@tlh20 Sorry to call you out of the blue. Looks like this is related to this pull of yours. It's a few years old by now, so I'm not sure how much you will remember. But any insights you might have would be appreciated. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi,
I'm trying to use ONNXRuntime in a x86 platform that requires TLS sections to have a power of 2 alignment <= 32. I can build the library just fine, but it fails at runtime (when loading it as a shared library) due to this requirement. After investigating a bit it seems that EigenNonBlockingThreadPool is forcing an alignment of 128 "to avoid false sharing with prior fields".
onnxruntime/include/onnxruntime/core/platform/EigenNonBlockingThreadPool.h
Line 193 in 9204cd7
I would need to set this alignment down to a maximum of 32 for my particular use case. I can do it locally and there are no build issues, but the comment about false sharing makes me feel uneasy about doing this.
Thanks.
Edit: just to make it clear, I am not asking to make any changes to the github source code. This is for my own local builds.
Beta Was this translation helpful? Give feedback.
All reactions