]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Improved speed tests 632/head
authorYann Collet <cyan@fb.com>
Mon, 27 Mar 2017 06:52:19 +0000 (23:52 -0700)
committerYann Collet <cyan@fb.com>
Mon, 27 Mar 2017 06:52:19 +0000 (23:52 -0700)
Better compatibility with Mac OS-X
Force attribution to a selected core # (Linux)

tests/test-zstd-speed.py

index 23d4f477c7f3ddaa9d420c454a704833f1793fb1..56108a5cae4ca3ba60dd130b76c1299e2e3caca6 100755 (executable)
 # - dir1/zstd and dir2/zstd will be merged in a single results file
 
 import argparse
-import os
+import os           # getloadavg
 import string
 import subprocess
-import time
+import time         # strftime
 import traceback
 import hashlib
+import platform     # system
 
-script_version = 'v1.1.1 (2016-10-28)'
+script_version = 'v1.1.2 (2017-03-26)'
 default_repo_url = 'https://github.com/facebook/zstd.git'
 working_dir_name = 'speedTest'
 working_path = os.getcwd() + '/' + working_dir_name     # /path/to/zstd/tests/speedTest
@@ -152,10 +153,15 @@ def benchmark_and_compare(branch, commit, last_commit, args, executableName, md5
             % (os.getloadavg()[0], args.maxLoadAvg, sleepTime))
         time.sleep(sleepTime)
     start_load = str(os.getloadavg())
+    osType = platform.system()
+    if osType == 'Linux':
+        cpuSelector = "taskset --cpu-list 0"
+    else:
+        cpuSelector = ""
     if args.dictionary:
-        result = execute('programs/%s -rqi5b1e%s -D %s %s' % (executableName, args.lastCLevel, args.dictionary, testFilePath), print_output=True)
+        result = execute('%s programs/%s -rqi5b1e%s -D %s %s' % (cpuSelector, executableName, args.lastCLevel, args.dictionary, testFilePath), print_output=True)
     else:
-        result = execute('programs/%s -rqi5b1e%s %s' % (executableName, args.lastCLevel, testFilePath), print_output=True)   
+        result = execute('%s programs/%s -rqi5b1e%s %s' % (cpuSelector, executableName, args.lastCLevel, testFilePath), print_output=True)
     end_load = str(os.getloadavg())
     linesExpected = args.lastCLevel + 1
     if len(result) != linesExpected:
@@ -291,7 +297,7 @@ if __name__ == '__main__':
         log("ERROR: e-mail senders 'mail' or 'mutt' not found")
         exit(1)
 
-    clang_version = execute("clang -v 2>&1 | grep 'clang version' | sed -e 's:.*version \\([0-9.]*\\).*:\\1:' -e 's:\\.\\([0-9][0-9]\\):\\1:g'", verbose)[0];
+    clang_version = execute("clang -v 2>&1 | grep ' version ' | sed -e 's:.*version \\([0-9.]*\\).*:\\1:' -e 's:\\.\\([0-9][0-9]\\):\\1:g'", verbose)[0];
     gcc_version = execute("gcc -dumpversion", verbose)[0];
 
     if verbose: