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

Feature/cc/do not write image #108

Merged

Conversation

wagoodman
Copy link
Owner

@wagoodman wagoodman commented Nov 29, 2018

Pulling from @ChrisCinelli 's fork, this eliminates concurrency on loading, however, it fixes several bugs in the process (Fixes #105, #106 , #44 ). This also sets up for removing jotframe which will make dive cross platform and takes care of issue #95 .

@wagoodman wagoodman merged commit 3320d2d into wagoodman:master Nov 29, 2018
@ChrisCinelli
Copy link
Contributor

You anticipated me... since I wrote it already...
Before this PR dive was caching in a temp file the docker image. It was also allocating a few memory buffers that increased memory use and in case of large images created even more disk access because of memory being swapping out to disk by the kernel.

I have a lot faster performances on my machine after this change. Memory buffers have also be eliminated. This keeps the memory down even more and the CPU does not have to spend time copying memory around.

In order to achieve this I had to remove the parallel processing of layers. But, for what I can see, the code in this PR is a lot faster regardless and it does not wear out my SSD.

Because we do not use go routines anymore, the race condition on writing on layerMap is also removed that fixes #44.

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.

Prevent to store in memory all layers
2 participants