-
Notifications
You must be signed in to change notification settings - Fork 1
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
Use job scheduling information
to allow more flexible job submission
#77
Conversation
…for jobs stuck in a queue
All the tests are passing for me too |
@VictoriaBeilsten-Edmands , could you review this too to update yourself with the changes? |
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.
That looks good and makes sense to me.
@PeterC-DLS Please merge this whenever you're ready (I'd ask you to approve but why then wait for me to click a button?) |
I was going to test with a real submission job but got side-tracked by type checking... |
Okay, no worries, I just didn't want you to be waiting on me! |
7a1af60
to
a733fde
Compare
Add back script names for some job slicers
cd242ac
to
4e17462
Compare
4e17462
to
52e1b59
Compare
Fix wrong destination of output in pass thru wrapper, and more logging info
c3682a3
to
05d8459
Compare
Add documentation on testing and rename test env var for slurm partition
05d8459
to
e7ee00e
Compare
Simplify output path in pass thru wrapper, remove odd bits
Just pushed a small change where a couple of error messages were missing the EDIT: Just saw the but about the n/a path, so pending that |
This is to enable me to use the
JobScheduler
for B24. The main aim of this was for me to be able to manually specify and and run a bunch of jobs in the same scheduler in a way that doesn't rely on slicing (e.g. I am likely to want 3 jobs for different IMOD reconstructions and 1 job for AreTomo reconstructions to be run all in one).This has some changes that will affect existing usage, so I wanted to start a discussion before going further with the
JobController
. The basics of this are:JobSchedulingInformation
class that contains all the job information required for submission, as well as the job status information.SchedulerModeInterface
is nowJobSlicerInterface
and the function just acceptsslicer_params
and an inputJobSchedulingInformation
and outputs a list ofJobSchedulingInformation
s.ProgramWrapper
no longer has theset_cores
andget_args
methods as that is handled by either setting them in the initialJobSchedulingInformation
object, or whencreate_sliced_processing_jobs
orcreate_sliced_aggregating_jobs
are called (these output lists ofJobSchedulingInformation
objects).To do:
JobController
needs some work, along withrun_ppc
, and tests for those. This is where I need to know what's easiest for existing projects - perhaps there's some compatibility layer I can add to avoid updating the wrappers?list[int]
andList[int]
).Questions:
JobController
? There have been some changes there but the handling of the resource setting via the wrappers has been a point where I'm unsure of how to handle it, especially since I wont be using that part.