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

profiling: profile the UIS against the "complex" workflow #142

Open
oliver-sanders opened this issue Jan 12, 2022 · 0 comments
Open

profiling: profile the UIS against the "complex" workflow #142

oliver-sanders opened this issue Jan 12, 2022 · 0 comments

Comments

@oliver-sanders
Copy link
Member

It would be good to profile the UI Server against the "complex" workflow running with something like a 1-5 second sleep for a few cycles to give us a good benchmark for expected resource usage.

Suggested experiment:

  • Create an environment with no other Jupyter Server extensions (including Jupyter Lab).
    • So we are profiling Cylc, the whole Cylc and nothing but the Cylc.
  • Clear your cylc-run directory (including stopped workflows).
    • So we are only measuring the impact of the one workflow.
  • Profile the cylc gui command.
    • This will give us a memory watermark for an idle UIS.
    • Profile the default landing page (i.e. the Dashboard).
  • Run the "complex" workflow (located in the Cylc 7 source code under etc/dev-suites).
    • I would pick a 1-5 second sleep (whatever works best for your platform, note the value you choose).
    • Start it --paused.
    • Set the final cycle point to a few cycles in the future (note the value you use).
    • Suggest profiling the workflow too so we can compare the memory fluctuation of the two side-by-side.
  • Profile the cylc gui command.
    • Open a tree view on the "complex" workflow.
    • Unpause the workflow.
    • Let the workflow run to completion, give it a few seconds, then end the experiment.

Suggest using Memory Profiler on both the workflow and UIS and generating memory usage graphs for both. CPU usage is also of interest.

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

No branches or pull requests

1 participant