Go to file
Dave Borowitz c02898db13 Reuse running daemon in AbstractDaemonTest
Maintain a single common daemon per test runner, and reuse it without
additional modification wherever possible. Associate each server with
an immutable Description class, and use a new, custom daemon when the
Description corresponding to the test class does not match the
Description corresponding to the method.

Some unscientific benchmarks, running tests after a full build.

On my workstation (HP Z420, 12 cores, 32G RAM, SSD):
  buck test --no-results-cache
    before: 4:37.88
    after:  3:22.36
  ChangeIT in Eclipse
    before: 26.153s
    after:  12.512s

On my laptop (11" MBA, 4 cores, 8G RAM, SSD):
  buck test --no-results-cache
    before: 15:34.28
    after:  11:34.93
  ChangeIT in Eclipse
    before: 30.903s
    after:  19.11s

We still pay a significant startup cost (~6-12s for the server), and
contention during buck test with default -j is an issue (3-5x increase
in time per test). But a 50%/25% reduction in single/aggregate test
time is nothing to sneeze at.

There is still plenty of low-hanging fruit that can take better
advantage of the per-test-class savings, like consolidating more
groups of integration tests together and removing HTTP dependencies.

Change-Id: I23b8d0e9839120a07a3fe1230f19184dc910682c
2015-04-02 15:35:44 -07:00
2015-03-20 10:11:53 +09:00
2014-12-18 11:16:03 +09:00
2015-03-25 12:21:59 -07:00
2015-03-13 15:35:33 +01:00
2015-03-13 15:35:33 +01:00
2015-03-19 18:35:04 +09:00
2015-03-25 23:22:12 +00:00
2015-03-04 10:59:02 +09:00
2015-03-07 23:03:15 +01:00
2015-03-03 07:12:16 +00:00
2013-11-09 07:45:00 +01:00
2015-03-31 21:41:03 +00:00
2015-03-04 10:59:02 +09:00
2008-11-14 16:59:34 -08:00
2009-03-27 20:20:10 -07:00
2015-03-13 15:35:33 +01:00
Description
RETIRED, Gerrit as used by OpenStack
120 MiB