Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(100)

Unified Diff: PerformanceTests/Pywebsocket/resources/util_performance_test.js

Issue 738753002: [Pywebsocket PerformanceTests 1/2] Add PerformanceTests/Pywebsocket (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Comment for +1. Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « PerformanceTests/Pywebsocket/resources/generate.py ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: PerformanceTests/Pywebsocket/resources/util_performance_test.js
diff --git a/PerformanceTests/Pywebsocket/resources/util_performance_test.js b/PerformanceTests/Pywebsocket/resources/util_performance_test.js
new file mode 100644
index 0000000000000000000000000000000000000000..20021a418c42eae4d200f0032b7c21c76fa2a80d
--- /dev/null
+++ b/PerformanceTests/Pywebsocket/resources/util_performance_test.js
@@ -0,0 +1,64 @@
+function perfTestAddToLog(text) {
+ PerfTestRunner.log(text);
+}
+
+function perfTestAddToSummary(text) {
+}
+
+function perfTestMeasureValue(value) {
+ PerfTestRunner.measureValueAsync(value);
+ PerfTestRunner.gc();
+}
+
+function perfTestNotifyAbort() {
+ PerfTestRunner.logFatalError("benchmark aborted");
+}
+
+const numIterations = 10;
+const numWarmUpIterations = 5;
+
+function getConfigForPerformanceTest(connectionType, dataType, async,
+ verifyData) {
+ return {
+ prefixUrl:
+ connectionType === 'WebSocket' ? 'ws://localhost:8001/benchmark_helper' :
+ 'http://localhost:8001/073be001e10950692ccbf3a2ad21c245', // XHR or fetch
+ printSize: true,
+ numXHRs: 1,
+ numFetches: 1,
+ numSockets: 1,
+ // + 1 is for a warmup iteration by the Telemetry framework.
+ numIterations: numIterations + numWarmUpIterations + 1,
+ numWarmUpIterations: numWarmUpIterations,
+ minTotal: 10240000,
+ startSize: 10240000,
+ stopThreshold: 10240000,
+ multipliers: [2],
+ verifyData: verifyData,
+ dataType: dataType,
+ async: async,
+ addToLog: perfTestAddToLog,
+ addToSummary: perfTestAddToSummary,
+ measureValue: perfTestMeasureValue,
+ notifyAbort: perfTestNotifyAbort
+ };
+}
+
+function startPerformanceTest(connectionType, benchmarkName,
+ dataType, isWorker, async, verifyData){
+ initWorker(connectionType, 'http://localhost:8001');
+
+ PerfTestRunner.prepareToMeasureValuesAsync({
+ done: function() {
+ var config = getConfigForPerformanceTest(connectionType, dataType,
+ async, verifyData);
+ doAction(config, isWorker, 'stop');
+ },
+ unit: 'ms',
+ dromaeoIterationCount: numIterations
+ });
+
+ var config = getConfigForPerformanceTest(connectionType, dataType, async,
+ verifyData);
+ doAction(config, isWorker, benchmarkName);
+}
« no previous file with comments | « PerformanceTests/Pywebsocket/resources/generate.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698