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

feat: NPM canary deployment #2731

Merged
merged 8 commits into from
Oct 13, 2023
Merged

feat: NPM canary deployment #2731

merged 8 commits into from
Oct 13, 2023

Conversation

spypsy
Copy link
Member

@spypsy spypsy commented Oct 6, 2023

Fixes #2366

Checklist:

Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge.

  • If the pull request requires a cryptography review (e.g. cryptographic algorithm implementations) I have added the 'crypto' tag.
  • I have reviewed my diff in github, line by line and removed unexpected formatting changes, testing logs, or commented-out code.
  • Every change is related to the PR description.
  • I have linked this pull request to relevant issues (if any exist).

@spypsy spypsy marked this pull request as draft October 6, 2023 17:14
@spypsy spypsy marked this pull request as ready for review October 10, 2023 08:06
- canary-browser-test
- canary-cli-test

# Deployment and Canary tests
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
# Deployment and Canary tests
# Production deployment

PUBLISHED_VERSION=$(npm show . version ${TAG_ARG:-} 2> /dev/null) || true
HIGHER_VERSION=$(npx semver ${VERSION} ${PUBLISHED_VERSION} | tail -1)
if [ -n "$DIST_TAG" ]; then
TAG_ARG="--tag $DIST_TAG"
Copy link
Collaborator

Choose a reason for hiding this comment

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

Should this be set to something by default?

# Publish
if [ -n "${COMMIT_TAG:-}" ]; then
if [ "$DIST_TAG" == "latest" ]; then
# Check if version exists
Copy link
Collaborator

Choose a reason for hiding this comment

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

Not quite sure I follow this block. Doesn't this only apply the dist tag if there is a COMMIT_TAG and the DIST_TAG is latest?

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes this was wrong, fixed in bbae4f7

@AztecBot
Copy link
Collaborator

Benchmark results

All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.

L2 block published to L1

Each column represents the number of txs on an L2 block published to L1.

Metric 8 txs 32 txs 128 txs
l1_rollup_calldata_size_in_bytes 45444 179588 716132
l1_rollup_calldata_gas 222840 868316 3447932
l1_rollup_execution_gas 841927 3595424 22203301
l2_block_processing_time_in_ms 1047 3980 15812
note_successful_decrypting_time_in_ms 332 1032 3787
note_trial_decrypting_time_in_ms 33 107 137
l2_block_building_time_in_ms 9135 36862 154303
l2_block_rollup_simulation_time_in_ms 6779 27381 108266
l2_block_public_tx_process_time_in_ms 2305 9337 45301

L2 chain processing

Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric 10 blocks 20 blocks 30 blocks
node_history_sync_time_in_ms 32366 79064 139017
note_history_successful_decrypting_time_in_ms 4864 13854 20618
note_history_trial_decrypting_time_in_ms 151 246 257
node_database_size_in_bytes 1187472 1902115 2755744
pxe_database_size_in_bytes 54187 108338 162578

Circuits stats

Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit circuit_simulation_time_in_ms circuit_input_size_in_bytes circuit_output_size_in_bytes
private-kernel-init 55.86656441717791 56577 14745
private-kernel-ordering 30.400306748466257 20137 8089
base-rollup 872 631604 810
root-rollup 38.19512195121951 4072 1097
private-kernel-inner 53.304783950617285 72288 14745
public-kernel-private-input 52.29938271604938 37359 14745
public-kernel-non-first-iteration 32.19367283950617 37401 14745
merge-rollup 0.9767441860465116 2592 873

@spypsy spypsy merged commit 7d48ed3 into master Oct 13, 2023
2 checks passed
@spypsy spypsy deleted the spy/next-canary-deployment branch October 13, 2023 09:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

Create 'next' releases on NPM & Dockerhub to use with Canary flow
3 participants