-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Require BML_USE_POSIX_MEMALIGN to use posix_memalign() #754
Conversation
Hi @mewall Do you see this kind of slow-down on all machines you run the code on or just on a particular architecture / OS combination? If this is a general issue we might simply want to remove this code path all together. |
I don't know but it would be good to look into that. I'll try that next week. For now it's possible avoid the code path using compiler flag -UHAVE_POSIX_MEMALIGN.
…________________________________
From: Nicolas Bock ***@***.***>
Sent: Friday, June 28, 2024 8:15 PM
To: lanl/bml ***@***.***>
Cc: Wall, Michael E ***@***.***>; Mention ***@***.***>
Subject: [EXTERNAL] Re: [lanl/bml] Require BML_USE_POSIX_MEMALIGN to use posix_memalign() (PR #754)
Hi @mewall<https://urldefense.com/v3/__https://github.com/mewall__;!!Bt8fGhp8LhKGRg!D50ERlVT-COdnX_ko_oqxrlQihZZmfZkx1QkqwxQ8Nb8IAnW5bHqSmH6iVwVsodS5SeAQZNrQLnT62Cqhs74cpOM$>
Do you see this kind of slow-down on all machines you run the code on or just on a particular architecture / OS combination? If this is a general issue we might simply want to remove this code path all together.
—
Reply to this email directly, view it on GitHub<https://urldefense.com/v3/__https://github.com/lanl/bml/pull/754*issuecomment-2197856904__;Iw!!Bt8fGhp8LhKGRg!D50ERlVT-COdnX_ko_oqxrlQihZZmfZkx1QkqwxQ8Nb8IAnW5bHqSmH6iVwVsodS5SeAQZNrQLnT62CqhoqfKfmc$>, or unsubscribe<https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AA67VEILYRO7QDSXJ3AROWLZJYKEZAVCNFSM6AAAAABKCMAAAWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOJXHA2TMOJQGQ__;!!Bt8fGhp8LhKGRg!D50ERlVT-COdnX_ko_oqxrlQihZZmfZkx1QkqwxQ8Nb8IAnW5bHqSmH6iVwVsodS5SeAQZNrQLnT62CqhnOv2bbN$>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
It would be good to enable the old behavior by default and optionally allow to disable it. This would make sure that the old behavior does not unexpectedly change. |
I'll do this and revise the PR.
…________________________________
From: Nicolas Bock ***@***.***>
Sent: Saturday, June 29, 2024 11:37 PM
To: lanl/bml ***@***.***>
Cc: Wall, Michael E ***@***.***>; Mention ***@***.***>
Subject: [EXTERNAL] Re: [lanl/bml] Require BML_USE_POSIX_MEMALIGN to use posix_memalign() (PR #754)
It would be good to enable the old behavior by default and optionally allow to disable it. This would make sure that the old behavior does not unexpectedly change.
—
Reply to this email directly, view it on GitHub<https://urldefense.com/v3/__https://github.com/lanl/bml/pull/754*issuecomment-2198441341__;Iw!!Bt8fGhp8LhKGRg!HhDawgltKfRAbIQpR7xKeTkJ-q9vsTmWVMbkkVW6LVXskIQmO1gElnRz4F4ukV5SrNIrx6Wj-5OPyH9r6hRK2I9v$>, or unsubscribe<https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AA67VELFHQFKLC6NUXJKPH3ZJ6KP3AVCNFSM6AAAAABKCMAAAWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOJYGQ2DCMZUGE__;!!Bt8fGhp8LhKGRg!HhDawgltKfRAbIQpR7xKeTkJ-q9vsTmWVMbkkVW6LVXskIQmO1gElnRz4F4ukV5SrNIrx6Wj-5OPyH9r6kH7E-eA$>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Using the HAVE_POSIX_MEMALIGN code path results in ~1.7x slowdown of an MD code which frequently allocates arrays. Require a new macro BML_USE_POSIX_MEMALIGN to be defined, to use the code path. Define by default
@nicolasbock The behavior is now the same as before by default. Please merge if OK.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Using the HAVE_POSIX_MEMALIGN code path results in ~1.7x slowdown of an MD code which frequently allocates arrays.
Require a new macro BML_USE_POSIX_MEMALIGN to be defined, to use the code path. Define the macro by default.