• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

google / benchmark / 1422 / 1
92%
master: 92%

Build:
DEFAULT BRANCH: master
Ran 14 Feb 2018 08:47PM UTC
Files 32
Run time 2s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

14 Feb 2018 08:44PM UTC coverage: 87.025% (+0.02%) from 87.002%
COMPILER=g++ C_COMPILER=gcc BUILD_TYPE=Coverage

push

travis-ci

web-flow
Improve State packing: put important members on first cache line. (#527)

* Improve State packing: put important members on first cache line.

This patch does a few different things to ensure commonly accessed
data is on the first cache line of the `State` object.

First, it moves the `error_occurred_` member to reside after
the `started_` and `finished_` bools, since there was internal
padding there that was unused.

Second, it moves `batch_leftover_` and `max_iterations` further up
in the struct declaration. These variables are used in the calculation
of `iterations()` which users might call within the loop. Therefore
it's more important they exist on the first cache line.

Finally, this patch turns the bool members into bitfields. Although
this shouldn't have much of an effect currently, because padding is
still needed between the last bool and the first size_t, it should
help in future changes that require more "bool like" members.

* Remove bitfield change for now

* Move bools (and their padding) to end of "first cache line" vars.

I think it makes the most sense to move the padding required
following the group of bools to the end of the variables we want
on the first cache line.

This also means that the `total_iterations_` variable, which is the
most accessed, has the same address as the State object.

* Fix static assertion after moving bools

1489 of 1711 relevant lines covered (87.03%)

4403556.9 hits per line

Source Files on job 1422.1 (COMPILER=g++ C_COMPILER=gcc BUILD_TYPE=Coverage)
  • Tree
  • List 0
  • Changed 8
  • Source Changed 2
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 1422
  • Travis Job 1422.1
  • 207b9c7a on github
  • Prev Job for COMPILER=g++ C_COMPILER=gcc BUILD_TYPE=Coverage on master (#1362.1)
  • Next Job for COMPILER=g++ C_COMPILER=gcc BUILD_TYPE=Coverage on master (#1424.1)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc