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

Docker fails to start when more than 16 virtual cores are selected, why? - 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - #1144

Closed
pokinoi opened this issue Jan 15, 2017 · 11 comments

Comments

@pokinoi
Copy link

pokinoi commented Jan 15, 2017

Expected behavior

Booting up docker for mac.

Actual behavior

screenshot 2017-01-15 12 39 44

Information

Increasing the CPU usage above 16 virtual cores leads to docker crashing. i intend

screenshot 2017-01-15 12 42 12

Steps to reproduce the behavior

  1. ...increase the cpu aloocation from 16 to 20-24.
  2. ...once the docker is trying to restart, it fails.

Docker for Mac: version: 1.13.0-rc6-beta36 (a158c69c7)
macOS: version 10.12.2 (build: 16C68)
logs: /tmp/848E3C9D-17F0-4E6E-A0DF-189267D743C5/20170115-123211.tar.gz
failure: com.docker.slirp is not running
[OK] vmnetd
[OK] dns
[ERROR] driver.amd64-linux
com.docker.driver.amd64-linux -db is not running
[OK] virtualization VT-X
[OK] app
[ERROR] moby
/Users/nasiryakubu/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/console-ring does not exist
[OK] system
[OK] moby-syslog
[ERROR] db
Connection refused (ECONNREFUSED) connecting to /Users/nasiryakubu/Library/Containers/com.docker.docker/Data/s40: check if service is running
com.docker.db is not running
[OK] env
[OK] virtualization kern.hv_support
[ERROR] slirp
Unexpected error ((Failure
"Error connecting socket to 9p endpoint unix:/Users/nasiryakubu/Library/Containers/com.docker.docker/Data/s51: Unix.Unix_error(Unix.ECONNREFUSED, "connect", "")")) connecting to /Users/nasiryakubu/Library/Containers/com.docker.docker/Data/s51
com.docker.slirp is not running
slirp check failed with: (Failure
"Error connecting socket to 9p endpoint unix:/Users/nasiryakubu/Library/Containers/com.docker.docker/Data/s52: Unix.Unix_error(Unix.ECONNREFUSED, "connect", "")")
[ERROR] osxfs
com.docker.osxfs is not running
[OK] moby-console
[OK] logs
[ERROR] docker-cli
Connection refused (ECONNREFUSED) connecting to /var/run/docker.sock: check if service is running
Connection refused (ECONNREFUSED) connecting to /Users/nasiryakubu/Library/Containers/com.docker.docker/Data/s60: check if service is running
docker ps failed
[OK] menubar
[OK] disk

@pokinoi pokinoi changed the title 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - docker doesn't use 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - docker doesn't use more than 16 cores, why? Jan 15, 2017
@pokinoi pokinoi changed the title 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - docker doesn't use more than 16 cores, why? 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - docker doesn't use more than 16 CPU cores, why? Jan 15, 2017
@pokinoi pokinoi changed the title 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - docker doesn't use more than 16 CPU cores, why? docker doesn't use more than 16 CPU cores, why? - 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - Jan 16, 2017
@pokinoi pokinoi changed the title docker doesn't use more than 16 CPU cores, why? - 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - Docker fails to start when more than 16 virtual cores are selected, why? - 848E3C9D-17F0-4E6E-A0DF-189267D743C5 - Jan 16, 2017
@dsheets
Copy link
Contributor

dsheets commented Jan 16, 2017

This is a bug in the GUI. Docker for Mac only supports 16 vCPUs right now. What hardware do you have with more than 16 processing cores? If I may ask, what is your use case that requires more than 16 vCPUs?

We may consider increasing the maximum number of vCPUs but haven't had a demand for that, yet. The GUI should prevent allocation of more than 16 cores which is currently the maximum: https://github.com/docker/hyperkit/blob/master/src/include/xhyve/vmm/vmm_common.h#L33.

@dsheets
Copy link
Contributor

dsheets commented Jan 16, 2017

I've fixed the GUI bug and the number of vCPUs should be limited to 16 in an upcoming release. Thanks for your report! If you have information about your hardware or use cases, it would still be appreciated.

@pokinoi
Copy link
Author

pokinoi commented Jan 16, 2017

Hello David,

I am currently trying to run OpenFOAM on docker. I have 12 cores (24 virtual cores/ threads).

I intend to use all of it to run my computation. hence the need to increase it. my case utilises about 26 million cells, with all the radiation fields, turbulence, with polynomial equations as boundaries, slightly complex case to be honest with you. i believe it will be handy to allow for maximum utilisation of all the processors during computation.

Kind regards

@dsheets
Copy link
Contributor

dsheets commented Jan 16, 2017

Interesting use case! I would recommend comparing run times between 12 cores, 13 cores, 15 cores, and 16 cores. You may find that running vCPUs on hyperthreaded "cores" is not very efficient due to processor architecture. Additionally, virtualized interprocessor interrupts are quite expensive so the workload may not scale up as we would hope.

It is likely that we can increase the maximum vCPU count without a huge amount of effort but there is some careful work to be done. We'd be very interested in how well OpenFOAM on Docker scales with Docker for Mac so if you get any performance numbers, please share them! 😄

@justincormack
Copy link
Member

Fixed in hyperkit so we can fix the UI now.

@pokinoi
Copy link
Author

pokinoi commented Jan 21, 2017

Hello David,

you are absolutely right I just realised and got some more clarification on your previous email. so by running my OpenFOAM case on docker on 12 cores, means that I am using all my 12 cores and 12 virtual CPUs. whereas the other 12 are used for logistics and other reasons. However now that you guys have come up with n upgrade, it seems like maybe attempting to use all the 24 threads would be a good idea.

I didn't measure the time because my simulation just takes a long time to run. however, it seems like running the simulation with 12 virtual cores seems faster than 16 virtual cores. but I am not exactly sure, to be honest.

i will give it a try within the next few days and update. apologise for the delayed response, trying to round up my PhD thesis and everything is all over the place.

kind regards

@samoht
Copy link
Contributor

samoht commented Jan 30, 2017

@pokinoi can you confirm that Beta39 fixes your issue? Thanks!

@pokinoi
Copy link
Author

pokinoi commented Jan 30, 2017

@samoht Apologise for the delayed response. I haven't had the chance to test it out yet as I have been running some other simulations, which I can't stop, unfortunately. however, I will be able to confirm tomorrow or next. however, I have to say I hail the creators of docker and the amazing support team. I can't believe an update was realised within a few days to resolve this issue. Also, as mentioned by dave, trying to use all my threads as arithmetic threads is not such a great idea but i will test it out and update with results.

thanks allot.

@samoht samoht closed this as completed Jan 31, 2017
@pokinoi
Copy link
Author

pokinoi commented Feb 7, 2017

Apologies for the delayed response. I still have not been able to out the 24 cores yet as i have been busy trying to generate some results for my PhD and i have some interesting deadlines. howver i can 100% confirm that running my case on docket is significantly faster than using parallels desktop on mac (bigly).However, cleaning up a case takes much longer.

i will provide upddates on the 24 cores this week.

@pokinoi
Copy link
Author

pokinoi commented Mar 9, 2017

nice, new update seems to clean up case, quite nicely. thanks for that aswell

@docker-robott
Copy link
Collaborator

Closed issues are locked after 30 days of inactivity.
This helps our team focus on active issues.

If you have found a problem that seems similar to this, please open a new issue.

Send feedback to Docker Community Slack channels #docker-for-mac or #docker-for-windows.
/lifecycle locked

@docker docker locked and limited conversation to collaborators Jun 22, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants