Skip to content

Performance test the various crossgen2 options #1821

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

Closed
MichaelSimons opened this issue Apr 8, 2020 · 6 comments
Closed

Performance test the various crossgen2 options #1821

MichaelSimons opened this issue Apr 8, 2020 · 6 comments

Comments

@MichaelSimons
Copy link
Member

MichaelSimons commented Apr 8, 2020

This issue tracks the work to do performance testing on the various crossgen2 options discussed in #1791. The work to implement the Dockerfile is tracked under #1820.

The performance testing should include analyzing the startup time, execution time as well as analyze the size of the various images including the size of the shared layers.

@MichaelSimons
Copy link
Member Author

MichaelSimons commented Apr 8, 2020

The following table provides the sizes of the the various crossgen2 options discussed in #1791. These images were produced from 942d7ee by running .\build-and-test.ps1 -Version 5.0 -OS alpine3.11 -Mode Build

Image Dockerfile Base Image Total Size Owned Layers Size Shared Layers Size
runtime-deps:5.0-alpine3.11 Dockerfile alpine:3.11 9.41
runtime:5.0-alpine3.11 Dockerfile runtime-deps 90.2 80.79 9.41
runtime:5.0-alpine3.11-composite Dockerfile runtime-deps 117 107.59 9.41
aspnet:5.0-alpine3.11 Dockerfile runtime 108 17.8 90.2
aspnet:5.0-alpine3.11-composite Dockerfile runtime-deps 152 142.59 9.41
aspnet:5.0-alpine3.11-composed-composite Dockerfile runtime:composite 142 25 117
aspnet:5.0-alpine3.11-runtime-composite Dockerfile runtime:composite 135 18 117
sdk:5.0-alpine3.11 Dockerfile runtime-deps 418 408.59 9.41
sdk:5.0-alpine3.11-aspnet-base Dockerfile aspnet 418 310 108
sdk:5.0-alpine3.11-aspnet-composite Dockerfile aspnet:composite 462 310 152
sdk:5.0-alpine3.11-aspnet-composed-composite Dockerfile aspnet:composed-composite 452 310 142
sdk:5.0-alpine3.11-runtime-composite Dockerfile aspnet:runtime-composite 445 310 135

All sizes (MB) are the expanded image on disk

@MichaelSimons
Copy link
Member Author

cc @richlander, @davidwrighton

@MichaelSimons
Copy link
Member Author

@davidwrighton - you mentioned the following at #1775 (comment)

The produced image is 152MB, 86MB of which is the composite shared image with just the R2R code in it. Previous efforts on size reduction of the R2R images are not reflected in this number, and will need to be rebuilt

Are these size reduction changes checked in? Do you know what build of crossgen2 I should be trying to get?

@MichaelSimons
Copy link
Member Author

@richlander, @davidwrighton - When do we want @billwert to run some perf tests against these proposed options? What functional validation should we be doing? I have hooked up the docker tests which run and e2e app scenario with these new images.

@billwert - Do you have the infrastructure in place to measure containerized app startup? In order to test the images do you need them published to a Docker registry?

@davidwrighton
Copy link
Member

davidwrighton commented Apr 10, 2020

@MichaelSimons size reduction changes will require significant work. It will take a month or two once we are focussed on it.

@davidwrighton
Copy link
Member

Also, we are actively working on the correctness of these larger composite images. At the moment, I have relatively little confidence in correctness, but that confidence should grow rapidly over the next month or so.

@mthalman mthalman moved this to Backlog in .NET Docker Dec 1, 2021
@MichaelSimons MichaelSimons removed their assignment Dec 1, 2021
@mthalman mthalman moved this from Backlog to Needs Review in .NET Docker Dec 19, 2022
@mthalman mthalman moved this from Needs Review to Backlog in .NET Docker Feb 15, 2023
@github-project-automation github-project-automation bot moved this from Backlog to Done in .NET Docker Jan 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

No branches or pull requests

2 participants