-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
[core] Delay chunk evaluation #2918
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
base: develop
Are you sure you want to change the base?
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #2918 +/- ##
===========================================
- Coverage 80.88% 79.12% -1.76%
===========================================
Files 59 59
Lines 7857 8292 +435
===========================================
+ Hits 6355 6561 +206
- Misses 1502 1731 +229 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
02bae2f to
15df47f
Compare
4b47850 to
51cfd91
Compare
…n, create a NodeStatusData
…n fetch licenses required for the submitter
15b7db5 to
ecbcbed
Compare
cbentejac
left a comment
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.
Additional notes:
- Let's say I compute a graph (for example, the photogrammetry template) in a given location. All my nodes have been successfully computed, the statuses are all set to "SUCCESS". Now let's say I do a "save as" on the graph I just computed and save it to a new location. The cache changes, so we expect all the nodes' status to be reset. For nodes that have dynamic chunks, the display of the status is not refreshed, and we end up with nodes that appear as computed, although they have lost all their status files.
Below is a screenshot of the photogrammetry graph that was computed and saved in a new location (the first branch was computed, the second was added from the template for the sake of comparison):
-
There are some unpredictable behaviours when performing actions that are allowed but probably shouldn't be. An example would be clicking on "stop task" for a task that is already done computing and is in "SUCCESS" state, while nodes are being computed later on in the graph. The UI allows to perform it, there is an info message saying that the task has been successfully stopped, and the node's status is updated to "STOPPED" in the task manager and Graph Editor; it does not enable the "resume job" button. This seems to cause the job on the farm to finish computing the current task and then pausing the rest of the job (to be verified).
-
I have noticed on several occasions that when clicking on buttons from the "JOB" tab, the info message that is sent contains the name of a node that is not part of the job at all (if all my submitted tasks are for NodeName_2, I may get a message about NodeName_1, which is not being computed at all).
cbentejac
left a comment
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.
Additional notes:
- Let's say I compute a graph (for example, the photogrammetry template) in a given location. All my nodes have been successfully computed, the statuses are all set to "SUCCESS". Now let's say I do a "save as" on the graph I just computed and save it to a new location. The cache changes, so we expect all the nodes' status to be reset. For nodes that have dynamic chunks, the display of the status is not refreshed, and we end up with nodes that appear as computed, although they have lost all their status files.
Below is a screenshot of the photogrammetry graph that was computed and saved in a new location (the first branch was computed, the second was added from the template for the sake of comparison):
-
There are some unpredictable behaviours when performing actions that are allowed but probably shouldn't be. An example would be clicking on "stop task" for a task that is already done computing and is in "SUCCESS" state, while nodes are being computed later on in the graph. The UI allows to perform it, there is an info message saying that the task has been successfully stopped, and the node's status is updated to "STOPPED" in the task manager and Graph Editor; it does not enable the "resume job" button. This seems to cause the job on the farm to finish computing the current task and then pausing the rest of the job (to be verified).
-
I have noticed on several occasions that when clicking on buttons from the "JOB" tab, the info message that is sent contains the name of a node that is not part of the job at all (if all my submitted tasks are for NodeName_2, I may get a message about NodeName_1, which is not being computed at all).
Description
This PR goal is to change chunk system to be able to work with graphs where nodes can have no specific size set.
Changes
Compute system
extreme(that targets higher specs that what intensive does)scriptwhich is a mode for single-process simple process. It targets specific machines on the farm that have the ability to run multiple jobs in parallel so for simple jobs it should allow faster processingnode_chunksCreatedparam has been added to check if the chunks have been correctly initializedresetChunkswhen loading meshroom, that will create a list with a single chunk, and we can create chunks at any moment with_createChunks.NodeStatusDatahas been added that tracks anodeStatusfile which is similar to the chunk statuses files but is specific to the node. This node status is used to get the cached range parametrization of the node so that we can retrieve it when possible with_createChunksFromCache.taskManagerTaskThreadandTaskManagerhave been modified to launch the chunk creation when the node compute startsSubmitters
BaseSubmitterAPI have been updated to allow more flexibility. A newBaseSubmittedJobexists and is used to track jobs that have been created. The goal is to use this as an interface to call actions on it (stop/pause/restart...)bin/meshroom_createChunksscript have been created, and handles the chunk creation and additional chunk tasks spoolingChanges to the tractor API have been implemented here meshroomHub/mrSubmitters#1
Examples