aboutsummaryrefslogtreecommitdiff
path: root/benchmarks/2.12/src/runtime.scala
diff options
context:
space:
mode:
Diffstat (limited to 'benchmarks/2.12/src/runtime.scala')
-rw-r--r--benchmarks/2.12/src/runtime.scala66
1 files changed, 66 insertions, 0 deletions
diff --git a/benchmarks/2.12/src/runtime.scala b/benchmarks/2.12/src/runtime.scala
new file mode 100644
index 0000000..6a94163
--- /dev/null
+++ b/benchmarks/2.12/src/runtime.scala
@@ -0,0 +1,66 @@
+import adt._
+import cats._
+import derived._
+import cats.Show
+import cats.instances.all._
+import estrapade._
+import magnolia._
+
+object Gen extends TestApp {
+
+ val latin = Latin(
+ Letter("one", "two"),
+ Letter("three", "four"),
+ Letter("five", "six"),
+ Letter("seven", "eight"),
+ Letter("nine", "ten"),
+ Letter("eleven", "twelve"),
+ Letter("one", "two"),
+ Letter("three", "four"),
+ Letter("five", "six"),
+ Letter("seven", "eight"),
+ Letter("nine", "ten"),
+ Letter("eleven", "twelve"),
+ Letter("one", "two"),
+ Letter("three", "four"),
+ Letter("five", "six"),
+ Letter("seven", "eight"),
+ Letter("nine", "ten"),
+ Letter("eleven", "twelve"),
+ Letter("one", "two"),
+ Letter("three", "four"),
+ Letter("five", "six"),
+ Letter("seven", "eight")
+ )
+
+ def tests() = {
+ println("Warming up JVM")
+
+ var n = 0
+ var s: Any = null
+ while (n < 5000000) {
+ s = derive.show[Latin] //.show(latin)
+ s = magnolia.examples.Show.generic[Latin] //.show(latin)
+ n += 1
+ }
+
+ println("Warm")
+ test("Kittens") {
+ var n = 0
+ var s: Any = null
+ while (n < 1000000) {
+ s = derive.show[Latin] //.show(latin)
+ n += 1
+ }
+ }.returns()
+
+ test("Magnolia") {
+ var n = 0
+ var s: Any = null
+ while (n < 1000000) {
+ s = magnolia.examples.Show.generic[Latin] //.show(latin)
+ n += 1
+ }
+ }.returns()
+ }
+}