-
Notifications
You must be signed in to change notification settings - Fork 7
Geekbench 4 Benchmark Harness
License
snapcraft-docs/geekbench4
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Geekbench 4 Benchmark This repository contains the setup and runtime configurations for the Geekbench version 4 benchmark. Geekbench is a commercial benchmark developed by Primate Labs. More information about Geekbench is available on their website: http://www.primatelabs.com/geekbench/ This benchmark requires a registered version of Geekbench. To register, you must first purchase a license key, then download the Geekbench software, and finally enter your registration key - e.g. build.pulse/dist/Geekbench-4.0.1-Linux/geekbench_x86_64 -r [email] [registration key] TESTING PARAMETERS Test behavior is fixed, but you may specify the following optional meta attributes and installation attributes. The meta attributes will be included in the results (see save.sh). Geekbench should be installed and registered before running this benchmark. Review the 'geekbench_dir' parameter comments below for instructions. * collectd_rrd If set, collectd rrd stats will be captured from --collectd_rrd_dir. To do so, when testing starts, existing directories in --collectd_rrd_dir will be renamed to .bak, and upon test completion any directories not ending in .bak will be zipped and saved along with other test artifacts (as collectd-rrd.zip). User MUST have sudo privileges to use this option * collectd_rrd_dir Location where collectd rrd files are stored - default is /var/lib/collectd/rrd * geekbench_dir Directory where Geekbench is installed. If not specified, the benchmark run script will look up the directory tree from both pwd and --output for presence of a 'build.pulse/dist/Geekbench-4.0.1-Linux' or 'Geekbench-4.0.1-Linux' directory with an executable 'geekbench_x86_64' executable in it. The test harness will check if Geekbench has been registered and generate an error if it has not * meta_burst If set to 1, designates testing performed in burst mode (e.g. Amazon EC2 t-series burst) * meta_compute_service The name of the compute service this test pertains to. May also be specified using the environment variable bm_compute_service * meta_compute_service_id The id of the compute service this test pertains to. Added to saved results. May also be specified using the environment variable bm_compute_service_id * meta_cpu CPU descriptor - if not specified, it will be set using the 'model name' attribute in /proc/cpuinfo * meta_instance_id The compute service instance type this test pertains to (e.g. c3.xlarge). May also be specified using the environment variable bm_instance_id * meta_memory Memory descriptor - if not specified, the system memory size will be used * meta_os Operating system descriptor - if not specified, it will be taken from the first line of /etc/issue * meta_provider The name of the cloud provider this test pertains to. May also be specified using the environment variable bm_provider * meta_provider_id The id of the cloud provider this test pertains to. May also be specified using the environment variable bm_provider_id * meta_region The compute service region this test pertains to. May also be specified using the environment variable bm_region * meta_resource_id An optional benchmark resource identifiers. May also be specified using the environment variable bm_resource_id * meta_run_id An optional benchmark run identifiers. May also be specified using the environment variable bm_run_id * meta_storage_config Storage configuration descriptor. May also be specified using the environment variable bm_storage_config * meta_test_id Identifier for the test. May also be specified using the environment variable bm_test_id * output The output directory to use for writing test data (results html, json and text). If not specified, the current working directory will be used * upload Upload results upon completion to the public Geekbench results browser (includes system information) * verbose Show verbose output * x32 Run in 32 bit mode (geekbench_x86_32) - defaults to 64 bit (geekbench_x86_64) DEPENDENCIES This benchmark has the following dependencies: php-cli Test automation scripts (/usr/bin/php) zip Used to compress test artifacts TEST ARTIFACTS This benchmark generates the following artifacts: collectd-rrd.zip collectd RRD files (see --collectd_rrd) geekbench.html HTML formatted geekbench report geekbench.json JSON formatted geekbench results geekbench.txt Text formatted geekbench results SAVE SCHEMA The following columns are included in CSV files/tables generated by save.sh. Indexed MySQL/PostgreSQL columns are identified by *. Columns without descriptions are documented as runtime parameters above. Data types and indexing used is documented in save/schema/geekbench3.json. Columns can be removed using the save.sh --remove parameter benchmark_version: [benchmark version] claim_url: [Geekbench browser claim URL - to associate results to your account] collectd_rrd: [URL to zip file containing collectd rrd files] floating_point_multicore_rate: multithreaded floating point rate] floating_point_multicore_score: [multithreaded floating point score] floating_point_score: [single threaded integer score] integer_multicore_rate: multithreaded integer rate] integer_multicore_score: [multithreaded integer score] integer_score: [single threaded integer score] iteration: [iteration number (used with incremental result directories)] memory_multicore_rate: multithreaded memory rate] memory_multicore_score: [multithreaded memory score] memory_score: [single threaded memory score] meta_burst meta_compute_service meta_compute_service_id* meta_cpu: [CPU model info] meta_cpu_cache: [CPU cache] meta_cpu_cores: [# of CPU cores] meta_cpu_speed: [CPU clock speed (MHz)] meta_instance_id* meta_hostname: [system under test (SUT) hostname] meta_memory meta_memory_gb: [memory in gigabytes] meta_memory_mb: [memory in megabyets] meta_os_info: [operating system name and version] meta_provider meta_provider_id* meta_region* meta_resource_id meta_run_id meta_storage_config* meta_test_id* multicore_rate: multithreaded geekbench rate] multicore_score: [multithreaded geekbench score] option_iterations: test iterations option_workers: test workers results_html: [URL to the geekbench.html report (if --store option used)] results_json: [URL to the geekbench.json report (if --store option used)] results_text: [URL to the geekbench.txt report (if --store option used)] results_url: [Geekbench browser URL - public results (if --upload option used)] score: [single threaded geekbench score] test_started*: [when the test started] test_stopped: [when the test ended] USAGE # run 1 test iteration with some metadata ./run.sh --meta_compute_service_id aws:ec2 --meta_instance_id c3.xlarge --meta_region us-east-1 --meta_test_id aws-0914 # run with Geekbench installed in /usr/local/Geekbench and upload results to public Geekbench browser ./run.sh --geekbench_dir /usr/local/Geekbench --upload # run 10 test iterations using a specific output directory for i in {1..10}; do mkdir -p ~/geekbench-testing/$i; ./run.sh --output ~/geekbench-testing/$i; done # save.sh saves results to CSV, MySQL, PostgreSQL, BigQuery or via HTTP # callback. It can also save artifacts (HTML, JSON and text results) to S3, # Azure Blob Storage or Google Cloud Storage # save results to CSV files ./save.sh # save results from 5 iterations text example above ./save.sh ~/geekbench-testing # save results to a PostgreSQL database ./save --db postgresql --db_user dbuser --db_pswd dbpass --db_host db.mydomain.com --db_name benchmarks # save results to BigQuery and artifact (TRIAD gnuplot PNG image) to S3 ./save --db bigquery --db_name benchmark_dataset --store s3 --store_key THISIH5TPISAEZIJFAKE --store_secret thisNoat1VCITCGggisOaJl3pxKmGu2HMKxxfake --store_container benchmarks1234
About
Geekbench 4 Benchmark Harness
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published