Difference between revisions of "Performance research"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
− | Written here are performance issues found | + | Written here are performance issues found. |
+ | |||
+ | Timing stats of live migration of a small container with 11 tasks is | ||
+ | |||
+ | * Total time ~3.5 seconds | ||
+ | * Frozen time ~3.0 seconds | ||
+ | ** Pre-dump stages ~0.5 seconds each | ||
+ | ** Restore time ~1.9 seconds | ||
+ | ** Images transfer time ~0.3 seconds | ||
+ | |||
+ | Below is the list of issues found | ||
== Dump == | == Dump == | ||
Line 5: | Line 15: | ||
== <code>parse_smaps</code> == | == <code>parse_smaps</code> == | ||
− | This | + | Time spent in this routine is about 0.1 seconds on dump. This one exploits /proc heavily. For a container with 11 tasks the syscall stats look like |
834 read | 834 read | ||
Line 18: | Line 28: | ||
11 openat(AT_FDCWD, "/proc/$pid/map_files", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4 | 11 openat(AT_FDCWD, "/proc/$pid/map_files", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4 | ||
− | |||
− | |||
== Restore == | == Restore == |
Revision as of 20:54, 30 January 2014
Written here are performance issues found.
Timing stats of live migration of a small container with 11 tasks is
- Total time ~3.5 seconds
- Frozen time ~3.0 seconds
- Pre-dump stages ~0.5 seconds each
- Restore time ~1.9 seconds
- Images transfer time ~0.3 seconds
Below is the list of issues found
Dump
parse_smaps
Time spent in this routine is about 0.1 seconds on dump. This one exploits /proc heavily. For a container with 11 tasks the syscall stats look like
834 read 1451 fstat 1462 close 1642 openat
while opens and stats happen on
193 openat(4, "map-symlink", O_RDONLY) = -1 ENOENT (No such file or directory) 1438 openat(4, "map-symlink", O_RDONLY) = 5 11 openat(AT_FDCWD, "/proc/$pid/map_files", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4