Open scottdfedorov opened 1 month ago
Also, discovered this issue before which is what made me initially play around with the virtualization settings, to no effect :( https://github.com/docker/for-mac/issues/5389 Sorry to @ you @stephen-turner, but you were so helpful there. Let me know if you have any ideas of what we can try or additional info I can supply.
Hello @scottdfedorov, Thank you for the thorough description! We're currently working on a significant improvement in this area. We'll post here a build for testing soon, stay tuned!
Thanks @doringeman . What kinda of a timeline would you wager "soon" is? Weeks? Months?
Is there anything you might suggest we try to improve things in the meantime? I'm not sure where this bottleneck is, but the postgres container is supposedly not using a write to disk (fsync=off
) so not sure its disk related. Any other points we might be able to speed it up on?
I expect to have a build ready in the next couple of weeks.
Amazing, thanks! Let me know if I can help with anything.
This sounds amazing! I'll be curious if your change fixes this issue from a few years ago. The linked issue has another benchmark that might be helpful for testing.
Description
I am working on moving our codebase to Testcontainers and noticed the runtimes for our test suite are significantly longer when running with a Docker Postgres container versus the same code pointed to an installed Postgres natively. (The only change in the code is changing the jdbc URL to point to one or the other.)
I have created a repo with minimum required reproduction steps. https://github.com/scottdfedorov/tc-postgres-perf-demo
The benchmarks from this are showing that in fact between 2x and 4x difference between the two.
We have tested with multiple generations of M# Macs. I have also tried maxing out the resources in Docker Desktop and nearly every combination of
Use Virtualization framework
and the file sharing settings (VirtioFS
,gRPC FUSE
,...) The impact is the same.Wondering what we can do to speed up the execution on ARM-based Mac's.
Reproduce
Checkout https://github.com/scottdfedorov/tc-postgres-perf-demo, run the script from root (or setup manually and run).
Expected behavior
No response
docker version
docker info
Diagnostics ID
Diagnostics ID: 2E868F3A-FA50-47AE-882F-F642AB2CFC2A/20240926202545 (uploaded)
Additional Info
cc @eddumelendez