Skip to content

Use advanced task settings - #13

Open
Alxiice wants to merge 3 commits into
masterfrom
feat/use_advanced_task_settings
Open

Use advanced task settings#13
Alxiice wants to merge 3 commits into
masterfrom
feat/use_advanced_task_settings

Conversation

@Alxiice

@Alxiice Alxiice commented Jun 22, 2026

Copy link
Copy Markdown
Collaborator

Description

Add extended use of the advanced job settings in Meshroom.

New possibilities include :

  • One task can execute up to 3 commands :
    • a setup command
    • the regular process/processChunk command
    • a teardown command
  • override the rez wrapper to handle special cases.
  • set an explicit service_key for special cases where available cpu/gpu/ram config are not enough.
  • set excluded_hosts to avoid specific machines

For example we can use the setup command to mount volumes.

Note

The main goal of this PR is to be able to launch processes on Windows machines through Tractor. Until now there was only Linux support.

Details

Since alicevision/Meshroom#3141 the BaseNode has a getSubmissionSettings method that returns a SubmissionSettings object.

On the SubmissionSettings we can get StageSettings objects for each stage : preprocess, process, postprocess.

In this PR we use these to extend the features of Meshrooms's tractor submitter.

PR content (reading order) :

  • meshroom/tractorSubmitter/rezUtils.py
    • Introduces CommandArgsBuilder which is a helper class to build the command line that is passed to the tractor API.
  • meshroom/tractorSubmitter/api/base.py
    • Modifications to use the SubmissionSettings and the StageSettings
      • use cpu/gpu/ram settings but also service_key, excluded_hosts and cuda_tag
    • replace cook by get_kwargs and get_commands
    • get_commands returns a list of commands : it includes the setup/teardown commands
    • get_commands uses the CommandArgsBuilder helper to build the command.
  • meshroom/tractorSubmitter/tractorSubmitter.py
    • adapt to work with previous modifications : handle task multi-commands
  • meshroom/tractorSubmitter/api/subtaskCreator.py
    • adapt to work with previous modifications : handle task multi-commands

@Alxiice
Alxiice requested a review from cbentejac June 22, 2026 16:00
@Alxiice Alxiice self-assigned this Jun 22, 2026
@Alxiice Alxiice changed the title Feat/use advanced task settings Use advanced task settings Jul 8, 2026
@cbentejac
cbentejac force-pushed the feat/use_advanced_task_settings branch from daddd75 to f403e74 Compare July 23, 2026 10:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant