diff --git a/consys-core/src/main/scala/de/tuda/stg/consys/core/ConsistencyLabel.scala b/consys-core/src/main/scala/de/tuda/stg/consys/core/ConsistencyLabel.scala index 7860c7d10..ace175359 100644 --- a/consys-core/src/main/scala/de/tuda/stg/consys/core/ConsistencyLabel.scala +++ b/consys-core/src/main/scala/de/tuda/stg/consys/core/ConsistencyLabel.scala @@ -24,6 +24,7 @@ object ConsistencyLabel { /* CRDTs */ case object CvRDT extends ConsistencyLabel case object CmRDT extends ConsistencyLabel + case object DCRDT extends ConsistencyLabel case class Cassandra(replicas : Int) extends ConsistencyLabel diff --git a/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/AkkaReplicaSystemFactory.scala b/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/AkkaReplicaSystemFactory.scala index 24141be54..10eb46a25 100644 --- a/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/AkkaReplicaSystemFactory.scala +++ b/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/AkkaReplicaSystemFactory.scala @@ -30,6 +30,7 @@ object AkkaReplicaSystemFactory extends ReplicaSystemFactory { with CausalAkkaReplicaSystem with CmRDTAkkaReplicaSystem with CvRDTAkkaReplicaSystem + with DeltaCRDTAkkaReplicaSystem { override protected def freshAddr() : String = "$" + String.valueOf(Random.alphanumeric.take(16).toArray) diff --git a/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/DeltaCRDTAkkaReplicaSystem.scala b/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/DeltaCRDTAkkaReplicaSystem.scala new file mode 100644 index 000000000..7a9457bc4 --- /dev/null +++ b/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/DeltaCRDTAkkaReplicaSystem.scala @@ -0,0 +1,138 @@ +package de.tuda.stg.consys.core.akka +import java.io + +import akka.actor.{ActorRef, ActorSystem} +import de.tuda.stg.consys.core.Address + +import scala.reflect.runtime.universe._ +import de.tuda.stg.consys.core.akka.DeltaCRDTAkkaReplicaSystem.{DeltaCRDTReplicatedObject, DeltaUpdateReq} +import de.tuda.stg.consys.core.ConsistencyLabel.DCRDT +import de.tuda.stg.consys.core.akka.Requests.{InvokeOp, NoAnswerRequest, Operation, Request, SynchronousRequest} + +import scala.concurrent.duration.FiniteDuration +import scala.reflect.runtime.universe +/** +@author: Kris Frühwein und Julius Näumann + */ +trait DeltaCRDTAkkaReplicaSystem extends AkkaReplicaSystem { + + +//creates master replica + override protected def createMasterReplica[T <: Obj : TypeTag](l: ConsistencyLevel, addr: Addr, obj: T): AkkaReplicatedObject[Addr, T] = { + val result = l match { + + case DCRDT => new DeltaCRDTReplicatedObject[Addr, T](obj, addr, this) + case _ => super.createMasterReplica[T](l, addr, obj) + } + println("created master replica") + result + } + + //creates follower replica + override protected def createFollowerReplica[T <: Obj : TypeTag](l: ConsistencyLevel, addr: Addr, obj: T, masterRef: ActorRef): AkkaReplicatedObject[Addr, T] = { + val result = l match { + case DCRDT => new DeltaCRDTReplicatedObject[Addr, T](obj, addr, this) + case _ => super.createFollowerReplica[T](l, addr, obj, masterRef) + } + println("created follower replicas") + result + } +} + + +trait DeltaHandler { + def transmitDelta(delta: Any) +} + + object DeltaCRDTAkkaReplicaSystem { + + private case class RequestOperation(op: Operation[_]) extends SynchronousRequest[Unit] + + private case class RequestSync(tx: Transaction) extends SynchronousRequest[Unit] + + case class Message(obj: Any) extends NoAnswerRequest + + case class DeltaUpdateReq(obj: Any) extends NoAnswerRequest + + + + //Class for an Replicated Object. must be serializable + class DeltaCRDTReplicatedObject[Loc, T] + ( + init: T, val addr: Loc, val replicaSystem: AkkaReplicaSystem {type Addr = Loc} + )( + protected implicit val ttt: TypeTag[T] + ) extends AkkaSECReplicatedObject[Loc, T] + with Lockable[T] + with Serializable + with DeltaHandler + { + setObject(init) + val t = init.asInstanceOf[DeltaCRDT] + + override final def consistencyLevel: ConsistencyLevel = DCRDT + + override def handleRequest[R](request: Request[R]): R = request match { + case DeltaUpdateReq(state: AkkaReplicaSystem#Obj) => + getObject.asInstanceOf[DeltaCRDT].merge(state) + + None.asInstanceOf[R] + case _ => + super.handleRequest(request) + + } + + override def internalInvoke[R](tx: Transaction, methodName: String, args: Seq[Seq[Any]]): R = { + val result = super.internalInvoke[R](tx, methodName, args) + if (result.isInstanceOf[Delta]) { + val d = result.asInstanceOf[Delta] + replicaSystem.foreachOtherReplica(handler => handler.request(addr, DeltaUpdateReq(d.delta))) + } + result + } + + + + override def sync(): Unit = { + // todo: + // traditional sync method does not make sense in the context of dcrdt + // should there be an option to force sync? + println(s"DCRDT '$addr' sync") + } + + override protected def transactionStarted(tx: Transaction): Unit = { + super.transactionStarted(tx) + } + + override protected def transactionFinished(tx: Transaction): Unit = { + super.transactionFinished(tx) + } + + override def toString: String = s"@DCRDT($addr, $getObject)" + + override def transmitDelta(delta: Any): Unit = { + replicaSystem.foreachOtherReplica(handler => handler.request(addr, DeltaUpdateReq(delta))) + } + } + } + +//abstract class for all deltaCRDT +abstract class DeltaCRDT extends DeltaMergeable { + +} + +//general delta return type +class Delta ( + d: AkkaReplicaSystem#Obj + ) { + var delta :AkkaReplicaSystem#Obj = d + } + +//delta return type if method returns something too +class ResultWrapper[T <: Object] (v: T, d: AkkaReplicaSystem#Obj) +extends Delta(d) { + val value: T = v +} + + + diff --git a/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/DeltaMergeable.scala b/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/DeltaMergeable.scala new file mode 100644 index 000000000..1ad39be0c --- /dev/null +++ b/consys-core/src/main/scala/de/tuda/stg/consys/core/akka/DeltaMergeable.scala @@ -0,0 +1,13 @@ +package de.tuda.stg.consys.core.akka + +/** + * Classes with this trait allow being updated with a delta state + * @tparam T delta state type + */ +trait DeltaMergeable { + + private[akka] def merge(other:AkkaReplicaSystem#Obj) + +} + + diff --git a/consys-japi/src/main/java/de/tuda/stg/consys/japi/JConsistencyLevels.java b/consys-japi/src/main/java/de/tuda/stg/consys/japi/JConsistencyLevels.java index 670230f2d..4298b991f 100644 --- a/consys-japi/src/main/java/de/tuda/stg/consys/japi/JConsistencyLevels.java +++ b/consys-japi/src/main/java/de/tuda/stg/consys/japi/JConsistencyLevels.java @@ -16,5 +16,5 @@ public interface JConsistencyLevels { @Local ConsistencyLabel CMRDT = ConsistencyLabel.CmRDT$.MODULE$; @Local ConsistencyLabel CVRDT = ConsistencyLabel.CvRDT$.MODULE$; - + @Local ConsistencyLabel DCRDT = ConsistencyLabel.DCRDT$.MODULE$; } diff --git a/demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/CounterBenchmark.java b/demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/CounterBenchmark.java similarity index 77% rename from demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/CounterBenchmark.java rename to demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/CounterBenchmark.java index 9322f5cab..0a320ede5 100644 --- a/demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/CounterBenchmark.java +++ b/demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/CounterBenchmark.java @@ -1,19 +1,13 @@ -package de.tuda.stg.consys.demo.counter; +package de.tuda.stg.consys.demo.dcrdt; import com.typesafe.config.Config; import de.tuda.stg.consys.bench.OutputFileResolver; import de.tuda.stg.consys.demo.DemoBenchmark; -import de.tuda.stg.consys.demo.counter.schema.Counter; +import de.tuda.stg.consys.demo.dcrdt.schema.Counter; import de.tuda.stg.consys.japi.JRef; -import de.tuda.stg.consys.japi.impl.JReplicaSystems; -import de.tuda.stg.consys.japi.impl.akka.JAkkaReplicaSystem; import org.checkerframework.com.google.common.collect.Sets; import scala.Option; -import java.util.Random; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; - /** * Created on 10.10.19. * @@ -32,6 +26,7 @@ public CounterBenchmark(Config config, Option outputResolver @Override public void setup() { + if (processId() == 0) { counter = system().replicate("counter", new Counter(0), getWeakLevel()); } else { diff --git a/demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/Demo.java b/demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/Demo.java similarity index 94% rename from demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/Demo.java rename to demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/Demo.java index 6212c43f8..cf17ec3bf 100644 --- a/demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/Demo.java +++ b/demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/Demo.java @@ -1,4 +1,4 @@ -package de.tuda.stg.consys.demo.counter; +package de.tuda.stg.consys.demo.dcrdt; import com.typesafe.config.Config; import com.typesafe.config.ConfigFactory; diff --git a/demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/JMHBenchmark.java b/demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/JMHBenchmark.java similarity index 96% rename from demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/JMHBenchmark.java rename to demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/JMHBenchmark.java index 25b02f07f..5bc21c1fb 100644 --- a/demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/JMHBenchmark.java +++ b/demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/JMHBenchmark.java @@ -1,7 +1,7 @@ -package de.tuda.stg.consys.demo.counter; +package de.tuda.stg.consys.demo.dcrdt; import de.tuda.stg.consys.core.ConsistencyLabel; -import de.tuda.stg.consys.demo.counter.schema.Counter; +import de.tuda.stg.consys.demo.dcrdt.schema.Counter; import de.tuda.stg.consys.japi.JConsistencyLevels; import de.tuda.stg.consys.japi.JRef; import de.tuda.stg.consys.japi.JReplicaSystem; diff --git a/demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/schema/Counter.java b/demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Counter.java similarity index 81% rename from demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/schema/Counter.java rename to demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Counter.java index 4e88b877a..d88e9094f 100644 --- a/demos/counter/src/main/java/de/tuda/stg/consys/demo/counter/schema/Counter.java +++ b/demos/counter/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Counter.java @@ -1,4 +1,4 @@ -package de.tuda.stg.consys.demo.counter.schema; +package de.tuda.stg.consys.demo.dcrdt.schema; import java.io.Serializable; diff --git a/demos/dcrdt-demo/README.md b/demos/dcrdt-demo/README.md new file mode 100644 index 000000000..f1a87e4bd --- /dev/null +++ b/demos/dcrdt-demo/README.md @@ -0,0 +1,81 @@ +# Implementing Delta-CRDTs in Consys + +Consys supports implementing custom Delta-CRDTs, as presented in `Almeida et al. - 2018 - Delta State Replicated Data Types`. + +## Delta-CRDT overview +Delta-CRDTs are an extension of CRDTs, which are a replicated data structure synchronized using a `merge` method, which merges two states into a new one. + +Delta-CRDTs provide the advantage of reduced data transfer, as they are synchronized through _delta-states_. If a replica has changed, it will only need to send a difference. +Other replicas can incorporate these changes by implementing the `merge` method, which takes a _delta-state_ parameter. + +The structure must implement a _join-semilattice_; Please see the referenced publication for more details on the formal requirements it has to meet. +## Implementing a Delta-CRDT + +Contrary to the typical workflow of Consys, using a Delta-CRDT structure requires implementing a custom class defining a `merge` method. Additionally, methods must follow a certain convention to convey whether they result in a delta state. +Automatically inferring delta states is not currently in scope of this project. + +The following exemplifies a DCRDT implementation using an AddOnlySet. + +``` +public class AddOnlySetString extends DeltaCRDT implements Serializable { + + private Set set = new HashSet(); + + + @Override + public void merge(Object other) { + if (other instanceof Set) { + Set s = (Set) other; + set.addAll(s); + } + } + + // adds a new String to this set + public Delta addElement(String str) { + set.add(str); + Set s = new HashSet(); + s.add(str); + return new Delta(s); + } + + // adds a new String to this set. + // Returns whether the current local set did not yet include this string. + public ResultWrapper addElement2(String str) { + boolean result = set.add(str); + Set s = new HashSet(); + s.add(str); + return new ResultWrapper<>(result, s); + } + + +} +``` +The `addElement` method returns a Delta instance containing _delta-state_. +`merge()` takes an `Object` parameter. Any value wrapped in a `Delta` or `ResultWrapper` instance will be passed here. + + +Things to note: +* The class must be Serializable. When a replica is initially registered using `replicate()`, it is transmitted to other clients as a whole, without the use of delta states. +* As of yet, akka does not support generics, which is why the merge method only takes an `Object`. This is also why this example explicitly uses strings. +* If a method results in a changed state, it must return a `Delta` instance that includes the delta state. Akka will transmit this Delta to other replicas by invoking their `merge` method. +* If a method intended to return a value results in a changed state, it must return a `ResultWrapper` object, which allows setting a delta state and an arbitrary value. `ResultWrapper` takes a type parameter, as akka's generics limitation does not apply here. +* Please not that DCRDT methods are currently not yet atomic. This can pose a problem if a set being iterated over is modified by a `merge()` call. This issue will be fixed in a future version. + +Once implemented correctly, instances of DCRDT classes can be used just like any other data type in akka: + +``` +// ... +if (master) { + set = system().replicate("counter", new AddOnlySetString(), JConsistencyLevels.DCRDT); +} else { + set = system().lookup("counter", AddOnlySetString.class, JConsistencyLevels.DCRDT); +} + +// ... +set.ref().addElement("Hello"); + +// ... +if (! set.ref().addElement2("Hello").value) { + System.out.println("element already in set"); +} +``` \ No newline at end of file diff --git a/demos/dcrdt-demo/pom.xml b/demos/dcrdt-demo/pom.xml new file mode 100644 index 000000000..ebf2cbf9e --- /dev/null +++ b/demos/dcrdt-demo/pom.xml @@ -0,0 +1,199 @@ + + + + demos + de.tuda.stg.consys + 2.0.0 + + 4.0.0 + + dcrdt-demo + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + 10000 + 10000 + + + + + de.tuda.stg.consys + consys-type-checker + 2.0.0 + + + de.tuda.stg.consys + consys-compiler + 2.0.0 + + + + + + + + + + + + + + -Xplugin:ConsysPlugin + + + + + + + org.apache.maven.plugins + maven-shade-plugin + ${plugins.shade.version} + + + add-meta-inf + package + + shade + + + benchmarks + + + + + + + + + *:* + + META-INF/*.SF + META-INF/*.DSA + META-INF/*.RSA + + + + + + + + add-akka-conf + package + + shade + + + true + allinone + + + *:* + + + + + reference.conf + + + + + + + + + + + + + + + de.tuda.stg.consys + consys-core + 2.0.0 + + + + + + + + + + + + + + de.tuda.stg.consys + consys-core + 2.0.0 + + + de.tuda.stg.consys + consys-type-checker + 2.0.0 + + + org.openjdk.jmh + jmh-core + 1.21 + + + org.openjdk.jmh + jmh-generator-annprocess + 1.21 + provided + + + de.tuda.stg.consys + consys-japi + 2.0.0 + compile + + + de.tuda.stg.consys + consys-compiler + 2.0.0 + compile + + + de.tuda.stg.consys + consys-bench + 2.0.0 + + + de.tuda.stg.consys + demo-bench + 2.0.0 + compile + + + + com.typesafe.akka + akka-remote_2.12 + + + io.aeron + aeron-driver + + + io.aeron + aeron-client + + + + + \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/DCRDTBenchmark.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/DCRDTBenchmark.java new file mode 100644 index 000000000..f8ee8a65b --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/DCRDTBenchmark.java @@ -0,0 +1,164 @@ +package de.tuda.stg.consys.demo.dcrdt; + +import com.typesafe.config.Config; +import de.tuda.stg.consys.demo.Demo; +import de.tuda.stg.consys.demo.DemoBenchmark; +import de.tuda.stg.consys.demo.dcrdt.schema.*; +import de.tuda.stg.consys.japi.JConsistencyLevels; +import de.tuda.stg.consys.japi.JRef; +import org.checkerframework.com.google.common.collect.Sets; +import scala.Option; + +/** + * @author = Kris Frühwein, Julius Näumann + * Integer vetor that only grows + */ +public class DCRDTBenchmark extends DemoBenchmark { + public static void main(String[] args) { + start(DCRDTBenchmark.class, args); + } + + public DCRDTBenchmark(Config config) { + super(config, Option.empty()); + } + + private JRef map; + private JRef dotStore; + + private JRef set; + + private JRef set2; + + private JRef addRemove; + + private JRef vector; + + private JRef hashMap; + + private int switcher = 4; + + @Override + public void setup() { + switch (switcher) { + case 0: + if (processId() == 0) { + dotStore = system().replicate("dotstore", new DotStoreString(), JConsistencyLevels.DCRDT); + } else { + dotStore = system().lookup("dotstore", DotStoreString.class, JConsistencyLevels.DCRDT); + dotStore.sync(); //Force dereference + } + System.out.println(processId() + " finished setup of dotStore"); + break; + + case 1: + if (processId() == 0) { + set = system().replicate("aoset", new AddOnlySetString(), JConsistencyLevels.DCRDT); + } else { + set = system().lookup("aoset", AddOnlySetString.class, JConsistencyLevels.DCRDT); + set.sync(); //Force dereference + } + System.out.println(processId() + " finished setup of set"); + break; + + case 2: + if (processId() == 0) { + addRemove = system().replicate("arset", new AddRemoveSet(), JConsistencyLevels.DCRDT); + } else { + addRemove = system().lookup("arset", AddRemoveSet.class, JConsistencyLevels.DCRDT); + addRemove.sync(); //Force dereference + } + System.out.println(processId() + " finished setup of addRemove"); + break; + + case 3: + if (processId() == 0) { + vector = system().replicate("counter", new IntegerVector(5), JConsistencyLevels.DCRDT); + } else { + vector = system().lookup("counter", IntegerVector.class, JConsistencyLevels.DCRDT); + vector.sync(); //Force dereference + } + System.out.println(processId() + " finished setup of vectorClock"); + break; + + case 4: + if (processId() == 0) { + hashMap = system().replicate("hashmap", new DCRDTHashMap(), JConsistencyLevels.DCRDT); + + } else { + hashMap = system().lookup("hashmap", DCRDTHashMap.class, JConsistencyLevels.DCRDT); + hashMap.sync(); //Force dereference + } + System.out.println(processId() + " finished setup of HashMap"); + break; + case 5: + if (processId() == 0) { + map = system().replicate("hashmap", new StringHashmap(), JConsistencyLevels.DCRDT); + } else { + map = system().lookup("hashmap", StringHashmap.class, JConsistencyLevels.DCRDT); + map.sync(); //Force dereference + + } + break; + } + + } + + @Override + public void operation() { + switch (switcher) { + case 0: + dotStore.ref().addString("Hello from " + processId(), processId()); + dotStore.ref().removeString("Hello from " + processId(), processId()); + String s = "current String of" + processId() +" after removal: "+dotStore.ref().toString(processId()); + System.out.println(s); + doSync(() -> dotStore.sync()); + System.out.print("."); + break; + case 1: + set.ref().addElement("Hello from "+ processId() ); + doSync(() -> set.sync()); + System.out.print("."); + break; + + case 2: + addRemove.ref().addElement("Hello from " + processId()); + addRemove.ref().removeElement("Hello from "+processId()); + addRemove.ref().addElement("Hello from " + processId()); + //Does not add this one because it is a Tombstone Set + String x ="result: "+ addRemove.ref().toString(); + System.out.println(x); + doSync(() -> addRemove.sync()); + System.out.print("."); + break; + + case 3: + vector.ref().inc(0); + doSync(() -> vector.sync()); + System.out.print("."); + break; + + case 4: + AddOnlySetString strset = new AddOnlySetString(); + strset.addElement("a" + processId()); + AddOnlySetString strset2 = new AddOnlySetString(); + strset2.addElement("b" + processId()); + hashMap.ref().put("KEY",strset); + hashMap.ref().put("KEY"+processId(),strset2); + break; + + case 5: + map.ref().addEntry("Key " + processId(), "Value " + processId()); + + doSync(() -> map.sync()); + System.out.print("."); + break; + } + } + + @Override + public void cleanup() { + system().clear(Sets.newHashSet()); + } + + +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/DCRDTDemo.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/DCRDTDemo.java new file mode 100644 index 000000000..49d22819c --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/DCRDTDemo.java @@ -0,0 +1,29 @@ +package de.tuda.stg.consys.demo.dcrdt; + +import com.typesafe.config.Config; +import com.typesafe.config.ConfigFactory; +import de.tuda.stg.consys.demo.DemoExecutor; + +public class DCRDTDemo extends DemoExecutor { + public static void main(String[] args) throws Exception{ + new DCRDTDemo().runDemo(); + } + + @Override + protected Config benchmarkConfig() { + var configString = "consys {\n" + + "\tbench {\n" + + "\t\tdemo {\n" + + "\t\t\ttype = \"mixed\"\n" + + "\t\t}\n" + + "\t}\n" + + "}"; + + return ConfigFactory.parseString(configString); + } + + @Override + protected Class benchmarkClass() { + return DCRDTBenchmark.class; + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/JMHBenchmark.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/JMHBenchmark.java new file mode 100644 index 000000000..5f657b358 --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/JMHBenchmark.java @@ -0,0 +1,100 @@ +package de.tuda.stg.consys.demo.dcrdt; + +import de.tuda.stg.consys.core.ConsistencyLabel; +import de.tuda.stg.consys.demo.dcrdt.schema.AddOnlySet; +import de.tuda.stg.consys.japi.JConsistencyLevels; +import de.tuda.stg.consys.japi.JRef; +import de.tuda.stg.consys.japi.JReplicaSystem; +import de.tuda.stg.consys.japi.impl.JReplicaSystems; +import org.openjdk.jmh.Main; +import org.openjdk.jmh.annotations.*; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.TimeUnit; + +@Warmup(iterations = 4) +@Measurement(iterations = 4) +@BenchmarkMode(Mode.SampleTime) +@OutputTimeUnit(TimeUnit.MICROSECONDS) +@Fork(3) +public class JMHBenchmark { + public static void main(String[] args) throws Exception { + Main.main(args); + } + + @State(Scope.Benchmark) + public static class BenchmarkSetup { + @Param({"weak", "local/strong"}) + String level; + + JReplicaSystem replicaSystem1; + JReplicaSystem replicaSystem2; + JReplicaSystem replicaSystem3; + + List>> counters; + + public List>> getCounters() { + return counters; + } + + int index; + + public int getIndex() { + return index; + } + + @Setup(Level.Iteration) + public void systemSetup() throws Exception { + + JReplicaSystem[] systems = JReplicaSystems.fromActorSystemForTesting(3); + + replicaSystem1 = systems[0]; + replicaSystem2 = systems[1]; + replicaSystem3 = systems[2]; + + ConsistencyLabel consistencyLevel = level.equals("weak") ? JConsistencyLevels.WEAK : JConsistencyLevels.STRONG; + + replicaSystem1.replicate("counter1", new AddOnlySet(), consistencyLevel); + replicaSystem2.replicate("counter2", new AddOnlySet(), consistencyLevel); + replicaSystem3.replicate("counter3", new AddOnlySet(), consistencyLevel); + + counters = new ArrayList<>(); + + + Class> c = (Class>) new AddOnlySet().getClass(); + counters.add(replicaSystem1.lookup("counter1", c, consistencyLevel)); + counters.add(replicaSystem1.lookup("counter2", c, consistencyLevel)); + counters.add(replicaSystem1.lookup("counter3", c, consistencyLevel)); + counters.add(replicaSystem2.lookup("counter1", c, consistencyLevel)); + counters.add(replicaSystem2.lookup("counter2", c, consistencyLevel)); + counters.add(replicaSystem2.lookup("counter3", c, consistencyLevel)); + counters.add(replicaSystem3.lookup("counter1", c, consistencyLevel)); + counters.add(replicaSystem3.lookup("counter2", c, consistencyLevel)); + counters.add(replicaSystem3.lookup("counter3", c, consistencyLevel)); + + index = -1; + + Thread.sleep(1000); + + + } + + @TearDown(Level.Iteration) + public void systemTeardown() throws Exception { + replicaSystem1.close(); + replicaSystem2.close(); + replicaSystem3.close(); + } + + @Setup(Level.Invocation) + public void indexSetup() throws Exception { + index = (index + 1) % counters.size(); + } + } + + @Benchmark + public void benchmark(BenchmarkSetup setup) { + setup.getCounters().get(setup.getIndex()).invoke("inc"); + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Add.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Add.java new file mode 100644 index 000000000..a688459c0 --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Add.java @@ -0,0 +1,20 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import java.io.Serializable; + +/** + * @author = Kris Frühwein, Julius Näumann + * Event for the Dot-Store that represents the addition of an element + */ + +public class Add extends Event implements Serializable { + public String element; + + /** + * Constructor + * @param s The String that should be added + */ + public Add(String s) { + this.element = s; + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddOnlySet.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddOnlySet.java new file mode 100644 index 000000000..4789ef98e --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddOnlySet.java @@ -0,0 +1,50 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import de.tuda.stg.consys.core.akka.DeltaCRDT; + +import java.io.Serializable; +import java.util.HashSet; +import java.util.Set; +/* + * This AddOnlySet implementation is generically typed. + * As of yet, akka does not support generics. + */ +public class AddOnlySet extends DeltaCRDT implements Serializable { + + private Set set = new HashSet<>(); + + public AddOnlySet() { + System.out.println("constructor"); + } + public void addElement(T el) { + System.out.println("Adding element " + el); + set.add(el); + Set s = new HashSet<>(); + + s.add(el); + System.out.println("TRANSMITTING DELTA"); + + } + + @Override + public void merge(Object other) { + if (other instanceof Set) { + Set s = (Set) other; + + System.out.println("received delta. merging"); + + set.addAll(s); + } + + System.out.println("current state:" + toString()); + } + + @Override + public String toString() { + String s = ""; + for (T k : set){ + s = s + k.toString() + ","; + } + return s; + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddOnlySetString.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddOnlySetString.java new file mode 100644 index 000000000..9502ce07e --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddOnlySetString.java @@ -0,0 +1,88 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import de.tuda.stg.consys.core.akka.Delta; +import de.tuda.stg.consys.core.akka.DeltaCRDT; +import de.tuda.stg.consys.core.akka.ResultWrapper; + +import java.io.Serializable; +import java.util.HashSet; +import java.util.Set; + +/** + * @author = Kris Frühwein, Julius Näumann + * Add Only Set of Strings + */ +public class AddOnlySetString extends DeltaCRDT implements Serializable { + + private Set set = new HashSet(); + + /** + * Constructor + */ + public AddOnlySetString() { + System.out.println("constructor"); + } + + + /** + * adds a String to the Set + * @param str String that should be added + * @return whether the set has changed. If the String was already present in this replica, returns false. + */ + public ResultWrapper addElement2(String str) { + System.out.println("Adding String " + str); + boolean result = set.add(str); + Set s = new HashSet(); + + s.add(str); + System.out.println("TRANSMITTING DELTA"); + return new ResultWrapper<>(result, s); + } + + /** + * adds a String to the Set + * @param str String that should be added + * @return Delta Object with the information which String was added + */ + public Delta addElement(String str) { + System.out.println("Adding String " + str); + set.add(str); + Set s = new HashSet(); + s.add(str); + System.out.println("TRANSMITTING DELTA"); + return new Delta(s); + } + + /** + * merges the current Set with incoming delta messages + * @param other delta message + */ + @Override + public void merge(Object other) { + if (other instanceof Set) { + Set s = (Set) other; + + System.out.println("received delta. merging"); + + set.addAll(s); + } + if (other instanceof AddOnlySetString) { + AddOnlySetString o = (AddOnlySetString) other; + + System.out.println("received delta. merging"); + + set.addAll(o.set); + } + + System.out.println("current state:" + toString()); + } + + @Override + public String toString() { + String s = ""; + for (String k : set){ + s = s + k + ","; + } + return s; + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddRemoveSet.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddRemoveSet.java new file mode 100644 index 000000000..166dbeee5 --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/AddRemoveSet.java @@ -0,0 +1,122 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import akka.stream.impl.fusing.Collect; +import de.tuda.stg.consys.core.akka.Delta; +import de.tuda.stg.consys.core.akka.DeltaCRDT; + +import java.io.Serializable; +import java.util.Collections; +import java.util.HashSet; +import java.util.Set; + + +/** + * @author = Kris Frühwein, Julius Näumann + * Set that allows adding and removing elements. Is a Tombstone set, once an element is removed, + * it cannot be added again + */ +public class AddRemoveSet extends DeltaCRDT implements Serializable { + + //addition set + private Set addSet = new HashSet(); + //tombstone set + private Set removeSet = new HashSet(); + + /** + * Constructor + */ + public AddRemoveSet() { + System.out.println("constructor"); + } + + /** + * adds element to the "addidtion Set" + * @param el element that should be added + * @return a delta object with the new set + */ + public Delta addElement(String el) { + addSet.add(el); + Set s = new HashSet(); + + s.add(el); + System.out.println("TRANSMITTING DELTA"); + Pair,Set> p = new Pair, Set>(s,null); + return new Delta(p); + } + + /** + * removes an element by adding it to the "Tombstone Set" + * @param el element that should be removed + * @return a delta object with the new tombstone set + */ + public Delta removeElement(String el){ + removeSet.add(el); + Set s = new HashSet(); + s.add(el); + Pair,Set> p = new Pair, Set>(null,s); + return new Delta(p); + + } + + + /** + * merges the current sets with the incoming delta message + * @param other delta message + */ + @Override + public void merge(Object other) { + if (other instanceof Pair) { + Pair,Set> p = (Pair,Set>) other; + + System.out.println("received delta. merging"); + + if(p.getKey()!=null) { + addSet.addAll(p.getKey()); + } + if(p.getValue()!=null) { + removeSet.addAll(p.getValue()); + } + } + + System.out.println("current state:" + toString()); + } + + /** + * + * @return the addition set + */ + public Set getAddSet() { + return addSet; + } + + /** + * + * @return the tombstone set + */ + public Set getRemoveSet() { + return removeSet; + } + + /** + * + * @return the resulting set by creating the difference from the addition set + * with the tombstone set + */ + public Set getSet(){ + Set s = new HashSet(); + s.addAll(addSet); + s.removeAll(removeSet); + return s; + } + + @Override + public String toString() { + String s = ""; + Set set = this.getSet(); + for (String k : set){ + s = s + k.toString() + ","; + } + + return s; + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/DCRDTHashMap.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/DCRDTHashMap.java new file mode 100644 index 000000000..32d8a2d3e --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/DCRDTHashMap.java @@ -0,0 +1,62 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import de.tuda.stg.consys.core.akka.Delta; +import de.tuda.stg.consys.core.akka.DeltaCRDT; + +import java.io.Serializable; +import java.util.HashMap; + +/** + * @author Kris Frühwein und Julius Näumann + */ +public class DCRDTHashMap extends DeltaCRDT implements Serializable { + private HashMap internalMap = new HashMap<>(); + + /** + * puts the given object with the key in the map + * @param key the key of the map entry + * @param object the object of the map entry + * @return a delta message containing the entry + */ + public Delta put(String key, DeltaCRDT object) { + DeltaCRDT val = internalMap.get(key); + if (val != null) { + val.merge(object); + } else { + internalMap.put(key,object); + } + return new Delta(new Pair(key, object)); + } + + /** + * merges the current map with the delta message + * @param other delta message + */ + @Override + public void merge(Object other) { + if (other instanceof Pair) { + Pair p = (Pair) other; + String key = p.getKey(); + DeltaCRDT val = p.getValue(); + + System.out.println("received " + key + " : " + val.toString()); + DeltaCRDT oldVal = internalMap.get(key); + if (oldVal != null) { + System.out.println("key collision for " + key + ". Old value: " + oldVal.toString() +". Merging."); + oldVal.merge(val); + System.out.println("After merge: " + oldVal.toString()); + } else { + internalMap.put(key,val); + } + } + } + + /** + * returns the object corresponding to the key + * @param key the key of the entry + * @return the corresponding object of the entry + */ + public DeltaCRDT get(String key) { + return internalMap.get(key); + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Dot.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Dot.java new file mode 100644 index 000000000..27b811993 --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Dot.java @@ -0,0 +1,36 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import java.io.Serializable; + +/** + * @author = Kris Frühwein, Julius Näumann + * Class for a single Dot. Consists of an Dot-id and a Sequencenumber for ordering. + */ +public class Dot implements Serializable { + + public Pair dot; + + /** + * Constructor + * @param id ID of the Dot + * @param sequenceNumber sequence number for ordering. A higher sequence number means that the + * event occurred later. + */ + public Dot(int id, int sequenceNumber){ + this.dot = new Pair<>(id,sequenceNumber); + } + + /** + * Compares 2 Dots if they are equal + * @param other The other Dot that should be compared with + * @return true if both ID and sequence number of both Dots are equal, false otherwise + */ + public boolean equals(Pair other){ + return this.dot.getValue()==other.getValue() && this.dot.getKey() == other.getKey(); + } + + + public String toString(){ + return "("+ this.dot.getKey()+ ";" + this.dot.getValue() +")"; + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/DotStoreString.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/DotStoreString.java new file mode 100644 index 000000000..2e16bb87c --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/DotStoreString.java @@ -0,0 +1,212 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import java.io.Serializable; +import java.util.LinkedList; +import java.util.List; +import java.util.HashSet; +import java.util.Set; + +import de.tuda.stg.consys.core.akka.Delta; +import de.tuda.stg.consys.core.akka.DeltaCRDT; + +/** + * @author = Kris Frühwein, Julius Näumann + * Class of a Dot-Store. Consists of an Context that tells which Dot is + * assisiated with which Event, a store for all Dots and a (String) Set + * for the actual elements that should be stored + */ +public class DotStoreString extends DeltaCRDT implements Serializable { + + + public List> context; + + public Set store; + + public Set stringset; + + /** + * Constructor + */ + public DotStoreString() { + context = new LinkedList<>(); + store = new HashSet<>(); + stringset = new HashSet<>(); + } + + /** + * + * @param id ID of the Dot + * @return the current maximum sequence number of the dot with the given ID + */ + public int max(int id) { + int x = -1; + int k ; + int v; + //get maximum sequence + for(int i = 0; i < context.size(); i++){ + if(context.get(i).getValue().dot.getKey() == id){ + k = context.get(i).getValue().dot.getValue(); + if(k > x){ + x = k; + } + } + } + return x; + } + + /** + * + * @param id ID of the dot + * @return the next sequence number of the dot with the given ID + */ + public int next(int id) { + //next sequence number + return this.max(id) + 1; + } + + + /** + * adds a String to the Dot-Store + * @param s String that should be added + * @param id ID of the Dot + * @return a Delta Object with an Add-Event associated with a Dot + */ + public Delta addString(String s, int id) { + int next = this.next(id); + Dot dot = new Dot(id, next); + Add add = new Add(s); + + Pair p = new Pair<>(add, dot); + context.add(p); + store.add(dot); + stringset.add(s); + return new Delta(p); + } + + /** + * removes a String to the Dot-Store + * @param s String that should be removed + * @param id ID of the Dot + * @return a Delta Object with an Remove-Event associated with a Dot + */ + public Delta removeString(String s, int id){ + int next = this.next(id); + Dot dot = new Dot(id,next); + Remove rem = new Remove(s); + + Pair p = new Pair<>(rem,dot); + context.add(p); //context is grow only + store.remove(dot); + stringset.add(s); + return new Delta(p); + } + + + /** + * merges incoming delta messages with the current Dot-Store + * @param other Delta message + */ + @Override + public void merge(Object other) { + if (other instanceof Pair) { + Pair p = (Pair) other; + Event e = p.getKey(); + Dot d = p.getValue(); + if(e instanceof Add){ + Add a = (Add) e; + int id = d.dot.getKey(); + int seqNr = d.dot.getValue(); + if(findElement(id,a.element)> idList = new LinkedList<>(); + //searches for all Dots with the given id + for (int i = 0; i< context.size(); i++){ + if(context.get(i).getValue().dot.getKey() == id){ + idList.add(context.get(i)); + } + } + + int max = 0; + int found = -1; + for(int j = 0; j< idList.size(); j++){ + Pair p = idList.get(j); + Event e = p.getKey(); + if( e instanceof Add){ + Add a = (Add) e; + if(a.element.equals(s)){ + if(p.getValue().dot.getValue()>max){ + + max = p.getValue().dot.getValue(); + found = max; + } + } + }else if (e instanceof Remove){ + Remove r = (Remove) e ; + if(r.element.equals(s)){ + if(p.getValue().dot.getValue()>max){ + found = -1; + max = p.getValue().dot.getValue(); + } + } + } + } + + return found; + } + + /** + * + * @param id id of the replica + * @return a Set with all Strings, that the replica currently contains + */ + public Set getSet(int id) { + Set s = new HashSet<>(); + for (String k : stringset) { + if (findElement(id, k) >= 0) { + s.add(k); + } + } + return s; + + } + + /** + * + * @param id id of the replica + * @return the strings that the replica contains currently + */ + public String toString(int id) { + String s = ""; + for (String k : stringset){ + if(findElement(id,k)>=0) { + s = s + k + ","; + } + } + return s; + } +} + diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Event.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Event.java new file mode 100644 index 000000000..508cb5057 --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Event.java @@ -0,0 +1,9 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +/** + * @author = Kris Frühwein, Julius Näumann + * Event for the Dot-Store + */ +public abstract class Event { + +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/IntegerVector.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/IntegerVector.java new file mode 100644 index 000000000..161cfabc3 --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/IntegerVector.java @@ -0,0 +1,69 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import de.tuda.stg.consys.core.akka.Delta; +import de.tuda.stg.consys.core.akka.DeltaCRDT; + +import java.io.Serializable; +import java.util.Set; + +/** + * @author = Kris Frühwein, Julius Näumann + * Integer vetor that only grows + */ +public class IntegerVector extends DeltaCRDT implements Serializable { + + private Integer[] vector; + + private int length; + + /** + * Constructor; initializes all values with 0 + * @param n length of the vector + */ + public IntegerVector(int n){ + this.length = n; + this.vector = new Integer[n]; + for (int i = 0; i < n; i++){ + vector[i] = 0; + } + } + + /** + * increases the number at the given index by 1 + * @param index index if the number that should be incremented + * @return a delta object with the index and the new value + */ + public Delta inc (int index){ + vector[index] += 1; + Pair p = new Pair(index,vector[index]); + return new Delta(p); + } + + /** + * merges the current integer vector with a delta message + * @param other delta message + */ + public void merge(Object other) { + if (other instanceof Pair) { + Pair p = (Pair) other; + + System.out.println("received delta. merging"); + + if(vector[p.getKey()]< p.getValue()){ + vector[p.getKey()] = p.getValue(); + } + } + + System.out.println("current state:" + toString()); + } + + @Override + public String toString(){ + + String s = ""; + for(int i = 0; i implements Serializable { + + private K key; + private V value; + + /** + * Constructor + * @param k key of the pair (1st element) + * @param v corresponding value of the pair (2nd element) + */ + public Pair(K k, V v){ + this.key = k; + this.value = v; + } + + /** + * + * @return key of the pair (1st element) + */ + public K getKey(){ + return this.key; + } + + /** + * + * @return value of the pair (2nd element) + */ + public V getValue(){ + return this.value; + } + + + + @Override + public String toString(){ + return "(" + this.getKey().toString() + ","+ this.getValue().toString() + ")"; + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Remove.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Remove.java new file mode 100644 index 000000000..c40d487e2 --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/Remove.java @@ -0,0 +1,20 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import java.io.Serializable; + +/** + * @author = Kris Frühwein, Julius Näumann + * Event for the Dot-Store that represents the removal of an element + */ +public class Remove extends Event implements Serializable { + + public String element; + + /** + * Constructor + * @param s The String that should be removed + */ + public Remove(String s){ + this.element = s; + } +} diff --git a/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/StringHashmap.java b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/StringHashmap.java new file mode 100644 index 000000000..22a369bed --- /dev/null +++ b/demos/dcrdt-demo/src/main/java/de/tuda/stg/consys/demo/dcrdt/schema/StringHashmap.java @@ -0,0 +1,79 @@ +package de.tuda.stg.consys.demo.dcrdt.schema; + +import de.tuda.stg.consys.core.akka.Delta; +import de.tuda.stg.consys.core.akka.DeltaCRDT; + +import java.io.Serializable; +import java.util.HashMap; + +/** + * @author Kris Frühwein und Julius Näumann + * This Hashmap can map from a String key to a Serializable value. + * In the case of a key collision, behavior is undefined. + */ +public class StringHashmap extends DeltaCRDT implements Serializable { + + private HashMap map = new HashMap(); + + public StringHashmap(){ + System.out.println("constructor"); + } + + /** + * adds the value with the given key to the Hashmap + * @param key key of the entry + * @param value value of the entry + * @return pair with key and entry + */ + public Delta addEntry(String key, Serializable value){ + System.out.println("Adding key and value:"+key.toString() + value.toString()); + map.put(key,value); + + Pair p = new Pair(key, value); + System.out.println("transmitting Delta"); + return new Delta(p); + } + + + /** + * merges the current map with the delta message + * @param other delta message + */ + @Override + public void merge(Object other) { + if (other instanceof Pair) { + Pair p = (Pair) other; + + System.out.println("received delta. merging"); + + map.put(p.getKey(),p.getValue()); + } + + System.out.println("current state:" + toString()); + } + + @Override + public String toString() { + return map.toString(); + } + + /** + * + * @param key key of the entry + * @return the value of the corresponding key + */ + public Serializable get(String key) { + return map.get(key); + } + + /** + * tells if the key is in the hashmap + * @param key key that is checked + * @return true if there is an entry with the given key, false otherwise + */ + public boolean containsKey(String key) { + return map.containsKey(key); + } + + +} diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench0.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench0.conf new file mode 100644 index 000000000..8c4938c7d --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench0.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.15.157:4551" + processId = 0 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench1.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench1.conf new file mode 100644 index 000000000..6290daeee --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench1.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.3.119:4552" + processId = 1 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench2.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench2.conf new file mode 100644 index 000000000..deee9e1df --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench2.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.13.199:4553" + processId = 2 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench3.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench3.conf new file mode 100644 index 000000000..f5768e2ba --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench3.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.31.6.106:4554" + processId = 3 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench4.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench4.conf new file mode 100644 index 000000000..7bc66cece --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench4.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.31.8.90:4555" + processId = 4 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench5.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench5.conf new file mode 100644 index 000000000..b588f68d5 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench5.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.33.7.124:4556" + processId = 5 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench6.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench6.conf new file mode 100644 index 000000000..38cb74661 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench6.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.33.9.229:4557" + processId = 6 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench7.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench7.conf new file mode 100644 index 000000000..740d8a3e9 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench7.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.32.15.164:4558" + processId = 7 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench8.conf b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench8.conf new file mode 100644 index 000000000..df3332cf0 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/geo-distributed/bench8.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.32.1.148:4559" + processId = 8 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.31.6.106:4554", "172.31.8.90:4555", "172.33.7.124:4556", "172.33.9.229:4557", "172.32.15.164:4558", "172.32.1.148:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench0.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench0.conf new file mode 100644 index 000000000..cbbc3ce7c --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench0.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.15.157:4551" + processId = 0 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench1.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench1.conf new file mode 100644 index 000000000..dedc4592d --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench1.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.3.119:4552" + processId = 1 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench2.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench2.conf new file mode 100644 index 000000000..8fef2cfa8 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench2.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.13.199:4553" + processId = 2 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench3.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench3.conf new file mode 100644 index 000000000..363e209e5 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench3.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.13.77:4554" + processId = 3 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench4.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench4.conf new file mode 100644 index 000000000..9a3547b04 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench4.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.0.197:4555" + processId = 4 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench5.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench5.conf new file mode 100644 index 000000000..0614b4880 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench5.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.15.102:4556" + processId = 5 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench6.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench6.conf new file mode 100644 index 000000000..b486b4aff --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench6.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.0.213:4557" + processId = 6 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench7.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench7.conf new file mode 100644 index 000000000..5b3a103f6 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench7.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.4.95:4558" + processId = 7 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench8.conf b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench8.conf new file mode 100644 index 000000000..d0513f150 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/aws/one-datacenter/bench8.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "172.34.1.6:4559" + processId = 8 + otherReplicas = ["172.34.15.157:4551", "172.34.3.119:4552", "172.34.13.199:4553", "172.34.13.77:4554", "172.34.0.197:4555", "172.34.15.102:4556", "172.34.0.213:4557", "172.34.4.95:4558", "172.34.1.6:4559"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 100 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" # type can be mixed or strong + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench0.conf new file mode 100644 index 000000000..1da7a71f4 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench1.conf new file mode 100644 index 000000000..66ed1b311 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench2.conf new file mode 100644 index 000000000..653d78505 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench3.conf new file mode 100644 index 000000000..cfa50f504 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench4.conf new file mode 100644 index 000000000..b6c32708e --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench5.conf new file mode 100644 index 000000000..f20a2be54 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench6.conf new file mode 100644 index 000000000..b49c832bb --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench7.conf new file mode 100644 index 000000000..3cdbebc40 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench8.conf new file mode 100644 index 000000000..ce31e8039 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/100ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench0.conf new file mode 100644 index 000000000..529f4d192 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench1.conf new file mode 100644 index 000000000..a0ad6a54b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench2.conf new file mode 100644 index 000000000..fb712e5f1 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench3.conf new file mode 100644 index 000000000..896bf5aae --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench4.conf new file mode 100644 index 000000000..b0be9fdb4 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench5.conf new file mode 100644 index 000000000..76cdcc29b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench6.conf new file mode 100644 index 000000000..5bfffde2e --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench7.conf new file mode 100644 index 000000000..535f7740c --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench8.conf new file mode 100644 index 000000000..be92fedfd --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/10ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench0.conf new file mode 100644 index 000000000..bb6679376 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench1.conf new file mode 100644 index 000000000..f2df85325 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench2.conf new file mode 100644 index 000000000..b843103ca --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench3.conf new file mode 100644 index 000000000..6e039444b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench4.conf new file mode 100644 index 000000000..cc5917c05 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench5.conf new file mode 100644 index 000000000..7d45e4c2f --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench6.conf new file mode 100644 index 000000000..33f76ad92 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench7.conf new file mode 100644 index 000000000..c5bb64f78 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench8.conf new file mode 100644 index 000000000..90a780266 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/200ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench0.conf new file mode 100644 index 000000000..d3bfd8696 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench1.conf new file mode 100644 index 000000000..74b3aa724 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench2.conf new file mode 100644 index 000000000..15c415c65 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench3.conf new file mode 100644 index 000000000..dfefd8990 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench4.conf new file mode 100644 index 000000000..a4409da7e --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench5.conf new file mode 100644 index 000000000..eb039922e --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench6.conf new file mode 100644 index 000000000..426211861 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench7.conf new file mode 100644 index 000000000..b2bec1796 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench8.conf new file mode 100644 index 000000000..49d33ca80 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/20ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench0.conf new file mode 100644 index 000000000..3f53d2e89 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench1.conf new file mode 100644 index 000000000..8a61486dd --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench2.conf new file mode 100644 index 000000000..3b44f7a62 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench3.conf new file mode 100644 index 000000000..9effb4372 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench4.conf new file mode 100644 index 000000000..e7a69fad4 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench5.conf new file mode 100644 index 000000000..9834ec56e --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench6.conf new file mode 100644 index 000000000..48cad80c6 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench7.conf new file mode 100644 index 000000000..d900225f6 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench8.conf new file mode 100644 index 000000000..889cc8a7c --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/500ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench0.conf new file mode 100644 index 000000000..76a220d89 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench1.conf new file mode 100644 index 000000000..53c6b08ca --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench2.conf new file mode 100644 index 000000000..66ef49ae0 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench3.conf new file mode 100644 index 000000000..f0c68722d --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench4.conf new file mode 100644 index 000000000..4d467e922 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench5.conf new file mode 100644 index 000000000..7aa853770 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench6.conf new file mode 100644 index 000000000..2495bf271 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench7.conf new file mode 100644 index 000000000..14a562379 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench8.conf new file mode 100644 index 000000000..fa137dff8 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/mixed/50ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/mixed-contention" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench0.conf new file mode 100644 index 000000000..e33890272 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench1.conf new file mode 100644 index 000000000..14a3fd4aa --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench2.conf new file mode 100644 index 000000000..d0614e92a --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench3.conf new file mode 100644 index 000000000..5c7763d76 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench4.conf new file mode 100644 index 000000000..cd8453892 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench5.conf new file mode 100644 index 000000000..73dd94e04 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench6.conf new file mode 100644 index 000000000..23b61921b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench7.conf new file mode 100644 index 000000000..ba63b955f --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench8.conf new file mode 100644 index 000000000..3866c6973 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/100ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 100 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench0.conf new file mode 100644 index 000000000..ded898059 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench1.conf new file mode 100644 index 000000000..5135ebfc3 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench2.conf new file mode 100644 index 000000000..ed51e4da1 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench3.conf new file mode 100644 index 000000000..7f87d9e2e --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench4.conf new file mode 100644 index 000000000..0cb6655ec --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench5.conf new file mode 100644 index 000000000..9225cdf14 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench6.conf new file mode 100644 index 000000000..b1ac2688f --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench7.conf new file mode 100644 index 000000000..5229f50a6 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench8.conf new file mode 100644 index 000000000..b3244dff2 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/10ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 10 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench0.conf new file mode 100644 index 000000000..7218f8b3a --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench1.conf new file mode 100644 index 000000000..2a7d40c1b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench2.conf new file mode 100644 index 000000000..04a6dd434 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench3.conf new file mode 100644 index 000000000..37ee98dee --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench4.conf new file mode 100644 index 000000000..d163cc0f0 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench5.conf new file mode 100644 index 000000000..fd658b914 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench6.conf new file mode 100644 index 000000000..3d1a09dd3 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench7.conf new file mode 100644 index 000000000..842b6b352 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench8.conf new file mode 100644 index 000000000..dff6d99ff --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/200ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 200 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench0.conf new file mode 100644 index 000000000..48c6bf77e --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench1.conf new file mode 100644 index 000000000..24ffd82d5 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench2.conf new file mode 100644 index 000000000..b73cba308 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench3.conf new file mode 100644 index 000000000..420f27df8 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench4.conf new file mode 100644 index 000000000..29cd84cba --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench5.conf new file mode 100644 index 000000000..c596a167b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench6.conf new file mode 100644 index 000000000..8b838109b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench7.conf new file mode 100644 index 000000000..ecd00612b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench8.conf new file mode 100644 index 000000000..386673e56 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/20ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 20 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench0.conf new file mode 100644 index 000000000..999063633 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench1.conf new file mode 100644 index 000000000..043247e2b --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench2.conf new file mode 100644 index 000000000..4c5313677 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench3.conf new file mode 100644 index 000000000..7d6ba45fa --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench4.conf new file mode 100644 index 000000000..9a8b5a67c --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench5.conf new file mode 100644 index 000000000..1c624e020 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench6.conf new file mode 100644 index 000000000..089f069f2 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench7.conf new file mode 100644 index 000000000..9f86d8498 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench8.conf new file mode 100644 index 000000000..984950edb --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/500ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 500 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench0.conf new file mode 100644 index 000000000..8b28726ba --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench1.conf new file mode 100644 index 000000000..e8b5f6ad0 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench2.conf new file mode 100644 index 000000000..b146588a0 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench3.conf new file mode 100644 index 000000000..087fd8196 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench4.conf new file mode 100644 index 000000000..2f8595a7e --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench5.conf new file mode 100644 index 000000000..6455773b4 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench6.conf new file mode 100644 index 000000000..4fe97ad51 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench7.conf new file mode 100644 index 000000000..cb412f754 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench8.conf new file mode 100644 index 000000000..6f422c596 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/contention/strong/50ms/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 1000 + waitPerOperation = 50 ms + + outputFile = "./bench-results/strong-contention" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench0.conf new file mode 100644 index 000000000..33bd15021 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench1.conf new file mode 100644 index 000000000..a84142b14 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench2.conf new file mode 100644 index 000000000..96c554d24 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench3.conf new file mode 100644 index 000000000..3028bf566 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench4.conf new file mode 100644 index 000000000..633c90c93 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench5.conf new file mode 100644 index 000000000..d227347b4 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench6.conf new file mode 100644 index 000000000..ef5ba885c --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench7.conf new file mode 100644 index 000000000..8f2180e0d --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/mixed/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/mixed/bench8.conf new file mode 100644 index 000000000..4889ffc2f --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/mixed/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/mixed" + + demo { + type = "mixed" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench0.conf new file mode 100644 index 000000000..f8a74e95c --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench1.conf new file mode 100644 index 000000000..be2370ff5 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench2.conf new file mode 100644 index 000000000..c01a57cb4 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench3.conf new file mode 100644 index 000000000..4f1f92dcf --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench4.conf new file mode 100644 index 000000000..3615d7dfc --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench5.conf new file mode 100644 index 000000000..d65e79822 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench6.conf new file mode 100644 index 000000000..4806e489a --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench7.conf new file mode 100644 index 000000000..1953e62e4 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/strong/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/strong/bench8.conf new file mode 100644 index 000000000..e45ebd49a --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/strong/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/strong" + + demo { + type = "strong" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/test/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/test/bench0.conf new file mode 100644 index 000000000..38ce81463 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/test/bench0.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.2:4333"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/test/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/test/bench1.conf new file mode 100644 index 000000000..bd02f5d29 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/test/bench1.conf @@ -0,0 +1,20 @@ +consys { + + bench { + hostname = "127.0.0.2:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.2:4333"] + + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench0.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench0.conf new file mode 100644 index 000000000..af1384387 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench0.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4332" + processId = 0 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench1.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench1.conf new file mode 100644 index 000000000..d251d6901 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench1.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4333" + processId = 1 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench2.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench2.conf new file mode 100644 index 000000000..545c2d70f --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench2.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4334" + processId = 2 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench3.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench3.conf new file mode 100644 index 000000000..b66c80c7a --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench3.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4335" + processId = 3 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench4.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench4.conf new file mode 100644 index 000000000..fba37cac6 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench4.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4336" + processId = 4 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench5.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench5.conf new file mode 100644 index 000000000..73f8635a8 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench5.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4337" + processId = 5 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench6.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench6.conf new file mode 100644 index 000000000..97b88cfcd --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench6.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4338" + processId = 6 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench7.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench7.conf new file mode 100644 index 000000000..4c9961a49 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench7.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4339" + processId = 7 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/dcrdt-demo/src/main/resources/local/weak/bench8.conf b/demos/dcrdt-demo/src/main/resources/local/weak/bench8.conf new file mode 100644 index 000000000..62781b502 --- /dev/null +++ b/demos/dcrdt-demo/src/main/resources/local/weak/bench8.conf @@ -0,0 +1,19 @@ +consys { + + bench { + hostname = "127.0.0.1:4330" + processId = 8 + otherReplicas = ["127.0.0.1:4332", "127.0.0.1:4333", "127.0.0.1:4334", "127.0.0.1:4335", "127.0.0.1:4336", "127.0.0.1:4337", "127.0.0.1:4338", "127.0.0.1:4339", "127.0.0.1:4330"] + warmupIterations = 5 + measureIterations = 5 + operationsPerIteration = 300 + waitPerOperation = 0 ms + + outputFile = "./bench-results/weak" + + demo { + type = "weak" + } + } + +} \ No newline at end of file diff --git a/demos/pom.xml b/demos/pom.xml index 632d0bc1a..260fa1490 100644 --- a/demos/pom.xml +++ b/demos/pom.xml @@ -20,9 +20,10 @@ counter twitter-clone eshop - + dcrdt-demo + - \ No newline at end of file +