From 143bdfac727a0e43e1a20f4a197706e57d5c270a Mon Sep 17 00:00:00 2001 From: Gyu-Ho Lee Date: Sat, 30 Apr 2016 22:06:35 -0700 Subject: [PATCH] sleep --- bench-results/2016043002-config/analyze.yaml | 4 ++-- .../2016043002-config/control-01-etcdv3-lz4.yaml | 11 ++++++----- .../2016043002-config/control-01-etcdv3-original.yaml | 5 +++-- .../2016043002-config/control-01-etcdv3-snappy.yaml | 11 ++++++----- .../2016043002-config/control-02-etcdv3-lz4.yaml | 11 ++++++----- .../2016043002-config/control-02-etcdv3-original.yaml | 5 +++-- .../2016043002-config/control-02-etcdv3-snappy.yaml | 11 ++++++----- control/config.go | 1 + control/config_test.go | 3 +++ control/control.go | 6 ++++++ control/test.yaml | 1 + 11 files changed, 43 insertions(+), 26 deletions(-) diff --git a/bench-results/2016043002-config/analyze.yaml b/bench-results/2016043002-config/analyze.yaml index f3bbaccb..6115cdb9 100644 --- a/bench-results/2016043002-config/analyze.yaml +++ b/bench-results/2016043002-config/analyze.yaml @@ -1,7 +1,7 @@ titles: - - Write 50K keys, 1-client, 1-conn, 64-byte key with random texts(<1MB) (etcd v3) - - Write 100K keys, 1-client, 1-conn, 64-byte key with random texts(<1MB) (etcd v3) + - Write 5K keys, 1-client, 1-conn, 32-byte key with random texts(<1MB) (etcd v3) + - Write 7K keys, 1-client, 1-conn, 32-byte key with random texts(<1MB) (etcd v3) step1: - data_path_list: diff --git a/bench-results/2016043002-config/control-01-etcdv3-lz4.yaml b/bench-results/2016043002-config/control-01-etcdv3-lz4.yaml index 4c575aeb..43735b85 100644 --- a/bench-results/2016043002-config/control-01-etcdv3-lz4.yaml +++ b/bench-results/2016043002-config/control-01-etcdv3-lz4.yaml @@ -7,9 +7,9 @@ google_cloud_storage_bucket_name: dbtester-results google_cloud_storage_sub_directory: 2016043002 peer_ips: - - 10.240.0.17 - - 10.240.0.18 - - 10.240.0.19 + - 10.240.0.21 + - 10.240.0.22 + - 10.240.0.23 agent_port: 3500 database_port: 2379 @@ -30,10 +30,11 @@ step2: result_path: timeseries.csv connections: 1 clients: 1 - key_size: 64 + key_size: 32 value_size: 1 value_testdata_path: /home/gyuho/testdata - total_requests: 50000 + total_requests: 5000 + request_interval_ms: 200 etcdv3_compaction_cycle: 0 # after benchmark diff --git a/bench-results/2016043002-config/control-01-etcdv3-original.yaml b/bench-results/2016043002-config/control-01-etcdv3-original.yaml index f087e88b..e402ed65 100644 --- a/bench-results/2016043002-config/control-01-etcdv3-original.yaml +++ b/bench-results/2016043002-config/control-01-etcdv3-original.yaml @@ -30,10 +30,11 @@ step2: result_path: timeseries.csv connections: 1 clients: 1 - key_size: 64 + key_size: 32 value_size: 1 value_testdata_path: /home/gyuho/testdata - total_requests: 50000 + total_requests: 5000 + request_interval_ms: 200 etcdv3_compaction_cycle: 0 # after benchmark diff --git a/bench-results/2016043002-config/control-01-etcdv3-snappy.yaml b/bench-results/2016043002-config/control-01-etcdv3-snappy.yaml index 716e0f1a..bda1bf89 100644 --- a/bench-results/2016043002-config/control-01-etcdv3-snappy.yaml +++ b/bench-results/2016043002-config/control-01-etcdv3-snappy.yaml @@ -7,9 +7,9 @@ google_cloud_storage_bucket_name: dbtester-results google_cloud_storage_sub_directory: 2016043002 peer_ips: - - 10.240.0.17 - - 10.240.0.18 - - 10.240.0.19 + - 10.240.0.25 + - 10.240.0.26 + - 10.240.0.27 agent_port: 3500 database_port: 2379 @@ -30,10 +30,11 @@ step2: result_path: timeseries.csv connections: 1 clients: 1 - key_size: 64 + key_size: 32 value_size: 1 value_testdata_path: /home/gyuho/testdata - total_requests: 50000 + total_requests: 5000 + request_interval_ms: 200 etcdv3_compaction_cycle: 0 # after benchmark diff --git a/bench-results/2016043002-config/control-02-etcdv3-lz4.yaml b/bench-results/2016043002-config/control-02-etcdv3-lz4.yaml index 7c7af85a..9dd43bf0 100644 --- a/bench-results/2016043002-config/control-02-etcdv3-lz4.yaml +++ b/bench-results/2016043002-config/control-02-etcdv3-lz4.yaml @@ -7,9 +7,9 @@ google_cloud_storage_bucket_name: dbtester-results google_cloud_storage_sub_directory: 2016043002 peer_ips: - - 10.240.0.17 - - 10.240.0.18 - - 10.240.0.19 + - 10.240.0.21 + - 10.240.0.22 + - 10.240.0.23 agent_port: 3500 database_port: 2379 @@ -30,10 +30,11 @@ step2: result_path: timeseries.csv connections: 1 clients: 1 - key_size: 64 + key_size: 32 value_size: 1 value_testdata_path: /home/gyuho/testdata - total_requests: 100000 + total_requests: 7000 + request_interval_ms: 200 etcdv3_compaction_cycle: 0 # after benchmark diff --git a/bench-results/2016043002-config/control-02-etcdv3-original.yaml b/bench-results/2016043002-config/control-02-etcdv3-original.yaml index d6b416dd..936bc246 100644 --- a/bench-results/2016043002-config/control-02-etcdv3-original.yaml +++ b/bench-results/2016043002-config/control-02-etcdv3-original.yaml @@ -30,10 +30,11 @@ step2: result_path: timeseries.csv connections: 1 clients: 1 - key_size: 64 + key_size: 32 value_size: 1 value_testdata_path: /home/gyuho/testdata - total_requests: 100000 + total_requests: 7000 + request_interval_ms: 200 etcdv3_compaction_cycle: 0 # after benchmark diff --git a/bench-results/2016043002-config/control-02-etcdv3-snappy.yaml b/bench-results/2016043002-config/control-02-etcdv3-snappy.yaml index 7fa5cc13..68be13c9 100644 --- a/bench-results/2016043002-config/control-02-etcdv3-snappy.yaml +++ b/bench-results/2016043002-config/control-02-etcdv3-snappy.yaml @@ -7,9 +7,9 @@ google_cloud_storage_bucket_name: dbtester-results google_cloud_storage_sub_directory: 2016043002 peer_ips: - - 10.240.0.17 - - 10.240.0.18 - - 10.240.0.19 + - 10.240.0.25 + - 10.240.0.26 + - 10.240.0.27 agent_port: 3500 database_port: 2379 @@ -30,10 +30,11 @@ step2: result_path: timeseries.csv connections: 1 clients: 1 - key_size: 64 + key_size: 32 value_size: 1 value_testdata_path: /home/gyuho/testdata - total_requests: 100000 + total_requests: 7000 + request_interval_ms: 200 etcdv3_compaction_cycle: 0 # after benchmark diff --git a/control/config.go b/control/config.go index ae8318cc..be544e76 100644 --- a/control/config.go +++ b/control/config.go @@ -58,6 +58,7 @@ type Config struct { ValueSize int `yaml:"value_size"` ValueTestDataPath string `yaml:"value_testdata_path"` TotalRequests int `yaml:"total_requests"` + RequestIntervalMs int `yaml:"request_interval_ms"` Etcdv3CompactionCycle int `yaml:"etcdv3_compaction_cycle"` } `yaml:"step2"` diff --git a/control/config_test.go b/control/config_test.go index 85ed554f..aecc440e 100644 --- a/control/config_test.go +++ b/control/config_test.go @@ -84,6 +84,9 @@ func TestReadConfig(t *testing.T) { if c.Step2.TotalRequests != 3000000 { t.Fatalf("unexpected %d", c.Step2.TotalRequests) } + if c.Step2.RequestIntervalMs != 100 { + t.Fatalf("unexpected %d", c.Step2.RequestIntervalMs) + } if c.Step3.Skip { t.Fatalf("unexpected %v", c.Step3.Skip) } diff --git a/control/control.go b/control/control.go index a6baca60..d0a257df 100644 --- a/control/control.go +++ b/control/control.go @@ -309,6 +309,9 @@ func step2(cfg Config) error { case "consul": requests <- request{consulOp: consulOp{key: k, value: v}} } + if cfg.Step2.RequestIntervalMs > 0 { + time.Sleep(time.Duration(cfg.Step2.RequestIntervalMs) * time.Millisecond) + } } close(requests) }() @@ -499,6 +502,9 @@ func step2(cfg Config) error { // serializable read by default requests <- request{consulOp: consulOp{key: key}} } + if cfg.Step2.RequestIntervalMs > 0 { + time.Sleep(time.Duration(cfg.Step2.RequestIntervalMs) * time.Millisecond) + } } close(requests) }() diff --git a/control/test.yaml b/control/test.yaml index 51a3b428..35d5a003 100644 --- a/control/test.yaml +++ b/control/test.yaml @@ -34,6 +34,7 @@ step2: value_size: 256 value_testdata_path: /home/gyuho/testdata # overwrites value_size total_requests: 3000000 + request_interval_ms: 100 etcdv3_compaction_cycle: 0 # after benchmark