Method, apparatus, and program for eliminating thread skew in multithreaded performance benchmarks
First Claim
1. A method for performing a benchmark, comprising:
- signaling a start test event;
waiting during a rampup interval;
signaling a start measurement event at the end of the rampup interval;
collecting measurement results; and
signaling a stop test event.
3 Assignments
0 Petitions
Accused Products
Abstract
A data processing system performs a multithreaded performance benchmark with a rampup interval and a rampdown interval. The master thread signals a start test event and begins the rampup interval. After the rampup interval, the master thread signals a start measurement event. In response to the start measurement event, the worker threads record the units of work they complete. After the measurement interval, the master signals the workers to stop measuring, but to continue running. This begins the rampdown interval. After the rampdown interval, the master thread signals a stop test event. The rampup and rampdown intervals are long enough to ensure that measurements are not recorded during skew intervals. Thus, thread skew does not impact the results.
-
Citations
23 Claims
-
1. A method for performing a benchmark, comprising:
-
signaling a start test event;
waiting during a rampup interval;
signaling a start measurement event at the end of the rampup interval;
collecting measurement results; and
signaling a stop test event. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for performing a benchmark, comprising:
-
starting a plurality of worker threads;
waiting during a rampup interval;
signaling a start measurement event at the end of the rampup interval;
receiving measurement results from the worker threads;
signaling a stop measurement event;
waiting during a rampdown interval; and
signaling a stop test event at the end of the rampdown interval.
-
-
13. An apparatus for performing a benchmark, comprising:
-
first signal means for signaling a start test event;
rampup means for waiting during a rampup interval;
second signal means for signaling a start measurement event at the end of the rampup interval;
collection means for collecting measurement results; and
third signal means for signaling a stop test event. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
21. An apparatus for performing a benchmark, comprising:
-
means for starting a plurality of worker threads;
means for waiting during a rampup interval;
means for signaling a start measurement event at the end of the rampup interval;
means for receiving measurement results from the worker threads;
means for signaling a stop measurement event;
means for waiting during a rampdown interval; and
means for signaling a stop test event at the end of the rampdown interval.
-
-
22. A computer program product, in a computer readable medium for performing a benchmark, comprising:
-
instructions for signaling a start test event;
instructions for waiting during a rampup interval;
instructions for signaling a start measurement event at the end of the rampup interval;
instructions for collecting measurement results; and
instructions for signaling a stop test event.
-
-
23. A computer program product, in a computer readable medium, for performing a benchmark, comprising:
-
instructions for starting a plurality of worker threads;
instructions for waiting during a rampup interval;
instructions for signaling a start measurement event at the end of the rampup interval;
instructions for receiving measurement results from the worker threads;
instructions for signaling a stop measurement event;
instructions for waiting during a rampdown interval; and
instructions for signaling a stop test event at the end of the rampdown interval.
-
Specification