Skip to content

Need x86_64 hardware transactional memory benchmarks #8

Description

@mtak-

To create heuristics for determining when HTM is likely to speed up a transaction, benchmarks are necessary.

If anyone reading this has a few free moments, and a CPU that supports transactional memory (some haswell processors, or later), I would be grateful if you would help out.

Need your cpuinfo.

linux

$ cat /proc/cpuinfo
... output here ...

macos, use system profiler

Hardware Overview:

  Model Name:	MacBook Pro
  Model Identifier:	MacBookPro13,3
  Processor Name:	Intel Core i7
  Processor Speed:	2.9 GHz
  Number of Processors:	1
  Total Number of Cores:	4
  L2 Cache (per Core):	256 KB
  L3 Cache:	8 MB

In the swym-htm project, there's a x.py script that can be run to create benchmarks.
Path: swym/swym-htm/x.py

My output

$ ./x.py bench
test bench_abort  ... bench:  49,516,424 ns/iter (+/- 2,894,024)
test bench_tx0000 ... bench:  12,223,724 ns/iter (+/- 832,878)
test bench_tx0001 ... bench:  12,501,338 ns/iter (+/- 1,302,260)
test bench_tx0002 ... bench:  12,575,727 ns/iter (+/- 1,187,649)
test bench_tx0004 ... bench:  12,615,560 ns/iter (+/- 1,315,751)
test bench_tx0008 ... bench:  12,570,609 ns/iter (+/- 1,079,593)
test bench_tx0016 ... bench:  12,489,782 ns/iter (+/- 1,333,362)
test bench_tx0024 ... bench:  20,527,809 ns/iter (+/- 2,620,641)
test bench_tx0032 ... bench:  21,912,395 ns/iter (+/- 2,646,718)
test bench_tx0040 ... bench:  22,725,125 ns/iter (+/- 2,352,237)
test bench_tx0048 ... bench:  23,449,303 ns/iter (+/- 2,910,261)
test bench_tx0056 ... bench:  24,562,059 ns/iter (+/- 2,760,177)
test bench_tx0064 ... bench:  14,486,932 ns/iter (+/- 767,444)
test bench_tx0072 ... bench:  14,776,765 ns/iter (+/- 1,522,511)
test bench_tx0080 ... bench:  15,262,921 ns/iter (+/- 1,356,767)
test bench_tx0112 ... bench:  17,002,269 ns/iter (+/- 1,317,870)
test bench_tx0120 ... bench:  17,277,812 ns/iter (+/- 1,579,734)
test bench_tx0128 ... bench:  17,917,132 ns/iter (+/- 2,082,900)
test bench_tx0256 ... bench:  26,625,425 ns/iter (+/- 1,667,125)

Additionally, running test with nocapture will give a feel for the capacity of your cpu

$ ./x.py test capacity --release -- --nocapture
Capacity: 30016

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions