-
-
Notifications
You must be signed in to change notification settings - Fork 141
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
Amdahl code, redux #411
Amdahl code, redux #411
Conversation
For me there are a few assumptions going on in general when delivering this course, one of those that you have knowledge/control over the environment of your users. The amdahl package is released in the way it is because it can work in a number of ways: if you have modules you can expose it that way (including encoding it's Ultimately this sounds like something that belongs in a snippet as there a selection of available ways to make the code available which are all perfectly valid:
|
Thanks for the thoughtful feedback @ocaisa. My rationalization for the tarball is that Ep. 15 (transferring files) depends on a tarball, and previously, it was repackaged data from a Python lesson that is unrelated and is never used after that episode. This meant a lot of the transfer commands were boilerplate with no concrete filenames or paths, which is mystifying and seems counterproductive. Overhauling Ep. 15 with an You are right, of course, that I can revise the tarball in this PR to contain a driver script that will simply |
In today's Coworking Hours, we had a vigorous debate about how to install amdahl. The best/obvious option is to
Can folks with access try to install amdahl on their login nodes, and check whether it successfully runs? python3 -m pip install amdahl
mpirun -np 4 amdahl Thanks! |
I read the notes of the coworking hour where this was discussed and I still think the easiest is to go with a As mentioned in those notes, it is possible to do an offline
This doesn't resolve any dependency problem you may have, but the most problematic one for our use case is MPI4PY. This can be installed with
While I haven't tested it, I imagine that |
Following this month's meetings, I have a few things to change on this branch before it's ready to merge -- mostly, teaching |
Using the Amdahl/MPI4PY tarballs to exercise "transferring files," make sure to cover the cluster configuration firewalls allowing users to "pull" from inside, "push" from outside, or both. |
144736e
to
16ed34a
Compare
16ed34a
to
0eb4195
Compare
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.
I think hpc-intro-code.tar.gz
is still being shipped with this PR
Co-authored-by: ocaisa <[email protected]>
Co-authored-by: ocaisa <[email protected]>
Co-authored-by: ocaisa <[email protected]>
Co-authored-by: ocaisa <[email protected]>
Out of scope for this PR. Please file a separate issue or, even better, a PR setting MPI in context with these other tools/approaches, bearing in mind that there may be controversy over whether task farming is HPC (vs. HTC). |
I believe the requested changes have been made. Please re-review. |
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.
LGTM
Finally, we'll ensure the `my_pi` through `print` lines only run on rank 0. | ||
Otherwise, every parallel processor will print its local value, | ||
and the report will become hopelessly garbled: | ||
Then submit your job. Note that the submission command has not really changed |
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.
I'll create an issue for this later, but this is not necessarily true
Many many thanks @tkphd for putting so much effort into this PR! |
This PR re-opens #407, which was merged prematurely, and relates to #409. Original summary and quoted comments follow.
This PR replaces the dummy
hpc-intro-data.tar.gz
with a tarballed version of@ocaisa'sour amdahl program,hpc-intro-code.tar.gz
, and substitutes that black-box program in place of the pi calculator. This is in keeping with our goal of reducing the "programming" aspect of hpc-intro to the bare minimum, focusing instead on the cluster and practicing job submission.Note that, whereas the upstream amdahl package can be installed as a module, the version archived here is a stand-alone Python file named
amdahl
, with defaults of 30 seconds of work and a parallel proportion of 85%.@reid-a and I are planning to teach this version on Friday, 24 June (
two days hencetomorrow).@ocaisa wrote,
@tkphd responded,
@ocaisa commented,
@tkphd asked,
Edited to update Amdahl repo URL