client_golang/model
beorn7 cbe221c969 Switch to sync.Pool.
sync.Pool is after all faster than the home-made free list. Especially
under contention. To prove that, this commit also adds a benchmark for
concurrent fingerprint calculation.

Benchmark results:
(Run with -cpu=1,2,4. x-y -> x goroutines with GOMAXPROCS=y.)

benchmark                                     old ns/op     new ns/op     delta
BenchmarkMetricToFingerprintTripleConc4-4     320           138           -56.88%
BenchmarkMetricToFingerprintTripleConc8-4     314           141           -55.10%
BenchmarkMetricToFingerprintTripleConc4-2     344           264           -23.26%
BenchmarkMetricToFingerprintTripleConc2-4     331           256           -22.66%
BenchmarkMetricToFingerprintTripleConc8-2     338           263           -22.19%
BenchmarkMetricToFingerprintTripleConc1-4     599           505           -15.69%
BenchmarkMetricToFingerprintTripleConc4       553           493           -10.85%
BenchmarkMetricToFingerprintTripleConc2-2     327           292           -10.70%
BenchmarkMetricToFingerprintTripleConc8       554           496           -10.47%
BenchmarkMetricToFingerprintTripleConc2       555           501           -9.73%
BenchmarkMetricToFingerprintTripleConc1       554           509           -8.12%
BenchmarkMetricToFingerprintTripleConc1-2     551           513           -6.90%
2015-03-04 12:35:06 +01:00
..
fingerprinting.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
labelname.go Turned "le" and "quantile" label names into constants. 2015-02-19 15:54:26 +01:00
labelname_test.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
labelset.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
labelvalue.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
labelvalue_test.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
metric.go Unify fingerprinting aka signature calculation. 2015-03-03 17:55:37 +01:00
metric_test.go Unify fingerprinting aka signature calculation. 2015-03-03 17:55:37 +01:00
model.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
sample.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
sample_test.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
samplevalue.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00
signature.go Switch to sync.Pool. 2015-03-04 12:35:06 +01:00
signature_test.go Switch to sync.Pool. 2015-03-04 12:35:06 +01:00
timestamp.go Unify fingerprinting aka signature calculation. 2015-03-03 17:55:37 +01:00
timestamp_test.go Change "Prometheus Team" to "The Prometheus Authors". 2015-02-02 15:14:36 +01:00