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

Add flamegraphs #236

Merged
merged 1 commit into from
Jan 31, 2023
Merged

Add flamegraphs #236

merged 1 commit into from
Jan 31, 2023

Conversation

LenkaNovak
Copy link
Collaborator

@LenkaNovak LenkaNovak commented Jan 25, 2023

Purpose

Addresses the first component of #229

To-do

  • transfer/modify infrastructure from ClimaAtmos/ClimaCore (by @charleskawczynski )
  • setup benchmarks for allocs test
  • implement in Buildkite - here
  • add docs to flame.jl and to Slurm-Buildkite Wiki - here

  • I have read and checked the items on the review checklist.

@LenkaNovak LenkaNovak changed the title init flamegraphs Add flamegraphs Jan 25, 2023
@LenkaNovak LenkaNovak self-assigned this Jan 25, 2023
@LenkaNovak LenkaNovak mentioned this pull request Jan 25, 2023
10 tasks
@LenkaNovak LenkaNovak force-pushed the ln/flamegraphs branch 3 times, most recently from e2173ea to 9cb0541 Compare January 27, 2023 22:13
@LenkaNovak LenkaNovak marked this pull request as ready for review January 28, 2023 00:19
@LenkaNovak LenkaNovak requested a review from simonbyrne January 28, 2023 00:19
Copy link
Member

@juliasloan25 juliasloan25 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to me!

artifact_paths: "experiments/AMIP/moist_mpi_earth/output/amip/target_amip_n32_shortrun_artifacts/*"
env:
CLIMACORE_DISTRIBUTED: "MPI"
agents:
slurm_ntasks: 32
slurm_mem_per_cpu: 16G

# performance tests
- label: ":rocket: performance: flame graph and allocation tests"
Copy link
Member

@juliasloan25 juliasloan25 Jan 28, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it might be helpful each of the performance tests has a unique label and artifact_paths so we can tell them apart more easily and avoid overwriting outputs

@@ -320,7 +324,7 @@ cs = CoupledSimulation{FT}(
coupler_fields,
parsed_args,
conservation_checks,
tspan,
[tspan[1], tspan[2]],
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would it be simpler to initialize tspan as an array of length 2 instead? i.e. tspan = [Int(0), t_end], then we can just pass in tspan here.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doing it this way allows specifying tspan as a Tuple (like in Atmos's global arguments which overwrites our tspan) or as an array. I know... and I agree that we should unify this, once we don't have synonymous global variables lingering about in the background. :)

transfer + modify from ClimaCore/ClimaAtmos

add alloc benchmarks

add buildkite driver

rev allocs

docs

activate docs

clean

fix

doc fix

doc fix

check in perf Manifest

bkite flag order fix

scope fix

FT redef error

fix

fix

stash

fix

clean

rebase fixes

rebase fix bkite

rev1
@LenkaNovak
Copy link
Collaborator Author

bors r+

@bors
Copy link
Contributor

bors bot commented Jan 31, 2023

@bors bors bot merged commit fdc2011 into main Jan 31, 2023
@bors bors bot deleted the ln/flamegraphs branch January 31, 2023 04:07
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.

2 participants