]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
erasure-code: add various erasure-code workloads
authorLoic Dachary <loic-201408@dachary.org>
Fri, 29 Aug 2014 22:49:33 +0000 (00:49 +0200)
committerLoic Dachary <loic-201408@dachary.org>
Sat, 30 Aug 2014 09:17:56 +0000 (11:17 +0200)
The erasure-code directory is populated with files describing rados
workloads suitable to test the default erasure code plugins. They are
linked to the rados suite. The pre-existing rados workloads from the
rados suite are replaced with those. Two workloads only differed by the
fact that one of them had less operations than the other. The more
complete set of operations is kept and used for all workloads to
maximize coverage.

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
erasure-code/ec-rados-default.yaml [new file with mode: 0644]
erasure-code/ec-rados-plugin=isa-k=2-m=1.yaml [new file with mode: 0644]
erasure-code/ec-rados-plugin=jerasure-k=3-m=1.yaml [new file with mode: 0644]
erasure-code/ec-rados-plugin=lrc-k=4-m=2-l=3.yaml [new file with mode: 0644]
suites/rados/thrash/workloads/ec-k=3-m=1.yaml [deleted file]
suites/rados/thrash/workloads/ec-rados-default.yaml [new symlink]
suites/rados/thrash/workloads/ec-rados-plugin=isa-k=2-m=1.yaml [new symlink]
suites/rados/thrash/workloads/ec-rados-plugin=jerasure-k=3-m=1.yaml [new symlink]
suites/rados/thrash/workloads/ec-rados-plugin=lrc-k=4-m=2-l=3.yaml [new symlink]
suites/rados/thrash/workloads/ec-readwrite.yaml [deleted file]
suites/rados/thrash/workloads/ec-snaps-few-objects.yaml [deleted file]

diff --git a/erasure-code/ec-rados-default.yaml b/erasure-code/ec-rados-default.yaml
new file mode 100644 (file)
index 0000000..60d37e0
--- /dev/null
@@ -0,0 +1,17 @@
+tasks:
+- rados:
+    clients: [client.0]
+    ops: 4000
+    objects: 50
+    ec_pool: true
+    op_weights:
+      read: 100
+      write: 0
+      append: 100
+      delete: 50
+      snap_create: 50
+      snap_remove: 50
+      rollback: 50
+      copy_from: 50
+      setattr: 25
+      rmattr: 25
diff --git a/erasure-code/ec-rados-plugin=isa-k=2-m=1.yaml b/erasure-code/ec-rados-plugin=isa-k=2-m=1.yaml
new file mode 100644 (file)
index 0000000..fa8f490
--- /dev/null
@@ -0,0 +1,24 @@
+tasks:
+- rados:
+    clients: [client.0]
+    ops: 4000
+    objects: 50
+    ec_pool: true
+    erasure_code_profile:
+      name: isaprofile
+      plugin: isa
+      k: 2
+      m: 1
+      technique: reed_sol_van
+      ruleset-failure-domain: osd
+    op_weights:
+      read: 100
+      write: 0
+      append: 100
+      delete: 50
+      snap_create: 50
+      snap_remove: 50
+      rollback: 50
+      copy_from: 50
+      setattr: 25
+      rmattr: 25
diff --git a/erasure-code/ec-rados-plugin=jerasure-k=3-m=1.yaml b/erasure-code/ec-rados-plugin=jerasure-k=3-m=1.yaml
new file mode 100644 (file)
index 0000000..32d96f5
--- /dev/null
@@ -0,0 +1,30 @@
+#
+# k=3 implies a stripe_width of 1376*3 = 4128 which is different from
+# the default value of 4096 It is also not a multiple of 1024*1024 and
+# creates situations where rounding rules during recovery becomes 
+# necessary. 
+#
+tasks:
+- rados:
+    clients: [client.0]
+    ops: 4000
+    objects: 50
+    ec_pool: true
+    erasure_code_profile:
+      name: jerasure31profile
+      plugin: jerasure
+      k: 3
+      m: 1
+      technique: reed_sol_van
+      ruleset-failure-domain: osd
+    op_weights:
+      read: 100
+      write: 0
+      append: 100
+      delete: 50
+      snap_create: 50
+      snap_remove: 50
+      rollback: 50
+      copy_from: 50
+      setattr: 25
+      rmattr: 25
diff --git a/erasure-code/ec-rados-plugin=lrc-k=4-m=2-l=3.yaml b/erasure-code/ec-rados-plugin=lrc-k=4-m=2-l=3.yaml
new file mode 100644 (file)
index 0000000..6dfe210
--- /dev/null
@@ -0,0 +1,24 @@
+tasks:
+- rados:
+    clients: [client.0]
+    ops: 4000
+    objects: 50
+    ec_pool: true
+    erasure_code_profile:
+      name: lrcprofile
+      plugin: lrc
+      k: 4
+      m: 2
+      l: 3
+      ruleset-failure-domain: osd
+    op_weights:
+      read: 100
+      write: 0
+      append: 100
+      delete: 50
+      snap_create: 50
+      snap_remove: 50
+      rollback: 50
+      copy_from: 50
+      setattr: 25
+      rmattr: 25
diff --git a/suites/rados/thrash/workloads/ec-k=3-m=1.yaml b/suites/rados/thrash/workloads/ec-k=3-m=1.yaml
deleted file mode 100644 (file)
index 109783f..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#
-# k=3 implies a stripe_width of 1376*3 = 4128 which is different from
-# the default value of 4096 It is also not a multiple of 1024*1024 and
-# creates situations where rounding rules during recovery becomes 
-# necessary. 
-#
-tasks:
-- rados:
-    clients: [client.0]
-    ops: 400
-    objects: 50
-    ec_pool: true
-    erasure_code_profile:
-      plugin: jerasure
-      k: 3
-      m: 1
-      technique: reed_sol_van
-      ruleset-failure-domain: osd
-    op_weights:
-      read: 45
-      write: 0
-      append: 45
-      delete: 10
diff --git a/suites/rados/thrash/workloads/ec-rados-default.yaml b/suites/rados/thrash/workloads/ec-rados-default.yaml
new file mode 120000 (symlink)
index 0000000..99bc1c1
--- /dev/null
@@ -0,0 +1 @@
+../../../../erasure-code/ec-rados-default.yaml
\ No newline at end of file
diff --git a/suites/rados/thrash/workloads/ec-rados-plugin=isa-k=2-m=1.yaml b/suites/rados/thrash/workloads/ec-rados-plugin=isa-k=2-m=1.yaml
new file mode 120000 (symlink)
index 0000000..9d32cd8
--- /dev/null
@@ -0,0 +1 @@
+../../../../erasure-code/ec-rados-plugin=isa-k=2-m=1.yaml
\ No newline at end of file
diff --git a/suites/rados/thrash/workloads/ec-rados-plugin=jerasure-k=3-m=1.yaml b/suites/rados/thrash/workloads/ec-rados-plugin=jerasure-k=3-m=1.yaml
new file mode 120000 (symlink)
index 0000000..b1407ae
--- /dev/null
@@ -0,0 +1 @@
+../../../../erasure-code/ec-rados-plugin=jerasure-k=3-m=1.yaml
\ No newline at end of file
diff --git a/suites/rados/thrash/workloads/ec-rados-plugin=lrc-k=4-m=2-l=3.yaml b/suites/rados/thrash/workloads/ec-rados-plugin=lrc-k=4-m=2-l=3.yaml
new file mode 120000 (symlink)
index 0000000..86a2d3c
--- /dev/null
@@ -0,0 +1 @@
+../../../../erasure-code/ec-rados-plugin=lrc-k=4-m=2-l=3.yaml
\ No newline at end of file
diff --git a/suites/rados/thrash/workloads/ec-readwrite.yaml b/suites/rados/thrash/workloads/ec-readwrite.yaml
deleted file mode 100644 (file)
index 80b9140..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-tasks:
-- rados:
-    clients: [client.0]
-    ops: 4000
-    objects: 500
-    ec_pool: true
-    op_weights:
-      read: 45
-      write: 0
-      append: 45
-      delete: 10
diff --git a/suites/rados/thrash/workloads/ec-snaps-few-objects.yaml b/suites/rados/thrash/workloads/ec-snaps-few-objects.yaml
deleted file mode 100644 (file)
index c64d4ff..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-tasks:
-- rados:
-    clients: [client.0]
-    ops: 4000
-    objects: 50
-    ec_pool: true
-    op_weights:
-      read: 100
-      write: 0
-      append: 100
-      delete: 50
-      snap_create: 50
-      snap_remove: 50
-      rollback: 50
-      copy_from: 50