open-telemetry
opentelemetry-collector
BlogDocsChangelog

[docs] Add performance benchmarking guide and contributor guidelines

#14234
Comparing
aviralgarg05:docs/add-performance-benchmarking-guide
(
8021aaa
) with
main
(
7012862
)
CodSpeed Performance Gauge
×2.9
Improvements
2
Untouched
71

Benchmarks

Improved

zstdWithConcurrency
config/confighttp/compressor_test.go::BenchmarkCompression
CodSpeed Performance Gauge
×2.9
19 µs6.6 µs
BenchmarkSplittingBasedOnItemCountManySmallLogs
exporter/exporterhelper/internal/queuebatch/logs_batch_test.go
CodSpeed Performance Gauge
+35%
3.3 ms2.4 ms

Passed

sm_metric_request/raw_bytes_183/compressed_bytes_141/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+7%
20.9 µs19.6 µs
md_log_request/raw_bytes_242/compressed_bytes_220/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+6%
23.9 µs22.5 µs
sm_log_request/raw_bytes_160/compressed_bytes_164/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+5%
20.4 µs19.3 µs
BenchmarkSplittingBasedOnItemCountHugeTraces
exporter/exporterhelper/internal/queuebatch/traces_batch_test.go
CodSpeed Performance Gauge
+5%
51 ms48.4 ms
md_metric_request/raw_bytes_376/compressed_bytes_193/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+4%
25.1 µs24.2 µs
BenchmarkBatchMetricProcessor2k
processor/batchprocessor/batch_processor_test.go
CodSpeed Performance Gauge
+4%
138 ms133.1 ms
sm_trace_request/raw_bytes_240/compressed_bytes_211/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+3%
24.9 µs24.2 µs
md_trace_request/raw_bytes_338/compressed_bytes_256/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+3%
26.8 µs26 µs
lg_trace_request/raw_bytes_7250/compressed_bytes_313/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+3%
49.9 µs48.6 µs
lg_metric_request/raw_bytes_10991/compressed_bytes_587/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+2%
77.4 µs75.7 µs
lg_log_request/raw_bytes_4850/compressed_bytes_253/compressor_gzip
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+1%
37 µs36.4 µs
md_log_request/raw_bytes_242/compressed_bytes_260/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+1%
801 ns791 ns
sm_trace_request/raw_bytes_240/compressed_bytes_258/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+1%
791 ns782 ns
md_trace_request/raw_bytes_338/compressed_bytes_294/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+1%
891 ns881 ns
sm_log_request/raw_bytes_160/compressed_bytes_159/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+1%
9 µs9 µs
lg_trace_request/raw_bytes_7250/compressed_bytes_269/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+1%
11.1 µs11.1 µs
BenchmarkSplittingBasedOnItemCountManyTracesSlightlyAboveLimit
exporter/exporterhelper/internal/queuebatch/traces_batch_test.go
CodSpeed Performance Gauge
0%
47.7 ms47.5 ms
sm_log_request/raw_bytes_160/compressed_bytes_178/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
692 ns691 ns
BenchmarkTraceSizeSpanCount
processor/batchprocessor/batch_processor_test.go
CodSpeed Performance Gauge
0%
29 ns29 ns
lg_metric_request/raw_bytes_10991/compressed_bytes_1033/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
4.2 µs4.2 µs
lg_log_request/raw_bytes_4850/compressed_bytes_217/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
-1%
11.1 µs11.1 µs
HTTP/2.0,_shared_client_(like_load_balancer)
config/confighttp/server_test.go::BenchmarkHttpRequest
CodSpeed Performance Gauge
N/A
< 1 ns< 1 ns
sm_metric_request/raw_bytes_183/compressed_bytes_155/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+1%
691 ns681 ns
BenchmarkTraceSizeBytes
processor/batchprocessor/batch_processor_test.go
CodSpeed Performance Gauge
+1%
421.8 µs418.5 µs
lg_trace_request/raw_bytes_7250/compressed_bytes_615/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
2.4 µs2.4 µs
md_log_request/raw_bytes_242/compressed_bytes_210/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
9.6 µs9.6 µs
md_metric_request/raw_bytes_376/compressed_bytes_215/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
851 ns851 ns
sm_trace_request/raw_bytes_240/compressed_bytes_211/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
8.1 µs8.1 µs
lg_metric_request/raw_bytes_10991/compressed_bytes_538/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
-1%
16.7 µs16.8 µs
HTTP/2.0,_client_per_thread_(like_single_app)
config/confighttp/server_test.go::BenchmarkHttpRequest
CodSpeed Performance Gauge
N/A
< 1 ns< 1 ns
BenchmarkMemoryQueueWaitForResult
exporter/exporterhelper/internal/queue/memory_queue_test.go
CodSpeed Performance Gauge
-1%
69.3 µs70 µs
BenchmarkMultiBatchMetricProcessor2k
processor/batchprocessor/batch_processor_test.go
CodSpeed Performance Gauge
-1%
144.9 ms146.6 ms
zstdNoConcurrency
config/confighttp/compressor_test.go::BenchmarkCompression
CodSpeed Performance Gauge
-5%
34 µs35.7 µs
HTTP/1.1,_client_per_thread_(like_single_app)
config/confighttp/server_test.go::BenchmarkHttpRequest
CodSpeed Performance Gauge
N/A
< 1 ns< 1 ns
HTTP/1.1,_shared_client_(like_load_balancer)
config/confighttp/server_test.go::BenchmarkHttpRequest
CodSpeed Performance Gauge
N/A
< 1 ns< 1 ns
BenchmarkSplittingBasedOnItemCountHugeLogs
exporter/exporterhelper/internal/queuebatch/logs_batch_test.go
CodSpeed Performance Gauge
+14%
45.7 ms40.1 ms
BenchmarkSplittingBasedOnItemCountManyMetricsSlightlyAboveLimit
exporter/exporterhelper/internal/queuebatch/metrics_batch_test.go
CodSpeed Performance Gauge
+12%
95.5 ms85.3 ms
BenchmarkSplittingBasedOnItemCountManySmallMetrics
exporter/exporterhelper/internal/queuebatch/metrics_batch_test.go
CodSpeed Performance Gauge
+8%
7.1 ms6.6 ms
BenchmarkSplittingBasedOnItemCountManyLogsSlightlyAboveLimit
exporter/exporterhelper/internal/queuebatch/logs_batch_test.go
CodSpeed Performance Gauge
+3%
38.4 ms37.3 ms
BenchmarkSplittingBasedOnItemCountManySmallTraces
exporter/exporterhelper/internal/queuebatch/traces_batch_test.go
CodSpeed Performance Gauge
+3%
3.6 ms3.5 ms
BenchmarkMetricsUsage
pdata/pmetric/metrics_test.go
CodSpeed Performance Gauge
+2%
1.5 µs1.5 µs
BenchmarkFromLocationIndices
pdata/pprofile/locations_test.go
CodSpeed Performance Gauge
+2%
1.8 µs1.7 µs
BenchmarkMetricsToProto
pdata/pmetric/pb_test.go
CodSpeed Performance Gauge
+1%
6 µs6 µs
md_trace_request/raw_bytes_338/compressed_bytes_265/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
+1%
8.9 µs8.9 µs
BenchmarkTracesUsage
pdata/ptrace/traces_test.go
CodSpeed Performance Gauge
0%
4.8 µs4.8 µs
BenchmarkTracesFromProto
pdata/ptrace/pb_test.go
CodSpeed Performance Gauge
0%
15.7 µs15.6 µs
sm_metric_request/raw_bytes_183/compressed_bytes_138/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
7.1 µs7.1 µs
BenchmarkLogsMarshalJSON
pdata/plog/logs_test.go
CodSpeed Performance Gauge
0%
3.8 µs3.8 µs
BenchmarkFromAttributeIndices
pdata/pprofile/attributes_test.go
CodSpeed Performance Gauge
0%
210 ns210 ns
with_an_existing_value
pdata/pprofile/string_table_test.go::BenchmarkSetString
CodSpeed Performance Gauge
0%
29 ns29 ns
with_a_hundred_values_to_loop_through
pdata/pprofile/string_table_test.go::BenchmarkSetString
CodSpeed Performance Gauge
0%
130 ns130 ns
with_a_new_value
pdata/pprofile/string_table_test.go::BenchmarkSetString
CodSpeed Performance Gauge
0%
29 ns29 ns
with_a_duplicate_value
pdata/pprofile/string_table_test.go::BenchmarkSetString
CodSpeed Performance Gauge
0%
29 ns29 ns
BenchmarkProfilesFromProto
pdata/pprofile/pb_test.go
CodSpeed Performance Gauge
0%
5.5 µs5.5 µs
BenchmarkTracesToProto
pdata/ptrace/pb_test.go
CodSpeed Performance Gauge
0%
6.3 µs6.3 µs
lg_log_request/raw_bytes_4850/compressed_bytes_463/compressor_snappy
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
1.9 µs1.9 µs
BenchmarkLogsFromProto
pdata/plog/pb_test.go
CodSpeed Performance Gauge
0%
9.7 µs9.7 µs
md_metric_request/raw_bytes_376/compressed_bytes_203/compressor_zstd
config/configgrpc/configgrpc_benchmark_test.go::BenchmarkCompressors
CodSpeed Performance Gauge
0%
8.3 µs8.3 µs
BenchmarkLogsToProto
pdata/plog/pb_test.go
CodSpeed Performance Gauge
0%
4.3 µs4.3 µs
BenchmarkProfilesMarshalJSON
pdata/pprofile/profiles_test.go
CodSpeed Performance Gauge
0%
4.3 µs4.3 µs
BenchmarkSplittingBasedOnByteSizeManyLogsSlightlyAboveLimit
exporter/exporterhelper/internal/queuebatch/logs_batch_test.go
CodSpeed Performance Gauge
0%
89.6 ms89.8 ms
BenchmarkProfilesUsage
pdata/pprofile/profiles_test.go
CodSpeed Performance Gauge
0%
3.5 µs3.5 µs
BenchmarkMetricsFromProto
pdata/pmetric/pb_test.go
CodSpeed Performance Gauge
0%
27.7 µs27.8 µs
BenchmarkMetricsMarshalJSON
pdata/pmetric/metrics_test.go
CodSpeed Performance Gauge
0%
5.1 µs5.1 µs
BenchmarkPersistentQueue
exporter/exporterhelper/internal/queue/persistent_queue_test.go
CodSpeed Performance Gauge
0%
201.4 µs202.3 µs
BenchmarkProfilesToProto
pdata/pprofile/pb_test.go
CodSpeed Performance Gauge
-1%
1.6 µs1.6 µs
BenchmarkTracesMarshalJSON
pdata/ptrace/traces_test.go
CodSpeed Performance Gauge
-1%
6 µs6 µs
BenchmarkLogsUsage
pdata/plog/logs_test.go
CodSpeed Performance Gauge
-1%
2.7 µs2.8 µs
BenchmarkSplittingBasedOnByteSizeHugeLogs
exporter/exporterhelper/internal/queuebatch/logs_batch_test.go
CodSpeed Performance Gauge
-3%
94.4 ms97 ms
BenchmarkSplittingBasedOnByteSizeManySmallLogs
exporter/exporterhelper/internal/queuebatch/logs_batch_test.go
CodSpeed Performance Gauge
-3%
3.7 s3.8 s
BenchmarkSplittingBasedOnItemCountHugeMetrics
exporter/exporterhelper/internal/queuebatch/metrics_batch_test.go
CodSpeed Performance Gauge
-6%
95.7 ms102 ms

Commits

Click on a commit to change the comparison range
Base
main
7012862
-36.01%
[docs] Add performance benchmarking guide and contributor guidelines Address maintainer review feedback for issue #14111. Changes to docs/performance-benchmarking.md: - Fix order: MEMBENCH environment variable is set before running benchmarks - Fix timebenchmark description to explain it skips fast-running benchmarks - Update benchmark examples to use b.Loop() instead of for i := 0; i < b.N; i++ - Remove b.ResetTimer() as it is not necessary with b.Loop() - Fix trailing whitespace Other changes: - Remove changelog entry (not needed for documentation changes)
cf33fe2
5 days ago
by aviralgarg05
×3.3
Add technical terms to cspell dictionary for performance-benchmarking docs Added the following terms to the spell-check allowed words list: - benchtime: Go benchmark time flag - cpuprofile: Go CPU profiling flag - flamegraphs: Performance visualization tool term - MEMBENCH: Memory benchmark environment variable - memprofile: Go memory profiling flag - timebenchmark: Custom benchmark timing function reference - walltime: Wall-clock time measurement term These terms are used in the new performance benchmarking documentation and are legitimate technical vocabulary.
8021aaa
3 days ago
by aviralgarg05
© 2025 CodSpeed Technology
Home Terms Privacy Docs