Changeset 190541 in webkit
- Timestamp:
- Oct 2, 2015 8:10:13 PM (9 years ago)
- Location:
- trunk/PerformanceTests
- Files:
-
- 4 added
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/PerformanceTests/ChangeLog
r190526 r190541 1 2015-10-02 Said Abou-Hallawa <sabouhallawa@apple.com> 2 3 Add shared code for a new a graphics benchmark 4 https://bugs.webkit.org/show_bug.cgi?id=149691 5 6 Reviewed by Ryosuke Niwa. 7 8 This set of classes will be shared and used by the tests and the runner 9 of a new graphics benchmark. 10 11 * Animometer/resources: Added. 12 * Animometer/resources/algorithm.js: Added. 13 (Array.prototype.swap): Swaps two elements in an array. 14 (Heap): Binary Min/Max Heap object 15 (Heap.prototype._parentIndex): Given the child node index, it returns the parent index. 16 (Heap.prototype._leftIndex): Given the parent node index, it returns the left node index. 17 (Heap.prototype._rightIndex): Given the parent node index, it returns the right node index. 18 (Heap.prototype._childIndex): Given the parent node index, it returns the child index that may violate the heap property. 19 (Heap.prototype.init): Initializes the heap state. 20 (Heap.prototype.top): Returns the value stored at the top of the heap. 21 (Heap.prototype.push): Pushes a new node at the top of the heap. 22 (Heap.prototype.pop): Extracts the top node of the heap. 23 (Heap.prototype._bubble): Fixes the heap property by moving upward. 24 (Heap.prototype._sink): Fixes the heap property by moving downward. 25 (Heap.prototype.str): Prints the nodes of the heap to a string. 26 (Heap.prototype.values): Returns the last "size" heap elements values. 27 28 (Algorithm.createMinHeap): Creates a size-bounded min-heap object. 29 (Algorithm.createMaxHeap): Creates a size-bounded max-heap object. 30 31 * Animometer/resources/extensions.js: Added. 32 (Point): Point object but can be used as size also. 33 (Point.pointOnCircle): Given, the radius of the circle and the angle of the point, it returns a point object. 34 (Point.pointOnEllipse): Given, the radiuses of the ellipse and the angle of the point, it returns a point object. 35 (Point.prototype.get width): Should be called when the point is used as size. 36 (Point.prototype.get height): Should be called when the point is used as size. 37 (Point.prototype.get center): Should be called when the point is used as size. 38 (Point.prototype.add): Returns a new point = this + other. 39 (Point.prototype.subtract): Returns a new point = this - other. 40 (Point.prototype.multiply): Returns a new point = this * other. 41 (Point.prototype.move): Moves the point in a given direction, velocity, time period. 42 43 (Insets): Represents borders of a container. 44 (Insets.prototype.get width): Returns left + right. 45 (Insets.prototype.get height): Returns top + bottom. 46 47 (SimplePromise): 48 (SimplePromise.prototype.then): 49 (SimplePromise.prototype.resolve): 50 Moved from Animometer/runner/resources/benchmark-runner.js since tests also need it. 51 52 (Options): Benchmark running options as they are set by the user. 53 54 (ProgressBar): Manages a progress bar element. The progress bar is divided into equal length ranges. 55 (ProgressBar.prototype._progressToPercent): Converts the progress into a percentage. 56 (ProgressBar.prototype.incRange): Moves to the next range (a range is the running time of a single test). 57 (ProgressBar.prototype.setPos): Draws the current progress in the current range. 58 59 (RecordTable): Shows the results of running a benchmark in a tabular form. 60 (RecordTable.prototype.clear): Clears the results table. 61 (RecordTable.prototype._showTitles): Shows the header titles and appends the sub-titles to a queue. 62 (RecordTable.prototype._showHeader): Shows the table header titles. 63 (RecordTable.prototype._showEmpty): Shows an empty table cell. 64 (RecordTable.prototype._showValue): Shows a number value in the results table. 65 (RecordTable.prototype._showSamples): Shows a button for the sampled data graph. 66 (RecordTable.prototype._showTest): Shows the results of a single test. 67 (RecordTable.prototype._showSuite): Shows the results of a single suite. 68 (RecordTable.prototype.showRecord): Shows a single iteration for a single test. 69 (RecordTable.prototype.showIterations): Shows the results of all the suites of the iterations. 70 71 * Animometer/resources/sampler.js: Added. 72 (Statistics.sampleMean): Returns the sample mean. 73 (Statistics.unbiasedSampleStandardDeviation): Returns the unbiased sample variance (i.e. with Bessel's correction) 74 (Statistics.geometricMean): Returns the geometric mean. 75 76 (Experiment): Represents a sampling experiment. 77 (Experiment.prototype._init): Called when the object is created and when startSampling() is called. 78 (Experiment.prototype.startSampling): Called after warmup period. Restarts collecting sampled data points. 79 (Experiment.prototype.sample): Add a new data point. 80 (Experiment.prototype.mean): Returns the sample mean for the current sampled data points. 81 (Experiment.prototype.standardDeviation): Returns the sample standard deviation for the current sampled data points. 82 (Experiment.prototype.percentage): Returns the percentage of the standard deviation divided to the mean. 83 (Experiment.prototype.confidenceIntervalDelta): Calculates the confidence delta for the current sampled data given a confidence level. 84 (Experiment.prototype.concern): Returns the average of the worst given percentage from the sampled data. 85 (Experiment.prototype.score): Returns a score for the sampled data. It is the geometric mean of sampleMean and concern. 86 87 (Sampler): Represents a compound experiment. It manages sampling multiple data points at the same time offset. 88 (Sampler.prototype.startSampling): Called after warming up period. Restarts collecting sampled data points. 89 (Sampler.prototype.sample): Add a new data vector at a given time offset. 90 1 91 2015-10-02 Said Abou-Hallawa <sabouhallawa@apple.com> 2 92
Note: See TracChangeset
for help on using the changeset viewer.