8
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

WHITEPLUSAdvent Calendar 2017

Day 11

一年ぶりにDocker for Mac のファイル共有をベンチ

Last updated at Posted at 2017-12-11

ホワイトプラスのエンジニアのkaizoaです。
なんでもやります💪

去年のAdvent CalendarでDocker for Macのファイル共有のベンチを見てたので今年もやってみたいと思います。

Docker for Mac のファイル共有でconsistencyを指定してアクセスを速くする(CE-17.04.0)
Docker for Macのファイル共有が遅いので計測してみる

普段からリネットの全エンジニアが使う開発環境のDocker for Macですが、もともとボリュームのファイル共有があまり速くないため、もっと速くなってくれると嬉しいです。

Docker Community Edition 17.11.0-ce-rc4-mac39 2017-11-17 (Edge)

一年の振り返り的な意味の他に、こちらのアップデートの効果が期待できるのでやってみたいと思いました。

For systems running APFS on SSD on High Sierra, use raw format VM disks by default. This increases disk throughput (from 320MiB/sec to 600MiB/sec in dd on a 2015 MacBook Pro) and disk space handling.
Existing disks are kept in qcow format, if you want to switch to raw format you need to “Reset to factory defaults”. To query the space usage of the file, use a command like:
$ cd ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/
$ ls -ls Docker.raw
3944768 -rw-r--r--@ 1 user staff 68719476736 Nov 16 11:19 Docker.raw
The first number (3944768) is the allocated space in blocks; the larger number 68719476736 is the maximum total amount of space the file may consume in future in bytes.

APFSの環境(High Sierra)でRAWフォーマットのVMディスクを使っていればosxfsがスループット向上するとのことです。
OSのアップグレードが必要な場合は、一度Docker for MacをReset to factory defaultsする必要があります。

計測

使うコードは去年と一緒です。
実行環境は去年と多少変わってるけど、大して性能差ない気がする

  • MacBook Pro (13-inch, 2016, Two Thunderbolt 3 ports)
  • High Sierra 10.13.1
  • Docker 17.11.0-ce-mac40 (20561)
#consistent
testing: warning: no tests to run
BenchmarkReadVolumeFile_Buf128-2            1000           1772383 ns/op
BenchmarkReadVolumeFile_Buf1024-2           1000           1501613 ns/op
PASS
ok      bench-fio       3.702s
#cached
testing: warning: no tests to run
BenchmarkReadVolumeFile_Buf128-2            2000            916963 ns/op
BenchmarkReadVolumeFile_Buf1024-2           3000            438266 ns/op
PASS
ok      bench-fio       3.313s
#delegated
testing: warning: no tests to run
BenchmarkReadVolumeFile_Buf128-2            2000            896985 ns/op
BenchmarkReadVolumeFile_Buf1024-2           3000            406570 ns/op
PASS
ok      bench-fio       3.183s

全体的に向上が見られ、cachedの2つ目のベンチでは7割増し💪


ホワイトプラスではエンジニアを募集しています
ホワイトプラスでは、web×リアル領域で「新しい日常を創りたい」エンジニアWanted!!しております。

8
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?