-
Notifications
You must be signed in to change notification settings - Fork 28.9k
[SPARK-17984][YARN][Mesos][Deploy][WIP] add executor launch prefix support #16411
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
Conversation
|
Why is this different from #16411 ? |
|
|
Oops yes wrong copy/paste. |
|
@srowen sheepduke is my colleague who just left. I am continuing to refine his work. It's OK to close #15579 . @sheepduke |
|
I'm a little worried this is very open ended and could cause a lot of issues with users using it wrong. This opens up customers to basically do anything they want while launching an executor. Even not launching an executor since really this is replacing the normal executor launch command with this script. It relies on that customers script to actually launch the executor based on the command passed in. If this goes in it definitely need much better explanation and docs on how to properly write and use it. I would rather see it being more truly of a pre-init script then a total replacement. Perhaps the spark executor launch command is a script that will pre-pend some users stuff but then makes sure it still calls the normal java executor launch command. Also what about yarn cluster mode? Do you have test results of configuring numa that shows definite improvements? How does this compare to Automatic NUMA balancing that I believe is on by default in Rhel7. I realize perhaps most machines aren't running rhel7 yet but wondering if it was tried. does numactl require special priveleges (like root) to do certain operations? The script looks very basic which I understand for an example is fine but it seems like there are definitely things missing and things people could get wrong. Note I haven't done any tuning of numa myself so sorry if some of these questions seem obvious. |
|
@tgravescs Thanks for your comments. There are two things we have tried.
|
|
Can one of the admins verify this patch? |
What changes were proposed in this pull request?
Complete Standalone, Yarn, Mesos support from #15579 and adapt to latest master branch.
How was this patch tested?
Standalone and Yarn mode tested on spark cluster with 1 master + 2 slaves, Mesos mode is not tested due to lack of resources.
How to use
export SPARK_EXECUTOR_LAUNCH_PREFIX="/tmp/spark-numa-example.sh"
Attach the example script for adding executor launch prefix to enable NUMA-aware binding for executors. Same apply to adding other launch prefix such as strace, vtune etc..
spark-numa-example.zip