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

Change process model #1096

Merged
merged 1 commit into from
Dec 22, 2020
Merged

Change process model #1096

merged 1 commit into from
Dec 22, 2020

Conversation

mbj
Copy link
Owner

@mbj mbj commented Nov 11, 2020

Some numbers:

Before, on ~20k mutations:

Mutations/s: 10.5

Now, with this change:

Mutations/s: 20.0

These counts are from from a private customer project, with rails "infection".

Some more numbers:

null integration against auom "standard candle":

Before, 990 mutations:

Mutations/s: 250.7

Now:

Mutations/s: 349.5

(and this is a 4s run).

Against minitest subtract ~50 from both.

As usual: The test speet matters more than mutants overhead.

@mbj mbj marked this pull request as draft December 14, 2020 20:05
@mbj mbj force-pushed the change/process-model branch 3 times, most recently from 45c6e6c to 4050bf9 Compare December 19, 2020 05:42
@mbj
Copy link
Owner Author

mbj commented Dec 19, 2020

@dgollahon, @pawelpacana This branch passes integration specs but not yet unit/mutation coverage.

Still it should optimize large runs significantly. I even see positive impact on smaller normal runs. But there are also some counter examples on lower core counts.

The key difference is that the main processes memory that grows over time when accumulating the result does NOT get inherited anymore into the individual killforks.

If you have time feel free to give this branch an early trial on your projects.

@mbj mbj force-pushed the change/process-model branch 8 times, most recently from 9ae6870 to 36b3dca Compare December 22, 2020 15:50
@mbj mbj marked this pull request as ready for review December 22, 2020 15:51
* Reduce memory growth in killforks.
* Reduce chance of GC amplification
@mbj mbj merged commit ff9fc2f into master Dec 22, 2020
@mbj mbj deleted the change/process-model branch December 22, 2020 16:09
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.

1 participant