Git Product home page Git Product logo

timing's Introduction

Timing status (last ran on: 2024.05.06)

y3-prediction-scalability y2-prediction-timing isolator-timing flame1d-timing nozzle-timing

Current timing plots

Y3 Prediction: weak scaling on Lassen

Startup, compile, and runtime

Y3Prediction-scalability-full

Step details

Y3Prediction-scalability-step

Scaling

Y3Prediction-weak-scaling

Y2 Prediction

Smoke Test

Startup, compile, and step

Y2Prediction-smoke_test-full

Step details

Y2Prediction-smoke_test-step

Smoke Test 3D

Startup, compile, and step

Y2Prediction-smoke_test_3d-full

Step details

Y2Prediction-smoke_test_3d-step

Smoke Test KS

Startup, compile, and step

Y2Prediction-smoke_test_ks-full

Step details

Y2Prediction-smoke_test_ks-step

Isolator - 2D inert

Startup, compile, and step

Isolator2D-inert-full

Step details

Isolator2D-inert-step

Nozzle - 2D single gas

Startup, compile, and step

Nozzle-full

Step details

Nozzle-step

Flame1D - 2D mixture with combustion

Startup, compile, and step

Flame1D-full

Step details

Flame1D-step

Automated timings for CEESD production-ish runs

To run (should work anywhere):

$ curl -L -O https://raw.githubusercontent.com/illinois-ceesd/timing/main/time-y1-nozzle.sh
$ bash ./time-y1-nozzle.sh

To plot (requires matplotlib, yaml, pandas):

$ python utils/plot-timings.py

timing's People

Contributors

inducer avatar lukeolson avatar matthiasdiener avatar mtcam avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

mtcam

timing's Issues

Use logging functionality

https://github.com/anderson2981/CEESD-Y1_nozzle already has logging enabled. We should probably store the (aggregated) output sqlite file and maybe use this to measure the startup time, time step time, and other metrics.

# Gather output sqlite files from all ranks:
$ runalyzer-gather log.sqlite *.sqlite
# Add log.sqlite to this repo, maybe renaming the file to some time stamp

# Print execution time for time steps 10-20:
$ runalyzer -m log.sqlite -c 'print(sum(p[0] for p in q("select $t_step.max").fetchall()[10:20]))'

# Print max. startup time:
$ runalyzer -m log.sqlite -c 'print(q("select $t_init.max").fetchall()[0][0])'

Timings failing due to merge conflict

When merging mirgecom@y1_production into mirgecom@main the conflict below kills the timing script. This MIRGE-Com PR fixes.

++ git rev-parse y1_production
+ git checkout main
Already on 'main'
Your branch is up to date with 'origin/main'.
+ git switch -c temp
Switched to a new branch 'temp'
+ git merge y1_production --no-edit
Auto-merging mirgecom/simutil.py
Auto-merging mirgecom/initializers.py
Auto-merging mirgecom/boundary.py
CONFLICT (content): Merge conflict in mirgecom/boundary.py
Automatic merge failed; fix conflicts and then commit the result.

Automated consumer, plotter

We need an automated consumer of the timing data that will ingest the data, create plot(s), and make it publicly (at least among CEESD) available.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.