-
Notifications
You must be signed in to change notification settings - Fork 45
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
Disallow parameters in tasks and store common information from subtasks to master task #1185
Comments
There are several problems here. First, do we need to parse parameters in tasks?
actually works but conceptually speaking we are not allowing
because tasks should encapsulate all information, which lead to the unique ID, and allowing Therefore we should disallow the use of parameters in tasks. This help reduce the size of task files because eb82512 disallows parameters in tasks. |
Another problem: In the case of
The parameter is used by the step, but not in any of the substeps, so passing |
The last problem, in case the long variables are really needed in tasks:
and then we are creating a jumbo task with 100 copies of the |
But the following scenario will still work,
because it is not to use of parameters in tasks, right? I think the answer is Yes from your "last problem" statement although we can be smarter with it (not to save many copies)
Indeed. Looks like this is fixed? |
Yes, the example will work because |
The last patch improves efficiency of hopefully not a corner case of large variables in subtasks
For this particular example, the task file reduced from 6M to 66K, and run time from 90s to 23s. The 90s was mostly spent on the compression of the pickled dictionary. |
There has been a reportedcase when tasks are slow to create and submit. The problem traces down to the following scenario:
SoS passes the
very_long_list
tosub
so thatparameter: par
will get the value directly instead of reading from command line. The parameters are then sent to substeps and then to tasks.The text was updated successfully, but these errors were encountered: