-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
startup RSS increase in both native and JVM mode #44873
Comments
/cc @zakkak (native-image) |
Thanks for opening this! Do you perhaps have any flamegraphs or other measurements that could indicate what is causing the issue? |
No clues, nor I have any cycles to do it :"/ |
👌🏽 |
@rsvoboda too: in case you can run the Quarkus start/stop tests on the mentioned commits, to check if it shows something there as well. |
I'm also going to have a look into it. |
How did we measure what we have on the home page of quarkus.io because it says 12 MB of RSS after first request for a REST application (which the getting-started is)? Because I see we are at 40MB+ here even for 1 CPU. |
I suppose It was a very old Quarkus version (pre-resteasy reactive? Likely!) - and native image has changed as well too, since is now fatter than has ever been (there are few articles about it from us well, including some related vulnerability mitigations, too). |
This info is IMO very outdated. Ideally, we should have this automated, i.e. measure the RSS consumption for every new release but that would take quite some work I guess 🤷. |
Agree @mkouba , this is indeed one among many of the topic for
Since it requires some consensus on what/why/who |
Describe the bug
Using https://github.com/quarkusio/quarkus-quickstarts/tree/development/getting-started startup tests in native-mode (but it applies to JVM mode well) with a 4 cores machine:
Which trend is pretty obvious in our perf CI is (still native image case):
The RSS X CPU part is related how many cores the machine starting quarkus is using (if via docker
--cpus=X
options or can be done manually viataskset
ornumactl
).The actual measurement related RSS can be performed via a script like this, since we can focus on the case RSS 4 (which allow to be run from laptops too):
In case
docker
is used, retrieving the PID can be done viawhich could add a filtering on the docker name instance via
if the container has some specific name assigned.
If these info to reproduce it are not sufficient I can create a repository for convenience.
The text was updated successfully, but these errors were encountered: