Slow network performance, com.docker.slirp.exe at 100% CPU usage

Expected behavior

When copying data from another machine on the LAN to the windows host machine, I can get about 90MB/s

Actual behavior

From a docker container, I can only get about 4MB/s. If I open the console to the MobyLinuxVM from Hyper-V Manager, I get the same slow performance.

Looking at Task Manager when doing a transfer to/from a container, or to/from the Moby VM, the com.docker.slirp.exe process hits 20% percent. I have a 4 core box with hyper threading enabled (so 8 threads), so this means it’s using more than 100% of a single CPU thread.

Information

A diagnostic was uploaded with id: E8962A26-24A2-4F55-A14F-B847E6747A7A/2016-06-21_14-52-21

  • host distribution and version
    Windows 10 Version 1511 (OS Build 10586.420)

Steps to reproduce the behavior

  1. Either start a container, or open the console to MobyLinuxVM from Hyper-V Manager
  2. wget ftp://some-host-on-the-lan/path/to/large/file
  3. Watch the CPU usage of com.docker.slirp.exe in task manager

Also hit this. Incredibly bad performance, basically makes docker for windows useless for our use case.

The latest version (1.12.0-rc3-beta18 (build: 5226)) improves the performance somewhat, but there is still a long way to go.

I’m now getting about 10 MB/s, instead of the 4 MB/s I was previously getting. I should be getting about 90MB/s though.

Are there any plans to investigate this issue?

Thanks for reporting. I’ve reproduced the issue and logged an internal ticket to track. We’re continuously trying to improve the performance of Docker for Windows, thanks for helping us find bottlenecks!

Michael

Is there any update on this? Thanks.

There is not, I’m afraid, we’re still looking at how to improve this.

I notice that the latest beta (39) seems to have improved the throughput somewhat. I can now get about 45 MB/s when copying a file from the LAN. This is a massive improvement over the 4 MB/s I used to get, but is still half the speed that I should be getting.

Many thanks for improving this, but wondered if there are any plans to improve it any further?

Glad you noticed an improvement! And yes, as stated above, we’re continuously trying for improve performance.