Skip to content
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

Run modules concurrently during global begin transitions #18451

Merged

Commits on Apr 21, 2017

  1. Add test for getting a product made only at end transitions

    Test getting products that are only made at end transitions during begin transitions and during event.
    Dr15Jones committed Apr 21, 2017
    Copy the full SHA
    cd43b75 View commit details
    Browse the repository at this point in the history

Commits on Apr 23, 2017

  1. Determine items to get for all transitions, not just event

    Changed the interface to modules to allow querying about which data products it consumes for all transition types.
    Dr15Jones committed Apr 23, 2017
    Copy the full SHA
    489070e View commit details
    Browse the repository at this point in the history
  2. Principal knows if at end transition

    In the future, the Principal will need to know if it is at an end Run or end LuminosityBlock transition so we prefetch items that are only made at the end transition on the end transition.
    Dr15Jones committed Apr 23, 2017
    Copy the full SHA
    769a2e7 View commit details
    Browse the repository at this point in the history
  3. Only emit Event signals during Event processing

    Prefetching will be used for non-Event transitions so we need to be certain to only send signals from the ActivityRegistry meant for the Event during Event processing.
    Dr15Jones committed Apr 23, 2017
    Copy the full SHA
    582cc5b View commit details
    Browse the repository at this point in the history
  4. Update NoProcessProductResolver's cache at end transition

    Requesting a data product without using a process name can result in different results based on if the request happens before the end transition. The reason is if the module in the job only puts its data into the Principal at an end transition but the source contains a related data product from a previous process. Requesting before the end transition would return the previous process data product, while waiting to request at end will return the newly created data product.
    To accommodate prefetching of data products from Run and LuminosityBlocks, we need to reset the cached lookup information at end transition to allow the newly requested item to be obtained.
    Dr15Jones committed Apr 23, 2017
    Copy the full SHA
    e49a8b3 View commit details
    Browse the repository at this point in the history
  5. Copy the full SHA
    50fa04f View commit details
    Browse the repository at this point in the history

Commits on Apr 24, 2017

  1. EventProcessor runs modules in global begin transitions concurrently

    Use new async version for global begin Run and Luminosity transitions.
    Dr15Jones committed Apr 24, 2017
    Copy the full SHA
    fe9e05e View commit details
    Browse the repository at this point in the history
  2. Modules in SubProcesses are run concurrently on global begin transitions

    Extended the concurrent running of modules on global begin transitions to SubProcesses.
    Child SubProcesses are also run concurrently.
    Dr15Jones committed Apr 24, 2017
    Copy the full SHA
    d677356 View commit details
    Browse the repository at this point in the history