Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • lara/cs206-demos
  • gcharles/cs206-demos
  • gambhir/cs206-demos
3 results
Show changes
Commits on Source (39)
Showing
with 1363 additions and 30 deletions
image: "sbtscala/scala-sbt:graalvm-ce-22.3.0-b2-java17_1.8.3_3.2.2"
variables:
SBT_VERSION: "1.7.1"
SBT_OPTS: "-Dsbt.global.base=sbt-cache/.sbtboot -Dsbt.boot.directory=sbt-cache/.boot -Dsbt.ivy.home=sbt-cache/.ivy"
cache:
key: "$CI_BUILD_REF_NAME" # contains either the branch or the tag, so it's caching per branch
untracked: true
paths:
- "sbt-cache/.ivy.cache"
- "sbt-cache/.boot"
- "sbt-cache/.sbtboot"
- "sbt-cache/target"
stages:
- test
test:
timeout: 10m
tags:
- cs320
script:
- sbt "runMain lecture1.javaThreads; runMain lecture1.scalaThreadWrapper; runMain lecture1.ExampleThread; runMain lecture3.intersectionWrong; runMain lecture3.intersectionCorrect; runMain lecture3.intersectionNoSideEffect; runMain lecture3.parallelGraphContraction; runMain lecture3.parallelGraphContractionCorrect; runMain midterm22.mock1; runMain midterm22.part3; runMain ed.patternMatching; runMain lecture13.askPatternDemo; test; runMain lecture13.becomeDemo; runMain ed.futuresForTranslation; runMain concpar20final03.concpar20final03; scalafmtCheck; Test / scalafmtCheck"
version = "3.5.9"
runner.dialect = scala3
\ No newline at end of file
version = "3.6.1"
runner.dialect = scala3
newlines.source = keep
rewrite.scala3.convertToNewSyntax = true
rewrite.scala3.removeOptionalBraces = true
# Scala 3 SBT Project
# Demo code for the course CS-206: Parallelism and concurrency
This contains the basic sbt configuration needed to run Scala 3 code.
Everybody is welcome to contribute by creating merge requests!
## Installation
......@@ -10,15 +10,16 @@ This contains the basic sbt configuration needed to run Scala 3 code.
1. Click on "Import SBT Build":
<img src="https://gitlab.epfl.ch/lamp/cs210/uploads/b1926bf55d4d4ce136859afaaad1c7f2/Screenshot_2021-09-30_at_13.22.36.png" width="500px" />
1. Wait while Metals runs `bloopInstal`:
<img src="https://gitlab.epfl.ch/lamp/cs210/uploads/58d513dee61f3584f3e5cf8b10d3510c/Screenshot_2021-09-30_at_13.24.37.png" width="500px" />
<img src="https://gitlab.epfl.ch/lamp/cs210/uploads/58d513dee61f3584f3e5cf8b10d3510c/Screenshot_2021-09-30_at_13.24.37.png" width="400px" />
## Usage
### Normal Scala files
### Standard Scala files
“Normal” Scala files (ending with `.scala`) must have a `@main` method. For example, [`01-java-threads.scala`](src/main/scala/lecture1/01-java-threads.scala), the main method is `testThreads`. You can run it from the command-line, first by entering the sbt shell:
“Normal” Scala files (ending with `.scala`) must have a `@main` method. For example, [`01-java-threads.scala`](src/main/scala/lecture1/01-javaThreads.scala), the main method is `testThreads`. You can run it from the command-line, first by entering the sbt shell:
```bash
sbt
......@@ -26,15 +27,15 @@ sbt
and then by running:
```bash
runMain testThreads
runMain javaThreads
```
where `testThreads` is the name of the `@main` function. This should output something similar to:
where `javaThreads` is the name of a `@main` function. This should output something similar to:
```
sbt:cs206-demos> run testThreads
[info] compiling 1 Scala source to /Users/mbovel/cs206-demos/target/scala-3.2.0/classes ...
[info] running testThreads testThreads
sbt:cs206-demos> run javaThreads
[info] compiling 1 Scala source to /Users/me/cs206-demos/target/scala-3.2.0/classes ...
[info] running javaThreads javaThreads
Little threads did not start yet!
ThreadThread-3 has counter 0
ThreadThread-2 has counter 0
......@@ -52,8 +53,16 @@ You can also directly run it from VSCode using the `run` link:
Inside `src/main/scala`, you can create Scala _worksheets_ (files ending with `.worksheet.sc`). These are special Scala files meant for experimentation where the result of every top-level expression is directly displayed in the IDE. See [the official tutorial about Scala worksheets](https://docs.scala-lang.org/scala3/book/tools-worksheets.html) for more details.
We provide [`sumList.worksheet.sc`](src/main/scala/sumList.worksheet.sc) as an example. If you open it in VSCode, you should see the result of all top-level expressions automatically displayed:
You can try [`01-sumList.worksheet.sc`](src/main/scala/ex01/01-sumList.worksheet.sc) as an example. If you open it in VSCode, you should see the result of all top-level expressions automatically displayed:
![Example of a worksheet opened in VSCode](images/worksheet_screenshot.png)
![Example of a worksheet opened in VSCode](images/worksheet_screenshot.jpg)
Try to change the code and you should see the results automatically updating!
### Format code
This project uses [scalafmt](https://scalameta.org/scalafmt/) to format code.
You can run the formatter using `sbt scalafmt`.
The code style is configured in [.scalafmt.conf](.scalafmt.conf).
......@@ -5,7 +5,7 @@ import pandas as pd
import plotly.express as px
from typing import Union, Literal
image_height = 500
image_height = 800
def load_data(bench_suite):
......@@ -21,11 +21,12 @@ def load_data(bench_suite):
yield (jvm, benchmark, int(run), int(fork), time)
Scale = Union[Literal["lin"], Literal["log"]]
Mode = Union[Literal["bar"], Literal["strip"], Literal["box"]]
Orientation = Union[Literal["h"], Literal["v"]]
def make_bars_graph(bench_suite, mode: Mode, orientation: Orientation):
def make_bars_graph(bench_suite, max, mode: Mode, orientation: Orientation, scale: Scale):
df = pd.DataFrame(
load_data(bench_suite),
columns=("jvm", "benchmark", "run", "fork", "time")
......@@ -36,9 +37,11 @@ def make_bars_graph(bench_suite, mode: Mode, orientation: Orientation):
df = df.agg([("median", np.median), ("min", np.min), ("max", np.max)])
df = df.reset_index()
df.columns = [' '.join(col).strip() for col in df.columns.values]
df["time error"] = df["time median"] - df["time min"]
df["time error minus"] = df["time max"] - df["time median"]
df = df.sort_values(by=["benchmark"], ascending=False)
df["time error minus"] = df["time median"] - df["time min"]
df["time error"] = df["time max"] - df["time median"]
reverse_order = orientation == "v"
df = df.sort_values(by=["jvm"], ascending=not reverse_order)
df = df.sort_values(by=["benchmark"], ascending=reverse_order)
args = {
"x" if orientation == "h" else "y": "time median" if mode == "bar" else "time",
......@@ -48,35 +51,44 @@ def make_bars_graph(bench_suite, mode: Mode, orientation: Orientation):
"color_discrete_sequence": px.colors.qualitative.Pastel1,
"template": "plotly_white"
}
if scale == "log":
args["log_x" if orientation == "h" else "log_y"] = True
elif scale == "lin":
args["range_x" if orientation == "h" else "range_y"] = [0, max]
if mode == "bar":
args |= {
"barmode": "group",
"error_x" if orientation == "h" else "error_y": "time error",
"error_x_minus" if orientation == "h" else "error_y_minus": "time error minus"
}
elif mode == "box":
args |= {
"points": "all"
}
fig = getattr(px, mode)(df, **args)
log_note = "" if scale == "lin" else " Note the logarithmic scale."
layout_args = {
"title": bench_suite,
"xaxis_title" if orientation == "h" else "yaxis_title": "Throughput [ops/s] (higher is better)",
"yaxis_title" if orientation == "h" else "xaxis_title": "Benchmark"
"xaxis_title" if orientation == "h" else "yaxis_title": f"Throughput [ops/s] (Higher is better.{log_note})",
"yaxis_title" if orientation == "h" else "xaxis_title": "Benchmark",
"legend_traceorder": "reversed"
}
fig.update_layout(**layout_args)
fig.write_html(
f"benchmarks/graphs/{bench_suite}-{mode}-{orientation}.html",
f"benchmarks/graphs/{bench_suite}-{mode}-{orientation}-{scale}.html",
include_plotlyjs='cdn'
)
fig.write_image(
f"benchmarks/graphs/{bench_suite}-{mode}-{orientation}.svg",
f"benchmarks/graphs/{bench_suite}-{mode}-{orientation}-{scale}.svg",
height=image_height,
width=image_height * 2
width=image_height * 1.5
)
make_bars_graph("SumBenchmark", "bar", "h")
make_bars_graph("AppendBenchmark", 450000000, "bar", "h", "log")
make_bars_graph("AppendBenchmark", 450000000, "box", "h", "log")
make_bars_graph("AppendBenchmark", 450000000, "strip", "h", "log")
make_bars_graph("SumBenchmark", 450000, "bar", "h", "lin")
make_bars_graph("SumBenchmark", 450000, "box", "h", "lin")
make_bars_graph("SumBenchmark", 450000, "strip", "h", "lin")
<html>
<head><meta charset="utf-8" /></head>
<body>
<div> <script type="text/javascript">window.PlotlyConfig = {MathJaxConfig: 'local'};</script>
<script src="https://cdn.plot.ly/plotly-2.18.2.min.js"></script> <div id="dace9529-4385-4e40-a958-854be6ac95fa" class="plotly-graph-div" style="height:100%; width:100%;"></div> <script type="text/javascript"> window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById("dace9529-4385-4e40-a958-854be6ac95fa")) { Plotly.newPlot( "dace9529-4385-4e40-a958-854be6ac95fa", [{"alignmentgroup":"True","error_x":{"array":[2939.051249118984,4715.917205995123,16617829.672490478,7733.513204703981],"arrayminus":[1125.8984430785313,41482.60438938602,90325576.30731237,65944.82255033636]},"hovertemplate":"jvm=graal<br>time median=%{x}<br>benchmark=%{y}<extra></extra>","legendgroup":"graal","marker":{"color":"rgb(251,180,174)","pattern":{"shape":""}},"name":"graal","offsetgroup":"graal","orientation":"h","showlegend":true,"textposition":"auto","x":[30689.59632927668,370705.6558278879,446634465.8196367,365319.5892913927],"xaxis":"x","y":["bench01_append(List)","bench01_append(Array)","bench00_prepend(List)","bench00_prepend(Array)"],"yaxis":"y","type":"bar"},{"alignmentgroup":"True","error_x":{"array":[914.5229850404794,7120.418617346964,8348596.066673219,5473.878049817227],"arrayminus":[1383.1998744011798,254058.2067041577,13765735.59649527,8010.2016072492115]},"hovertemplate":"jvm=openjdk<br>time median=%{x}<br>benchmark=%{y}<extra></extra>","legendgroup":"openjdk","marker":{"color":"rgb(179,205,227)","pattern":{"shape":""}},"name":"openjdk","offsetgroup":"openjdk","orientation":"h","showlegend":true,"textposition":"auto","x":[17579.671205612314,327825.0192945828,486327959.14928126,273320.7444518624],"xaxis":"x","y":["bench01_append(List)","bench01_append(Array)","bench00_prepend(List)","bench00_prepend(Array)"],"yaxis":"y","type":"bar"}], {"template":{"data":{"barpolar":[{"marker":{"line":{"color":"white","width":0.5},"pattern":{"fillmode":"overlay","size":10,"solidity":0.2}},"type":"barpolar"}],"bar":[{"error_x":{"color":"#2a3f5f"},"error_y":{"color":"#2a3f5f"},"marker":{"line":{"color":"white","width":0.5},"pattern":{"fillmode":"overlay","size":10,"solidity":0.2}},"type":"bar"}],"carpet":[{"aaxis":{"endlinecolor":"#2a3f5f","gridcolor":"#C8D4E3","linecolor":"#C8D4E3","minorgridcolor":"#C8D4E3","startlinecolor":"#2a3f5f"},"baxis":{"endlinecolor":"#2a3f5f","gridcolor":"#C8D4E3","linecolor":"#C8D4E3","minorgridcolor":"#C8D4E3","startlinecolor":"#2a3f5f"},"type":"carpet"}],"choropleth":[{"colorbar":{"outlinewidth":0,"ticks":""},"type":"choropleth"}],"contourcarpet":[{"colorbar":{"outlinewidth":0,"ticks":""},"type":"contourcarpet"}],"contour":[{"colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"type":"contour"}],"heatmapgl":[{"colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"type":"heatmapgl"}],"heatmap":[{"colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"type":"heatmap"}],"histogram2dcontour":[{"colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"type":"histogram2dcontour"}],"histogram2d":[{"colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"type":"histogram2d"}],"histogram":[{"marker":{"pattern":{"fillmode":"overlay","size":10,"solidity":0.2}},"type":"histogram"}],"mesh3d":[{"colorbar":{"outlinewidth":0,"ticks":""},"type":"mesh3d"}],"parcoords":[{"line":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"parcoords"}],"pie":[{"automargin":true,"type":"pie"}],"scatter3d":[{"line":{"colorbar":{"outlinewidth":0,"ticks":""}},"marker":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"scatter3d"}],"scattercarpet":[{"marker":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"scattercarpet"}],"scattergeo":[{"marker":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"scattergeo"}],"scattergl":[{"marker":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"scattergl"}],"scattermapbox":[{"marker":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"scattermapbox"}],"scatterpolargl":[{"marker":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"scatterpolargl"}],"scatterpolar":[{"marker":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"scatterpolar"}],"scatter":[{"fillpattern":{"fillmode":"overlay","size":10,"solidity":0.2},"type":"scatter"}],"scatterternary":[{"marker":{"colorbar":{"outlinewidth":0,"ticks":""}},"type":"scatterternary"}],"surface":[{"colorbar":{"outlinewidth":0,"ticks":""},"colorscale":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"type":"surface"}],"table":[{"cells":{"fill":{"color":"#EBF0F8"},"line":{"color":"white"}},"header":{"fill":{"color":"#C8D4E3"},"line":{"color":"white"}},"type":"table"}]},"layout":{"annotationdefaults":{"arrowcolor":"#2a3f5f","arrowhead":0,"arrowwidth":1},"autotypenumbers":"strict","coloraxis":{"colorbar":{"outlinewidth":0,"ticks":""}},"colorscale":{"diverging":[[0,"#8e0152"],[0.1,"#c51b7d"],[0.2,"#de77ae"],[0.3,"#f1b6da"],[0.4,"#fde0ef"],[0.5,"#f7f7f7"],[0.6,"#e6f5d0"],[0.7,"#b8e186"],[0.8,"#7fbc41"],[0.9,"#4d9221"],[1,"#276419"]],"sequential":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]],"sequentialminus":[[0.0,"#0d0887"],[0.1111111111111111,"#46039f"],[0.2222222222222222,"#7201a8"],[0.3333333333333333,"#9c179e"],[0.4444444444444444,"#bd3786"],[0.5555555555555556,"#d8576b"],[0.6666666666666666,"#ed7953"],[0.7777777777777778,"#fb9f3a"],[0.8888888888888888,"#fdca26"],[1.0,"#f0f921"]]},"colorway":["#636efa","#EF553B","#00cc96","#ab63fa","#FFA15A","#19d3f3","#FF6692","#B6E880","#FF97FF","#FECB52"],"font":{"color":"#2a3f5f"},"geo":{"bgcolor":"white","lakecolor":"white","landcolor":"white","showlakes":true,"showland":true,"subunitcolor":"#C8D4E3"},"hoverlabel":{"align":"left"},"hovermode":"closest","mapbox":{"style":"light"},"paper_bgcolor":"white","plot_bgcolor":"white","polar":{"angularaxis":{"gridcolor":"#EBF0F8","linecolor":"#EBF0F8","ticks":""},"bgcolor":"white","radialaxis":{"gridcolor":"#EBF0F8","linecolor":"#EBF0F8","ticks":""}},"scene":{"xaxis":{"backgroundcolor":"white","gridcolor":"#DFE8F3","gridwidth":2,"linecolor":"#EBF0F8","showbackground":true,"ticks":"","zerolinecolor":"#EBF0F8"},"yaxis":{"backgroundcolor":"white","gridcolor":"#DFE8F3","gridwidth":2,"linecolor":"#EBF0F8","showbackground":true,"ticks":"","zerolinecolor":"#EBF0F8"},"zaxis":{"backgroundcolor":"white","gridcolor":"#DFE8F3","gridwidth":2,"linecolor":"#EBF0F8","showbackground":true,"ticks":"","zerolinecolor":"#EBF0F8"}},"shapedefaults":{"line":{"color":"#2a3f5f"}},"ternary":{"aaxis":{"gridcolor":"#DFE8F3","linecolor":"#A2B1C6","ticks":""},"baxis":{"gridcolor":"#DFE8F3","linecolor":"#A2B1C6","ticks":""},"bgcolor":"white","caxis":{"gridcolor":"#DFE8F3","linecolor":"#A2B1C6","ticks":""}},"title":{"x":0.05},"xaxis":{"automargin":true,"gridcolor":"#EBF0F8","linecolor":"#EBF0F8","ticks":"","title":{"standoff":15},"zerolinecolor":"#EBF0F8","zerolinewidth":2},"yaxis":{"automargin":true,"gridcolor":"#EBF0F8","linecolor":"#EBF0F8","ticks":"","title":{"standoff":15},"zerolinecolor":"#EBF0F8","zerolinewidth":2}}},"xaxis":{"anchor":"y","domain":[0.0,1.0],"title":{"text":"Throughput [ops/s] (Higher is better. Note the logarithmic scale.)"},"type":"log"},"yaxis":{"anchor":"x","domain":[0.0,1.0],"title":{"text":"Benchmark"}},"legend":{"title":{"text":"jvm"},"tracegroupgap":0,"traceorder":"reversed"},"margin":{"t":60},"barmode":"group","title":{"text":"AppendBenchmark"}}, {"responsive": true} ) }; </script> </div>
</body>
</html>
\ No newline at end of file
<svg class="main-svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1200" height="800" style="" viewBox="0 0 1200 800"><rect x="0" y="0" width="1200" height="800" style="fill: rgb(255, 255, 255); fill-opacity: 1;"/><defs id="defs-463da3"><g class="clips"><clipPath id="clip463da3xyplot" class="plotclip"><rect width="886" height="660"/></clipPath><clipPath class="axesclip" id="clip463da3x"><rect x="190" y="0" width="886" height="800"/></clipPath><clipPath class="axesclip" id="clip463da3y"><rect x="0" y="60" width="1200" height="660"/></clipPath><clipPath class="axesclip" id="clip463da3xy"><rect x="190" y="60" width="886" height="660"/></clipPath></g><g class="gradients"/><g class="patterns"/></defs><g class="bglayer"/><g class="layer-below"><g class="imagelayer"/><g class="shapelayer"/></g><g class="cartesianlayer"><g class="subplot xy"><g class="layer-subplot"><g class="shapelayer"/><g class="imagelayer"/></g><g class="minor-gridlayer"><g class="x"/><g class="y"/></g><g class="gridlayer"><g class="x"><path class="xgrid crisp" transform="translate(197.07,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(250.59,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(321.34000000000003,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(374.86,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(428.38,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(499.14,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(552.6600000000001,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(606.1800000000001,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(676.9300000000001,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(730.46,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(783.98,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(854.73,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(908.25,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(961.77,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(1032.53,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/></g><g class="y"/></g><g class="zerolinelayer"/><path class="xlines-below"/><path class="ylines-below"/><g class="overlines-below"/><g class="xaxislayer-below"/><g class="yaxislayer-below"/><g class="overaxes-below"/><g class="plot" transform="translate(190,60)" clip-path="url(#clip463da3xyplot)"><g class="barlayer mlayer"><g class="trace bars" style="opacity: 1;"><g class="points"><g class="point"><path d="M-8417,643.5V577.5H93.65V643.5Z" style="vector-effect: none; opacity: 1; stroke-width: 0.5px; fill: rgb(251, 180, 174); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g><g class="point"><path d="M-8417,478.5V412.5H286.03V478.5Z" style="vector-effect: none; opacity: 1; stroke-width: 0.5px; fill: rgb(251, 180, 174); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g><g class="point"><path d="M-8417,313.5V247.5H833.81V313.5Z" style="vector-effect: none; opacity: 1; stroke-width: 0.5px; fill: rgb(251, 180, 174); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g><g class="point"><path d="M-8417,148.5V82.5H284.9V148.5Z" style="vector-effect: none; opacity: 1; stroke-width: 0.5px; fill: rgb(251, 180, 174); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g></g><g class="errorbar" style="opacity: 1;"><path class="xerror" d="M100.71,606.5v8m0,-4H90.77m0,-4v8" style="vector-effect: none; stroke-width: 2px; stroke: rgb(42, 63, 95); stroke-opacity: 1;"/></g><g class="errorbar" style="opacity: 1;"><path class="xerror" d="M287.01,441.5v8m0,-4H276.87m0,-4v8" style="vector-effect: none; stroke-width: 2px; stroke: rgb(42, 63, 95); stroke-opacity: 1;"/></g><g class="errorbar" style="opacity: 1;"><path class="xerror" d="M836.63,276.5v8m0,-4H816.36m0,-4v8" style="vector-effect: none; stroke-width: 2px; stroke: rgb(42, 63, 95); stroke-opacity: 1;"/></g><g class="errorbar" style="opacity: 1;"><path class="xerror" d="M286.52,111.5v8m0,-4H269.53m0,-4v8" style="vector-effect: none; stroke-width: 2px; stroke: rgb(42, 63, 95); stroke-opacity: 1;"/></g></g><g class="trace bars" style="opacity: 1;"><g class="points"><g class="point"><path d="M-8417,577.5V511.5H50.63V577.5Z" style="vector-effect: none; opacity: 1; stroke-width: 0.5px; fill: rgb(179, 205, 227); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g><g class="point"><path d="M-8417,412.5V346.5H276.54V412.5Z" style="vector-effect: none; opacity: 1; stroke-width: 0.5px; fill: rgb(179, 205, 227); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g><g class="point"><path d="M-8417,247.5V181.5H840.39V247.5Z" style="vector-effect: none; opacity: 1; stroke-width: 0.5px; fill: rgb(179, 205, 227); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g><g class="point"><path d="M-8417,82.5V16.5H262.5V82.5Z" style="vector-effect: none; opacity: 1; stroke-width: 0.5px; fill: rgb(179, 205, 227); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g></g><g class="errorbar" style="opacity: 1;"><path class="xerror" d="M54.54,540.5v8m0,-4H44.3m0,-4v8" style="vector-effect: none; stroke-width: 2px; stroke: rgb(42, 63, 95); stroke-opacity: 1;"/></g><g class="errorbar" style="opacity: 1;"><path class="xerror" d="M278.2,375.5v8m0,-4H161.37m0,-4v8" style="vector-effect: none; stroke-width: 2px; stroke: rgb(42, 63, 95); stroke-opacity: 1;"/></g><g class="errorbar" style="opacity: 1;"><path class="xerror" d="M841.7,210.5v8m0,-4H838.17m0,-4v8" style="vector-effect: none; stroke-width: 2px; stroke: rgb(42, 63, 95); stroke-opacity: 1;"/></g><g class="errorbar" style="opacity: 1;"><path class="xerror" d="M264.03,45.5v8m0,-4H260.2m0,-4v8" style="vector-effect: none; stroke-width: 2px; stroke: rgb(42, 63, 95); stroke-opacity: 1;"/></g></g></g></g><g class="overplot"/><path class="xlines-above crisp" style="fill: none;" d="M0,0"/><path class="ylines-above crisp" style="fill: none;" d="M0,0"/><g class="overlines-above"/><g class="xaxislayer-above"><g class="xtick"><text text-anchor="middle" x="0" y="733" transform="translate(197.07,0)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">10k</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(250.59,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(321.34000000000003,0)">5</text></g><g class="xtick"><text text-anchor="middle" x="0" y="733" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(374.86,0)">100k</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(428.38,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(499.14,0)">5</text></g><g class="xtick"><text text-anchor="middle" x="0" y="733" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(552.6600000000001,0)">1M</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(606.1800000000001,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(676.9300000000001,0)">5</text></g><g class="xtick"><text text-anchor="middle" x="0" y="733" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(730.46,0)">10M</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(783.98,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(854.73,0)">5</text></g><g class="xtick"><text text-anchor="middle" x="0" y="733" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(908.25,0)">100M</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(961.77,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(1032.53,0)">5</text></g></g><g class="yaxislayer-above"><g class="ytick"><text text-anchor="end" x="189" y="4.199999999999999" transform="translate(0,637.5)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">bench01_append(List)</text></g><g class="ytick"><text text-anchor="end" x="189" y="4.199999999999999" transform="translate(0,472.5)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">bench01_append(Array)</text></g><g class="ytick"><text text-anchor="end" x="189" y="4.199999999999999" transform="translate(0,307.5)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">bench00_prepend(List)</text></g><g class="ytick"><text text-anchor="end" x="189" y="4.199999999999999" transform="translate(0,142.5)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">bench00_prepend(Array)</text></g></g><g class="overaxes-above"/></g></g><g class="polarlayer"/><g class="smithlayer"/><g class="ternarylayer"/><g class="geolayer"/><g class="funnelarealayer"/><g class="pielayer"/><g class="iciclelayer"/><g class="treemaplayer"/><g class="sunburstlayer"/><g class="glimages"/><defs id="topdefs-463da3"><g class="clips"/><clipPath id="legend463da3"><rect width="94" height="67" x="0" y="0"/></clipPath></defs><g class="layer-above"><g class="imagelayer"/><g class="shapelayer"/></g><g class="infolayer"><g class="legend" pointer-events="all" transform="translate(1093.72,60)"><rect class="bg" shape-rendering="crispEdges" style="stroke: rgb(68, 68, 68); stroke-opacity: 1; fill: rgb(255, 255, 255); fill-opacity: 1; stroke-width: 0px;" width="94" height="67" x="0" y="0"/><g class="scrollbox" transform="" clip-path="url(#legend463da3)"><text class="legendtitletext" text-anchor="start" x="2" y="18.2" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 14px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre;">jvm</text><g class="groups"><g class="traces" transform="translate(0,32.7)" style="opacity: 1;"><text class="legendtext" text-anchor="start" x="40" y="4.680000000000001" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre;">openjdk</text><g class="layers" style="opacity: 1;"><g class="legendfill"/><g class="legendlines"/><g class="legendsymbols"><g class="legendpoints"><path class="legendundefined" d="M6,6H-6V-6H6Z" transform="translate(20,0)" style="stroke-width: 0.5px; fill: rgb(179, 205, 227); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g></g></g><rect class="legendtoggle" x="0" y="-9.5" width="88.21875" height="19" style="fill: rgb(0, 0, 0); fill-opacity: 0;"/></g><g class="traces" transform="translate(0,51.7)" style="opacity: 1;"><text class="legendtext" text-anchor="start" x="40" y="4.680000000000001" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre;">graal</text><g class="layers" style="opacity: 1;"><g class="legendfill"/><g class="legendlines"/><g class="legendsymbols"><g class="legendpoints"><path class="legendundefined" d="M6,6H-6V-6H6Z" transform="translate(20,0)" style="stroke-width: 0.5px; fill: rgb(251, 180, 174); fill-opacity: 1; stroke: rgb(255, 255, 255); stroke-opacity: 1;"/></g></g></g><rect class="legendtoggle" x="0" y="-9.5" width="88.21875" height="19" style="fill: rgb(0, 0, 0); fill-opacity: 0;"/></g></g></g><rect class="scrollbar" rx="20" ry="3" width="0" height="0" style="fill: rgb(128, 139, 164); fill-opacity: 1;" x="0" y="0"/></g><g class="g-gtitle"><text class="gtitle" x="60" y="30" text-anchor="start" dy="0em" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 17px; fill: rgb(42, 63, 95); opacity: 1; font-weight: normal; white-space: pre;">AppendBenchmark</text></g><g class="g-xtitle"><text class="xtitle" x="633" y="759.8" text-anchor="middle" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 14px; fill: rgb(42, 63, 95); opacity: 1; font-weight: normal; white-space: pre;">Throughput [ops/s] (Higher is better. Note the logarithmic scale.)</text></g><g class="g-ytitle" transform="translate(1.3466796875,0)"><text class="ytitle" transform="rotate(-90,12.653124999999989,390)" x="12.653124999999989" y="390" text-anchor="middle" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 14px; fill: rgb(42, 63, 95); opacity: 1; font-weight: normal; white-space: pre;">Benchmark</text></g></g></svg>
\ No newline at end of file
This diff is collapsed.
<svg class="main-svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1200" height="800" style="" viewBox="0 0 1200 800"><rect x="0" y="0" width="1200" height="800" style="fill: rgb(255, 255, 255); fill-opacity: 1;"/><defs id="defs-18a11a"><g class="clips"><clipPath id="clip18a11axyplot" class="plotclip"><rect width="886" height="660"/></clipPath><clipPath class="axesclip" id="clip18a11ax"><rect x="190" y="0" width="886" height="800"/></clipPath><clipPath class="axesclip" id="clip18a11ay"><rect x="0" y="60" width="1200" height="660"/></clipPath><clipPath class="axesclip" id="clip18a11axy"><rect x="190" y="60" width="886" height="660"/></clipPath></g><g class="gradients"/><g class="patterns"/></defs><g class="bglayer"/><g class="layer-below"><g class="imagelayer"/><g class="shapelayer"/></g><g class="cartesianlayer"><g class="subplot xy"><g class="layer-subplot"><g class="shapelayer"/><g class="imagelayer"/></g><g class="minor-gridlayer"><g class="x"/><g class="y"/></g><g class="gridlayer"><g class="x"><path class="xgrid crisp" transform="translate(197.07,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(250.59,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(321.34000000000003,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(374.86,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(428.38,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(499.14,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(552.6600000000001,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(606.1800000000001,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(676.9300000000001,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(730.46,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(783.98,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(854.73,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(908.25,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(961.77,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/><path class="xgrid crisp" transform="translate(1032.53,0)" d="M0,60v660" style="stroke: rgb(235, 240, 248); stroke-opacity: 1; stroke-width: 1px;"/></g><g class="y"/></g><g class="zerolinelayer"/><path class="xlines-below"/><path class="ylines-below"/><g class="overlines-below"/><g class="xaxislayer-below"/><g class="yaxislayer-below"/><g class="overaxes-below"/><g class="plot" transform="translate(190,60)" clip-path="url(#clip18a11axyplot)"><g class="boxlayer mlayer"><g class="trace boxes" style="opacity: 1;"><path class="box" d="M93.65,623.89V583.83M92.6,623.89V583.83H95.26V623.89ZM92.6,603.86H90.77M95.26,603.86H97.71M90.77,613.88V593.85M97.71,613.88V593.85" style="vector-effect: none; stroke-width: 2px; stroke: rgb(251, 180, 174); stroke-opacity: 1; fill: rgb(251, 180, 174); fill-opacity: 0.5;"/><path class="box" d="M285.83,460.39V420.33M284.83,460.39V420.33H286.42V460.39ZM284.83,440.36H283M286.42,440.36H287.01M283,450.38V430.35M287.01,450.38V430.35" style="vector-effect: none; stroke-width: 2px; stroke: rgb(251, 180, 174); stroke-opacity: 1; fill: rgb(251, 180, 174); fill-opacity: 0.5;"/><path class="box" d="M833.81,296.89V256.83M829.98,296.89V256.83H835.72V296.89ZM829.98,276.86H825.25M835.72,276.86H836.63M825.25,286.88V266.85M836.63,286.88V266.85" style="vector-effect: none; stroke-width: 2px; stroke: rgb(251, 180, 174); stroke-opacity: 1; fill: rgb(251, 180, 174); fill-opacity: 0.5;"/><path class="box" d="M284.9,133.39V93.33M284.2,133.39V93.33H285.8V133.39ZM284.2,113.36H283.42M285.8,113.36H286.52M283.42,123.38V103.35M286.52,123.38V103.35" style="vector-effect: none; stroke-width: 2px; stroke: rgb(251, 180, 174); stroke-opacity: 1; fill: rgb(251, 180, 174); fill-opacity: 0.5;"/><g class="points"><path class="point" transform="translate(99.1,603.86)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(100.38,603.86)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(100.59,603.86)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(100.71,603.86)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/></g><g class="points"><path class="point" transform="translate(276.87,440.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(278.75,440.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(279.4,440.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/></g><g class="points"><path class="point" transform="translate(816.36,276.86)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(818.91,276.86)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/></g><g class="points"><path class="point" transform="translate(269.53,113.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(269.9,113.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(271.02,113.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(272.45,113.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(273.07,113.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/><path class="point" transform="translate(276.6,113.36)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(251, 180, 174); fill-opacity: 1;"/></g></g><g class="trace boxes" style="opacity: 1;"><path class="box" d="M50.63,566.67V526.61M48.5,566.67V526.61H52.33V566.67ZM48.5,546.64H44.3M52.33,546.64H54.54M44.3,556.65V536.62M54.54,556.65V536.62" style="vector-effect: none; stroke-width: 2px; stroke: rgb(179, 205, 227); stroke-opacity: 1; fill: rgb(179, 205, 227); fill-opacity: 0.5;"/><path class="box" d="M276.54,403.17V363.11M267.24,403.17V363.11H277.56V403.17ZM267.24,383.14H257.93M277.56,383.14H278.2M257.93,393.15V373.12M278.2,393.15V373.12" style="vector-effect: none; stroke-width: 2px; stroke: rgb(179, 205, 227); stroke-opacity: 1; fill: rgb(179, 205, 227); fill-opacity: 0.5;"/><path class="box" d="M840.39,239.67V199.61M839.98,239.67V199.61H841.14V239.67ZM839.98,219.64H838.31M841.14,219.64H841.7M838.31,229.65V209.62M841.7,229.65V209.62" style="vector-effect: none; stroke-width: 2px; stroke: rgb(179, 205, 227); stroke-opacity: 1; fill: rgb(179, 205, 227); fill-opacity: 0.5;"/><path class="box" d="M262.5,76.17V36.11M262.3,76.17V36.11H262.91V76.17ZM262.3,56.14H261.49M262.91,56.14H263.69M261.49,66.15V46.12M263.69,66.15V46.12" style="vector-effect: none; stroke-width: 2px; stroke: rgb(179, 205, 227); stroke-opacity: 1; fill: rgb(179, 205, 227); fill-opacity: 0.5;"/><g class="points"/><g class="points"><path class="point" transform="translate(161.37,383.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(161.43,383.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(193.22,383.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(194.46,383.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(205.84,383.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(224.3,383.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(247.5,383.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/></g><g class="points"><path class="point" transform="translate(838.17,219.64)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/></g><g class="points"><path class="point" transform="translate(260.2,56.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(261.28,56.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(261.36,56.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/><path class="point" transform="translate(264.03,56.14)" d="M3,0A3,3 0 1,1 0,-3A3,3 0 0,1 3,0Z" style="opacity: 1; stroke-width: 0px; fill: rgb(179, 205, 227); fill-opacity: 1;"/></g></g></g></g><g class="overplot"/><path class="xlines-above crisp" d="M0,0" style="fill: none;"/><path class="ylines-above crisp" d="M0,0" style="fill: none;"/><g class="overlines-above"/><g class="xaxislayer-above"><g class="xtick"><text text-anchor="middle" x="0" y="733" transform="translate(197.07,0)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">10k</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(250.59,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(321.34000000000003,0)">5</text></g><g class="xtick"><text text-anchor="middle" x="0" y="733" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(374.86,0)">100k</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(428.38,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(499.14,0)">5</text></g><g class="xtick"><text text-anchor="middle" x="0" y="733" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(552.6600000000001,0)">1M</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(606.1800000000001,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(676.9300000000001,0)">5</text></g><g class="xtick"><text text-anchor="middle" x="0" y="733" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(730.46,0)">10M</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(783.98,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(854.73,0)">5</text></g><g class="xtick"><text text-anchor="middle" x="0" y="733" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(908.25,0)">100M</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(961.77,0)">2</text></g><g class="xtick"><text text-anchor="middle" x="0" y="730" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 9px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;" transform="translate(1032.53,0)">5</text></g></g><g class="yaxislayer-above"><g class="ytick"><text text-anchor="end" x="189" y="4.199999999999999" transform="translate(0,635.25)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">bench01_append(List)</text></g><g class="ytick"><text text-anchor="end" x="189" y="4.199999999999999" transform="translate(0,471.75)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">bench01_append(Array)</text></g><g class="ytick"><text text-anchor="end" x="189" y="4.199999999999999" transform="translate(0,308.25)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">bench00_prepend(List)</text></g><g class="ytick"><text text-anchor="end" x="189" y="4.199999999999999" transform="translate(0,144.75)" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre; opacity: 1;">bench00_prepend(Array)</text></g></g><g class="overaxes-above"/></g></g><g class="polarlayer"/><g class="smithlayer"/><g class="ternarylayer"/><g class="geolayer"/><g class="funnelarealayer"/><g class="pielayer"/><g class="iciclelayer"/><g class="treemaplayer"/><g class="sunburstlayer"/><g class="glimages"/><defs id="topdefs-18a11a"><g class="clips"/><clipPath id="legend18a11a"><rect width="94" height="67" x="0" y="0"/></clipPath></defs><g class="layer-above"><g class="imagelayer"/><g class="shapelayer"/></g><g class="infolayer"><g class="legend" pointer-events="all" transform="translate(1093.72,60)"><rect class="bg" shape-rendering="crispEdges" width="94" height="67" x="0" y="0" style="stroke: rgb(68, 68, 68); stroke-opacity: 1; fill: rgb(255, 255, 255); fill-opacity: 1; stroke-width: 0px;"/><g class="scrollbox" transform="" clip-path="url(#legend18a11a)"><text class="legendtitletext" text-anchor="start" x="2" y="18.2" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 14px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre;">jvm</text><g class="groups"><g class="traces" transform="translate(0,32.7)" style="opacity: 1;"><text class="legendtext" text-anchor="start" x="40" y="4.680000000000001" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre;">openjdk</text><g class="layers" style="opacity: 1;"><g class="legendfill"/><g class="legendlines"/><g class="legendsymbols"><g class="legendpoints"><path class="legendbox" d="M6,6H-6V-6H6Z" transform="translate(20,0)" style="stroke-width: 2px; fill: rgb(179, 205, 227); fill-opacity: 0.5; stroke: rgb(179, 205, 227); stroke-opacity: 1;"/></g></g></g><rect class="legendtoggle" x="0" y="-9.5" width="88.21875" height="19" style="fill: rgb(0, 0, 0); fill-opacity: 0;"/></g><g class="traces" transform="translate(0,51.7)" style="opacity: 1;"><text class="legendtext" text-anchor="start" x="40" y="4.680000000000001" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 12px; fill: rgb(42, 63, 95); fill-opacity: 1; white-space: pre;">graal</text><g class="layers" style="opacity: 1;"><g class="legendfill"/><g class="legendlines"/><g class="legendsymbols"><g class="legendpoints"><path class="legendbox" d="M6,6H-6V-6H6Z" transform="translate(20,0)" style="stroke-width: 2px; fill: rgb(251, 180, 174); fill-opacity: 0.5; stroke: rgb(251, 180, 174); stroke-opacity: 1;"/></g></g></g><rect class="legendtoggle" x="0" y="-9.5" width="88.21875" height="19" style="fill: rgb(0, 0, 0); fill-opacity: 0;"/></g></g></g><rect class="scrollbar" rx="20" ry="3" width="0" height="0" x="0" y="0" style="fill: rgb(128, 139, 164); fill-opacity: 1;"/></g><g class="g-gtitle"><text class="gtitle" x="60" y="30" text-anchor="start" dy="0em" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 17px; fill: rgb(42, 63, 95); opacity: 1; font-weight: normal; white-space: pre;">AppendBenchmark</text></g><g class="g-xtitle"><text class="xtitle" x="633" y="759.8" text-anchor="middle" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 14px; fill: rgb(42, 63, 95); opacity: 1; font-weight: normal; white-space: pre;">Throughput [ops/s] (Higher is better. Note the logarithmic scale.)</text></g><g class="g-ytitle" transform="translate(1.3466796875,0)"><text class="ytitle" transform="rotate(-90,12.653124999999989,390)" x="12.653124999999989" y="390" text-anchor="middle" style="font-family: 'Open Sans', verdana, arial, sans-serif; font-size: 14px; fill: rgb(42, 63, 95); opacity: 1; font-weight: normal; white-space: pre;">Benchmark</text></g></g></svg>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
[
{
"jmhVersion" : "1.36",
"benchmark" : "benchmarks.AppendBenchmark.bench00_prepend",
"mode" : "thrpt",
"threads" : 1,
"forks" : 4,
"jvm" : "/private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java",
"jvmArgs" : [
"-XX:ThreadPriorityPolicy=1",
"-XX:+UnlockExperimentalVMOptions",
"-XX:+EnableJVMCIProduct",
"-XX:JVMCIThreadsPerNativeLibraryRuntime=1",
"-XX:-UnlockExperimentalVMOptions"
],
"jdkVersion" : "17.0.6",
"vmName" : "OpenJDK 64-Bit Server VM",
"vmVersion" : "17.0.6+10-jvmci-22.3-b13",
"warmupIterations" : 5,
"warmupTime" : "2 s",
"warmupBatchSize" : 1,
"measurementIterations" : 5,
"measurementTime" : "2 s",
"measurementBatchSize" : 1,
"params" : {
"seqType" : "List"
},
"primaryMetric" : {
"score" : 4.4616905964790344E8,
"scoreError" : 1.1214208796078255E7,
"scoreConfidence" : [
4.349548508518252E8,
4.573832684439817E8
],
"scorePercentiles" : {
"0.0" : 4.2488395225783956E8,
"50.0" : 4.501041335603518E8,
"90.0" : 4.6098698803585625E8,
"95.0" : 4.616165809750107E8,
"99.0" : 4.6164506569930345E8,
"99.9" : 4.6164506569930345E8,
"99.99" : 4.6164506569930345E8,
"99.999" : 4.6164506569930345E8,
"99.9999" : 4.6164506569930345E8,
"100.0" : 4.6164506569930345E8
},
"scoreUnit" : "ops/s",
"rawData" : [
[
4.2514618981169444E8,
4.3085743887594897E8,
4.334010165484694E8,
4.3181539341128737E8,
4.2488395225783956E8
],
[
4.6164506569930345E8,
4.601915394375321E8,
4.482516236565639E8,
4.3450067747435015E8,
4.316527352055626E8
],
[
4.580103382759133E8,
4.519566434641397E8,
4.538405836682874E8,
4.557991288895439E8,
4.538708717687157E8
],
[
4.5882157362358236E8,
4.610753712134478E8,
4.56842043262938E8,
4.4471287519895023E8,
4.4610613121400046E8
]
]
},
"secondaryMetrics" : {
}
},
{
"jmhVersion" : "1.36",
"benchmark" : "benchmarks.AppendBenchmark.bench00_prepend",
"mode" : "thrpt",
"threads" : 1,
"forks" : 4,
"jvm" : "/private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java",
"jvmArgs" : [
"-XX:ThreadPriorityPolicy=1",
"-XX:+UnlockExperimentalVMOptions",
"-XX:+EnableJVMCIProduct",
"-XX:JVMCIThreadsPerNativeLibraryRuntime=1",
"-XX:-UnlockExperimentalVMOptions"
],
"jdkVersion" : "17.0.6",
"vmName" : "OpenJDK 64-Bit Server VM",
"vmVersion" : "17.0.6+10-jvmci-22.3-b13",
"warmupIterations" : 5,
"warmupTime" : "2 s",
"warmupBatchSize" : 1,
"measurementIterations" : 5,
"measurementTime" : "2 s",
"measurementBatchSize" : 1,
"params" : {
"seqType" : "Array"
},
"primaryMetric" : {
"score" : 365940.66259413573,
"scoreError" : 3481.251959290237,
"scoreConfidence" : [
362459.4106348455,
369421.914553426
],
"scorePercentiles" : {
"0.0" : 358380.08239125053,
"50.0" : 365319.5892913927,
"90.0" : 371743.193612116,
"95.0" : 372204.19449424994,
"99.0" : 372228.0661530999,
"99.9" : 372228.0661530999,
"99.99" : 372228.0661530999,
"99.999" : 372228.0661530999,
"99.9999" : 372228.0661530999,
"100.0" : 372228.0661530999
},
"scoreUnit" : "ops/s",
"rawData" : [
[
364067.83491170616,
365280.101309801,
363320.6124470797,
362222.8235865032,
365114.85666581854
],
[
368073.2633699798,
358380.08239125053,
364890.65680167737,
358686.3191380638,
364896.7690138674
],
[
371750.6329761007,
370248.0187491373,
367284.46703422896,
361592.30402735487,
365939.97880562075
],
[
372228.0661530999,
371676.23933625355,
369231.61639030935,
365359.0772729844,
368569.5315018769
]
]
},
"secondaryMetrics" : {
}
},
{
"jmhVersion" : "1.36",
"benchmark" : "benchmarks.AppendBenchmark.bench01_append",
"mode" : "thrpt",
"threads" : 1,
"forks" : 4,
"jvm" : "/private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java",
"jvmArgs" : [
"-XX:ThreadPriorityPolicy=1",
"-XX:+UnlockExperimentalVMOptions",
"-XX:+EnableJVMCIProduct",
"-XX:JVMCIThreadsPerNativeLibraryRuntime=1",
"-XX:-UnlockExperimentalVMOptions"
],
"jdkVersion" : "17.0.6",
"vmName" : "OpenJDK 64-Bit Server VM",
"vmVersion" : "17.0.6+10-jvmci-22.3-b13",
"warmupIterations" : 5,
"warmupTime" : "2 s",
"warmupBatchSize" : 1,
"measurementIterations" : 5,
"measurementTime" : "2 s",
"measurementBatchSize" : 1,
"params" : {
"seqType" : "List"
},
"primaryMetric" : {
"score" : 31132.571858131443,
"scoreError" : 1159.4134249436765,
"scoreConfidence" : [
29973.158433187768,
32291.98528307512
],
"scorePercentiles" : {
"0.0" : 29563.697886198148,
"50.0" : 30642.854459659906,
"90.0" : 33568.011327684835,
"95.0" : 33626.074212429994,
"99.0" : 33628.64757839566,
"99.9" : 33628.64757839566,
"99.99" : 33628.64757839566,
"99.999" : 33628.64757839566,
"99.9999" : 33628.64757839566,
"100.0" : 33628.64757839566
},
"scoreUnit" : "ops/s",
"rawData" : [
[
29852.692551873766,
30796.688934419646,
29769.08721564633,
29563.697886198148,
30235.12207456773
],
[
33628.64757839566,
33577.180259082226,
32347.763058385943,
32932.02178272013,
33485.49094510833
],
[
31314.877995473293,
31434.37129512416,
30720.358647022334,
30491.39627605463,
30625.041720535413
],
[
30289.852984553294,
30630.3445468818,
29673.141362765018,
30628.295675383008,
30655.364372438013
]
]
},
"secondaryMetrics" : {
}
},
{
"jmhVersion" : "1.36",
"benchmark" : "benchmarks.AppendBenchmark.bench01_append",
"mode" : "thrpt",
"threads" : 1,
"forks" : 4,
"jvm" : "/private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java",
"jvmArgs" : [
"-XX:ThreadPriorityPolicy=1",
"-XX:+UnlockExperimentalVMOptions",
"-XX:+EnableJVMCIProduct",
"-XX:JVMCIThreadsPerNativeLibraryRuntime=1",
"-XX:-UnlockExperimentalVMOptions"
],
"jdkVersion" : "17.0.6",
"vmName" : "OpenJDK 64-Bit Server VM",
"vmVersion" : "17.0.6+10-jvmci-22.3-b13",
"warmupIterations" : 5,
"warmupTime" : "2 s",
"warmupBatchSize" : 1,
"measurementIterations" : 5,
"measurementTime" : "2 s",
"measurementBatchSize" : 1,
"params" : {
"seqType" : "Array"
},
"primaryMetric" : {
"score" : 369140.17171414994,
"scoreError" : 4577.124069126146,
"scoreConfidence" : [
364563.0476450238,
373717.2957832761
],
"scorePercentiles" : {
"0.0" : 356404.7394583298,
"50.0" : 371185.143365955,
"90.0" : 374139.9410975192,
"95.0" : 375329.2787385318,
"99.0" : 375390.8662480832,
"99.9" : 375390.8662480832,
"99.99" : 375390.8662480832,
"99.999" : 375390.8662480832,
"99.9999" : 375390.8662480832,
"100.0" : 375390.8662480832
},
"scoreUnit" : "ops/s",
"rawData" : [
[
372434.862740959,
373849.2678022397,
361156.2558513032,
373436.7613838962,
373967.3664616856
],
[
367803.55459440034,
369126.42620400316,
356404.7394583298,
368298.69851988665,
365936.14951268723
],
[
374159.11605705624,
372721.858096334,
363757.1033027913,
375390.8662480832,
372349.27322162775
],
[
372475.70732469903,
370021.01351028215,
361357.28813142946,
372653.0846455351,
365504.04121576797
]
]
},
"secondaryMetrics" : {
}
}
]
[info] welcome to sbt 1.7.1 (GraalVM Community Java 17.0.6)
[info] loading settings for project cs206-demos-build-build-build from metals.sbt ...
[info] loading project definition from /Users/mbovel/cs206-demos/project/project/project
[info] loading settings for project cs206-demos-build-build from metals.sbt ...
[info] loading project definition from /Users/mbovel/cs206-demos/project/project
[success] Generated .bloop/cs206-demos-build-build.json
[success] Total time: 0 s, completed Mar 4, 2023, 11:01:57 PM
[info] loading settings for project cs206-demos-build from metals.sbt,plugins.sbt ...
[info] loading project definition from /Users/mbovel/cs206-demos/project
[success] Generated .bloop/cs206-demos-build.json
[success] Total time: 0 s, completed Mar 4, 2023, 11:01:58 PM
[info] loading settings for project cs206-demos from build.sbt ...
[info] set current project to cs206-demos (in build file:/Users/mbovel/cs206-demos/)
[success] Total time: 0 s, completed Mar 4, 2023, 11:01:59 PM
[info] compiling 7 Scala sources and 1 Java source to /Users/mbovel/cs206-demos/target/scala-3.2.0/classes ...
[warn] there was 1 deprecation warning; re-run with -deprecation for details
[warn] one warning found
[info] done compiling
[info] running org.openjdk.jmh.generators.bytecode.JmhBytecodeGenerator /Users/mbovel/cs206-demos/target/scala-3.2.0/classes /Users/mbovel/cs206-demos/target/scala-3.2.0/src_managed/jmh /Users/mbovel/cs206-demos/target/scala-3.2.0/resource_managed/jmh default
Processing 18 classes from /Users/mbovel/cs206-demos/target/scala-3.2.0/classes with "reflection" generator
Writing out Java source to /Users/mbovel/cs206-demos/target/scala-3.2.0/src_managed/jmh and resources to /Users/mbovel/cs206-demos/target/scala-3.2.0/resource_managed/jmh
[info] compiling 22 Java sources to /Users/mbovel/cs206-demos/target/scala-3.2.0/classes ...
[info] done compiling
[info] running (fork) org.openjdk.jmh.Main -wi 5 -w 2 -i 5 -r 2 -f 4 -rf JSON -rff benchmarks/results/01-AppendBenchmark-graal-1.json AppendBenchmark
[info] # JMH version: 1.36
[info] # VM version: JDK 17.0.6, OpenJDK 64-Bit Server VM, 17.0.6+10-jvmci-22.3-b13
[info] # VM invoker: /private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java
[info] # VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:JVMCIThreadsPerNativeLibraryRuntime=1 -XX:-UnlockExperimentalVMOptions
[info] # Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
[info] # Warmup: 5 iterations, 2 s each
[info] # Measurement: 5 iterations, 2 s each
[info] # Timeout: 10 min per iteration
[info] # Threads: 1 thread, will synchronize iterations
[info] # Benchmark mode: Throughput, ops/time
[info] # Benchmark: benchmarks.AppendBenchmark.bench00_prepend
[info] # Parameters: (seqType = List)
[info] # Run progress: 0.00% complete, ETA 00:05:20
[info] # Fork: 1 of 4
[info] # Warmup Iteration 1: 381047718.506 ops/s
[info] # Warmup Iteration 2: 427224393.761 ops/s
[info] # Warmup Iteration 3: 423193224.651 ops/s
[info] # Warmup Iteration 4: 431354803.364 ops/s
[info] # Warmup Iteration 5: 425292407.783 ops/s
[info] Iteration 1: 425146189.812 ops/s
[info] Iteration 2: 430857438.876 ops/s
[info] Iteration 3: 433401016.548 ops/s
[info] Iteration 4: 431815393.411 ops/s
[info] Iteration 5: 424883952.258 ops/s
[info] # Run progress: 6.25% complete, ETA 00:05:06
[info] # Fork: 2 of 4
[info] # Warmup Iteration 1: 380260895.661 ops/s
[info] # Warmup Iteration 2: 416517716.635 ops/s
[info] # Warmup Iteration 3: 421912958.285 ops/s
[info] # Warmup Iteration 4: 444073871.108 ops/s
[info] # Warmup Iteration 5: 458461559.778 ops/s
[info] Iteration 1: 461645065.699 ops/s
[info] Iteration 2: 460191539.438 ops/s
[info] Iteration 3: 448251623.657 ops/s
[info] Iteration 4: 434500677.474 ops/s
[info] Iteration 5: 431652735.206 ops/s
[info] # Run progress: 12.50% complete, ETA 00:04:45
[info] # Fork: 3 of 4
[info] # Warmup Iteration 1: 396905467.727 ops/s
[info] # Warmup Iteration 2: 444380307.150 ops/s
[info] # Warmup Iteration 3: 457208905.266 ops/s
[info] # Warmup Iteration 4: 452339719.713 ops/s
[info] # Warmup Iteration 5: 456114608.827 ops/s
[info] Iteration 1: 458010338.276 ops/s
[info] Iteration 2: 451956643.464 ops/s
[info] Iteration 3: 453840583.668 ops/s
[info] Iteration 4: 455799128.890 ops/s
[info] Iteration 5: 453870871.769 ops/s
[info] # Run progress: 18.75% complete, ETA 00:04:24
[info] # Fork: 4 of 4
[info] # Warmup Iteration 1: 400834886.163 ops/s
[info] # Warmup Iteration 2: 438573552.590 ops/s
[info] # Warmup Iteration 3: 456080197.521 ops/s
[info] # Warmup Iteration 4: 454083475.609 ops/s
[info] # Warmup Iteration 5: 456513879.642 ops/s
[info] Iteration 1: 458821573.624 ops/s
[info] Iteration 2: 461075371.213 ops/s
[info] Iteration 3: 456842043.263 ops/s
[info] Iteration 4: 444712875.199 ops/s
[info] Iteration 5: 446106131.214 ops/s
[info] Result "benchmarks.AppendBenchmark.bench00_prepend":
[info] 446169059.648 ±(99.9%) 11214208.796 ops/s [Average]
[info] (min, avg, max) = (424883952.258, 446169059.648, 461645065.699), stdev = 12914299.527
[info] CI (99.9%): [434954850.852, 457383268.444] (assumes normal distribution)
[info] # JMH version: 1.36
[info] # VM version: JDK 17.0.6, OpenJDK 64-Bit Server VM, 17.0.6+10-jvmci-22.3-b13
[info] # VM invoker: /private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java
[info] # VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:JVMCIThreadsPerNativeLibraryRuntime=1 -XX:-UnlockExperimentalVMOptions
[info] # Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
[info] # Warmup: 5 iterations, 2 s each
[info] # Measurement: 5 iterations, 2 s each
[info] # Timeout: 10 min per iteration
[info] # Threads: 1 thread, will synchronize iterations
[info] # Benchmark mode: Throughput, ops/time
[info] # Benchmark: benchmarks.AppendBenchmark.bench00_prepend
[info] # Parameters: (seqType = Array)
[info] # Run progress: 25.00% complete, ETA 00:04:04
[info] # Fork: 1 of 4
[info] # Warmup Iteration 1: 296135.731 ops/s
[info] # Warmup Iteration 2: 348041.938 ops/s
[info] # Warmup Iteration 3: 360097.821 ops/s
[info] # Warmup Iteration 4: 358308.467 ops/s
[info] # Warmup Iteration 5: 361229.007 ops/s
[info] Iteration 1: 364067.835 ops/s
[info] Iteration 2: 365280.101 ops/s
[info] Iteration 3: 363320.612 ops/s
[info] Iteration 4: 362222.824 ops/s
[info] Iteration 5: 365114.857 ops/s
[info] # Run progress: 31.25% complete, ETA 00:03:44
[info] # Fork: 2 of 4
[info] # Warmup Iteration 1: 293597.068 ops/s
[info] # Warmup Iteration 2: 365364.171 ops/s
[info] # Warmup Iteration 3: 362408.373 ops/s
[info] # Warmup Iteration 4: 345699.759 ops/s
[info] # Warmup Iteration 5: 365643.772 ops/s
[info] Iteration 1: 368073.263 ops/s
[info] Iteration 2: 358380.082 ops/s
[info] Iteration 3: 364890.657 ops/s
[info] Iteration 4: 358686.319 ops/s
[info] Iteration 5: 364896.769 ops/s
[info] # Run progress: 37.50% complete, ETA 00:03:23
[info] # Fork: 3 of 4
[info] # Warmup Iteration 1: 285220.604 ops/s
[info] # Warmup Iteration 2: 368589.424 ops/s
[info] # Warmup Iteration 3: 364954.592 ops/s
[info] # Warmup Iteration 4: 362988.437 ops/s
[info] # Warmup Iteration 5: 365722.204 ops/s
[info] Iteration 1: 371750.633 ops/s
[info] Iteration 2: 370248.019 ops/s
[info] Iteration 3: 367284.467 ops/s
[info] Iteration 4: 361592.304 ops/s
[info] Iteration 5: 365939.979 ops/s
[info] # Run progress: 43.75% complete, ETA 00:03:03
[info] # Fork: 4 of 4
[info] # Warmup Iteration 1: 276001.317 ops/s
[info] # Warmup Iteration 2: 368081.922 ops/s
[info] # Warmup Iteration 3: 368137.082 ops/s
[info] # Warmup Iteration 4: 362280.179 ops/s
[info] # Warmup Iteration 5: 368830.032 ops/s
[info] Iteration 1: 372228.066 ops/s
[info] Iteration 2: 371676.239 ops/s
[info] Iteration 3: 369231.616 ops/s
[info] Iteration 4: 365359.077 ops/s
[info] Iteration 5: 368569.532 ops/s
[info] Result "benchmarks.AppendBenchmark.bench00_prepend":
[info] 365940.663 ±(99.9%) 3481.252 ops/s [Average]
[info] (min, avg, max) = (358380.082, 365940.663, 372228.066), stdev = 4009.015
[info] CI (99.9%): [362459.411, 369421.915] (assumes normal distribution)
[info] # JMH version: 1.36
[info] # VM version: JDK 17.0.6, OpenJDK 64-Bit Server VM, 17.0.6+10-jvmci-22.3-b13
[info] # VM invoker: /private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java
[info] # VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:JVMCIThreadsPerNativeLibraryRuntime=1 -XX:-UnlockExperimentalVMOptions
[info] # Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
[info] # Warmup: 5 iterations, 2 s each
[info] # Measurement: 5 iterations, 2 s each
[info] # Timeout: 10 min per iteration
[info] # Threads: 1 thread, will synchronize iterations
[info] # Benchmark mode: Throughput, ops/time
[info] # Benchmark: benchmarks.AppendBenchmark.bench01_append
[info] # Parameters: (seqType = List)
[info] # Run progress: 50.00% complete, ETA 00:02:43
[info] # Fork: 1 of 4
[info] # Warmup Iteration 1: 24477.422 ops/s
[info] # Warmup Iteration 2: 28695.760 ops/s
[info] # Warmup Iteration 3: 29581.586 ops/s
[info] # Warmup Iteration 4: 29354.206 ops/s
[info] # Warmup Iteration 5: 30310.929 ops/s
[info] Iteration 1: 29852.693 ops/s
[info] Iteration 2: 30796.689 ops/s
[info] Iteration 3: 29769.087 ops/s
[info] Iteration 4: 29563.698 ops/s
[info] Iteration 5: 30235.122 ops/s
[info] # Run progress: 56.25% complete, ETA 00:02:22
[info] # Fork: 2 of 4
[info] # Warmup Iteration 1: 25576.154 ops/s
[info] # Warmup Iteration 2: 28892.287 ops/s
[info] # Warmup Iteration 3: 32405.438 ops/s
[info] # Warmup Iteration 4: 33109.307 ops/s
[info] # Warmup Iteration 5: 32416.613 ops/s
[info] Iteration 1: 33628.648 ops/s
[info] Iteration 2: 33577.180 ops/s
[info] Iteration 3: 32347.763 ops/s
[info] Iteration 4: 32932.022 ops/s
[info] Iteration 5: 33485.491 ops/s
[info] # Run progress: 62.50% complete, ETA 00:02:02
[info] # Fork: 3 of 4
[info] # Warmup Iteration 1: 24036.162 ops/s
[info] # Warmup Iteration 2: 28570.104 ops/s
[info] # Warmup Iteration 3: 29892.723 ops/s
[info] # Warmup Iteration 4: 31092.974 ops/s
[info] # Warmup Iteration 5: 30284.315 ops/s
[info] Iteration 1: 31314.878 ops/s
[info] Iteration 2: 31434.371 ops/s
[info] Iteration 3: 30720.359 ops/s
[info] Iteration 4: 30491.396 ops/s
[info] Iteration 5: 30625.042 ops/s
[info] # Run progress: 68.75% complete, ETA 00:01:41
[info] # Fork: 4 of 4
[info] # Warmup Iteration 1: 24291.201 ops/s
[info] # Warmup Iteration 2: 28245.687 ops/s
[info] # Warmup Iteration 3: 29010.364 ops/s
[info] # Warmup Iteration 4: 30675.160 ops/s
[info] # Warmup Iteration 5: 30696.314 ops/s
[info] Iteration 1: 30289.853 ops/s
[info] Iteration 2: 30630.345 ops/s
[info] Iteration 3: 29673.141 ops/s
[info] Iteration 4: 30628.296 ops/s
[info] Iteration 5: 30655.364 ops/s
[info] Result "benchmarks.AppendBenchmark.bench01_append":
[info] 31132.572 ±(99.9%) 1159.413 ops/s [Average]
[info] (min, avg, max) = (29563.698, 31132.572, 33628.648), stdev = 1335.182
[info] CI (99.9%): [29973.158, 32291.985] (assumes normal distribution)
[info] # JMH version: 1.36
[info] # VM version: JDK 17.0.6, OpenJDK 64-Bit Server VM, 17.0.6+10-jvmci-22.3-b13
[info] # VM invoker: /private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java
[info] # VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:JVMCIThreadsPerNativeLibraryRuntime=1 -XX:-UnlockExperimentalVMOptions
[info] # Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
[info] # Warmup: 5 iterations, 2 s each
[info] # Measurement: 5 iterations, 2 s each
[info] # Timeout: 10 min per iteration
[info] # Threads: 1 thread, will synchronize iterations
[info] # Benchmark mode: Throughput, ops/time
[info] # Benchmark: benchmarks.AppendBenchmark.bench01_append
[info] # Parameters: (seqType = Array)
[info] # Run progress: 75.00% complete, ETA 00:01:21
[info] # Fork: 1 of 4
[info] # Warmup Iteration 1: 285220.028 ops/s
[info] # Warmup Iteration 2: 372124.146 ops/s
[info] # Warmup Iteration 3: 363692.939 ops/s
[info] # Warmup Iteration 4: 374041.506 ops/s
[info] # Warmup Iteration 5: 368938.188 ops/s
[info] Iteration 1: 372434.863 ops/s
[info] Iteration 2: 373849.268 ops/s
[info] Iteration 3: 361156.256 ops/s
[info] Iteration 4: 373436.761 ops/s
[info] Iteration 5: 373967.366 ops/s
[info] # Run progress: 81.25% complete, ETA 00:01:01
[info] # Fork: 2 of 4
[info] # Warmup Iteration 1: 301465.298 ops/s
[info] # Warmup Iteration 2: 367326.350 ops/s
[info] # Warmup Iteration 3: 356063.857 ops/s
[info] # Warmup Iteration 4: 368534.227 ops/s
[info] # Warmup Iteration 5: 363806.611 ops/s
[info] Iteration 1: 367803.555 ops/s
[info] Iteration 2: 369126.426 ops/s
[info] Iteration 3: 356404.739 ops/s
[info] Iteration 4: 368298.699 ops/s
[info] Iteration 5: 365936.150 ops/s
[info] # Run progress: 87.50% complete, ETA 00:00:40
[info] # Fork: 3 of 4
[info] # Warmup Iteration 1: 288105.135 ops/s
[info] # Warmup Iteration 2: 372135.962 ops/s
[info] # Warmup Iteration 3: 363791.208 ops/s
[info] # Warmup Iteration 4: 373039.977 ops/s
[info] # Warmup Iteration 5: 361349.933 ops/s
[info] Iteration 1: 374159.116 ops/s
[info] Iteration 2: 372721.858 ops/s
[info] Iteration 3: 363757.103 ops/s
[info] Iteration 4: 375390.866 ops/s
[info] Iteration 5: 372349.273 ops/s
[info] # Run progress: 93.75% complete, ETA 00:00:20
[info] # Fork: 4 of 4
[info] # Warmup Iteration 1: 283309.221 ops/s
[info] # Warmup Iteration 2: 369986.476 ops/s
[info] # Warmup Iteration 3: 360971.766 ops/s
[info] # Warmup Iteration 4: 372348.578 ops/s
[info] # Warmup Iteration 5: 368389.785 ops/s
[info] Iteration 1: 372475.707 ops/s
[info] Iteration 2: 370021.014 ops/s
[info] Iteration 3: 361357.288 ops/s
[info] Iteration 4: 372653.085 ops/s
[info] Iteration 5: 365504.041 ops/s
[info] Result "benchmarks.AppendBenchmark.bench01_append":
[info] 369140.172 ±(99.9%) 4577.124 ops/s [Average]
[info] (min, avg, max) = (356404.739, 369140.172, 375390.866), stdev = 5271.023
[info] CI (99.9%): [364563.048, 373717.296] (assumes normal distribution)
[info] # Run complete. Total time: 00:05:26
[info] REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on
[info] why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial
[info] experiments, perform baseline and negative tests that provide experimental control, make sure
[info] the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts.
[info] Do not assume the numbers tell you what you want them to tell.
[info] NOTE: Current JVM experimentally supports Compiler Blackholes, and they are in use. Please exercise
[info] extra caution when trusting the results, look into the generated code to check the benchmark still
[info] works, and factor in a small probability of new VM bugs. Additionally, while comparisons between
[info] different JVMs are already problematic, the performance difference caused by different Blackhole
[info] modes can be very significant. Please make sure you use the consistent Blackhole mode for comparisons.
[info] Benchmark (seqType) Mode Cnt Score Error Units
[info] AppendBenchmark.bench00_prepend List thrpt 20 446169059.648 ± 11214208.796 ops/s
[info] AppendBenchmark.bench00_prepend Array thrpt 20 365940.663 ± 3481.252 ops/s
[info] AppendBenchmark.bench01_append List thrpt 20 31132.572 ± 1159.413 ops/s
[info] AppendBenchmark.bench01_append Array thrpt 20 369140.172 ± 4577.124 ops/s
[info] Benchmark result is saved to benchmarks/results/01-AppendBenchmark-graal-1.json
[success] Total time: 333 s (05:33), completed Mar 4, 2023, 11:07:31 PM
[
{
"jmhVersion" : "1.36",
"benchmark" : "benchmarks.AppendBenchmark.bench00_prepend",
"mode" : "thrpt",
"threads" : 1,
"forks" : 4,
"jvm" : "/private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java",
"jvmArgs" : [
"-XX:ThreadPriorityPolicy=1",
"-XX:+UnlockExperimentalVMOptions",
"-XX:+EnableJVMCIProduct",
"-XX:JVMCIThreadsPerNativeLibraryRuntime=1",
"-XX:-UnlockExperimentalVMOptions"
],
"jdkVersion" : "17.0.6",
"vmName" : "OpenJDK 64-Bit Server VM",
"vmVersion" : "17.0.6+10-jvmci-22.3-b13",
"warmupIterations" : 5,
"warmupTime" : "2 s",
"warmupBatchSize" : 1,
"measurementIterations" : 5,
"measurementTime" : "2 s",
"measurementBatchSize" : 1,
"params" : {
"seqType" : "List"
},
"primaryMetric" : {
"score" : 4.303102373312954E8,
"scoreError" : 2.7241588294618838E7,
"scoreConfidence" : [
4.030686490366765E8,
4.575518256259142E8
],
"scorePercentiles" : {
"0.0" : 3.5630888951232433E8,
"50.0" : 4.363455779735644E8,
"90.0" : 4.6074719282569426E8,
"95.0" : 4.631307304661605E8,
"99.0" : 4.632522954921272E8,
"99.9" : 4.632522954921272E8,
"99.99" : 4.632522954921272E8,
"99.999" : 4.632522954921272E8,
"99.9999" : 4.632522954921272E8,
"100.0" : 4.632522954921272E8
},
"scoreUnit" : "ops/s",
"rawData" : [
[
4.065848481908778E8,
3.9978214124478275E8,
3.5630888951232433E8,
3.682305721780129E8,
4.030907216002676E8
],
[
4.239890786574598E8,
4.1862561216841006E8,
4.236333284177736E8,
4.2100190182708114E8,
4.268119512233757E8
],
[
4.6008297350180113E8,
4.576221812148033E8,
4.579765220764096E8,
4.47162800425273E8,
4.5816857537053376E8
],
[
4.608209949727935E8,
4.5615324497882104E8,
4.632522954921272E8,
4.5102690884922475E8,
4.458792047237531E8
]
]
},
"secondaryMetrics" : {
}
},
{
"jmhVersion" : "1.36",
"benchmark" : "benchmarks.AppendBenchmark.bench00_prepend",
"mode" : "thrpt",
"threads" : 1,
"forks" : 4,
"jvm" : "/private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java",
"jvmArgs" : [
"-XX:ThreadPriorityPolicy=1",
"-XX:+UnlockExperimentalVMOptions",
"-XX:+EnableJVMCIProduct",
"-XX:JVMCIThreadsPerNativeLibraryRuntime=1",
"-XX:-UnlockExperimentalVMOptions"
],
"jdkVersion" : "17.0.6",
"vmName" : "OpenJDK 64-Bit Server VM",
"vmVersion" : "17.0.6+10-jvmci-22.3-b13",
"warmupIterations" : 5,
"warmupTime" : "2 s",
"warmupBatchSize" : 1,
"measurementIterations" : 5,
"measurementTime" : "2 s",
"measurementBatchSize" : 1,
"params" : {
"seqType" : "Array"
},
"primaryMetric" : {
"score" : 350735.34944515524,
"scoreError" : 24594.57372149175,
"scoreConfidence" : [
326140.7757236635,
375329.923166647
],
"scorePercentiles" : {
"0.0" : 299374.76674105634,
"50.0" : 365986.01129041135,
"90.0" : 372760.74312900606,
"95.0" : 373043.87237984827,
"99.0" : 373053.1024960967,
"99.9" : 373053.1024960967,
"99.99" : 373053.1024960967,
"99.999" : 373053.1024960967,
"99.9999" : 373053.1024960967,
"100.0" : 373053.1024960967
},
"scoreUnit" : "ops/s",
"rawData" : [
[
368471.31068385014,
364389.4925934419,
369274.42815437744,
361768.5744896276,
369455.7461529183
],
[
371790.92974990146,
373053.1024960967,
367582.52998738084,
362853.8831300189,
371606.4476291678
],
[
328081.37236376596,
369703.4965260746,
371471.6836964233,
362630.1113117029,
372868.5001711288
],
[
310889.6846495775,
313411.21165026084,
299374.76674105634,
300812.2437923424,
305217.47293399106
]
]
},
"secondaryMetrics" : {
}
},
{
"jmhVersion" : "1.36",
"benchmark" : "benchmarks.AppendBenchmark.bench01_append",
"mode" : "thrpt",
"threads" : 1,
"forks" : 4,
"jvm" : "/private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java",
"jvmArgs" : [
"-XX:ThreadPriorityPolicy=1",
"-XX:+UnlockExperimentalVMOptions",
"-XX:+EnableJVMCIProduct",
"-XX:JVMCIThreadsPerNativeLibraryRuntime=1",
"-XX:-UnlockExperimentalVMOptions"
],
"jdkVersion" : "17.0.6",
"vmName" : "OpenJDK 64-Bit Server VM",
"vmVersion" : "17.0.6+10-jvmci-22.3-b13",
"warmupIterations" : 5,
"warmupTime" : "2 s",
"warmupBatchSize" : 1,
"measurementIterations" : 5,
"measurementTime" : "2 s",
"measurementBatchSize" : 1,
"params" : {
"seqType" : "List"
},
"primaryMetric" : {
"score" : 30842.84622872265,
"scoreError" : 487.5627340953036,
"scoreConfidence" : [
30355.283494627347,
31330.408962817954
],
"scorePercentiles" : {
"0.0" : 30000.579763015397,
"50.0" : 30999.946453911518,
"90.0" : 31407.235621306805,
"95.0" : 31832.653938144635,
"99.0" : 31854.892816202293,
"99.9" : 31854.892816202293,
"99.99" : 31854.892816202293,
"99.999" : 31854.892816202293,
"99.9999" : 31854.892816202293,
"100.0" : 31854.892816202293
},
"scoreUnit" : "ops/s",
"rawData" : [
[
30280.07451355916,
30099.64735823445,
30000.579763015397,
30430.946624009135,
30606.98918276329
],
[
31222.03093552812,
31107.874250478977,
30658.834011531024,
31381.3189176262,
31282.972088173054
],
[
31221.948429473752,
31305.70987123618,
30892.01865734406,
31210.856235594634,
31854.892816202293
],
[
31410.115255049095,
30272.118159122958,
30053.845938311544,
31355.271847875778,
30208.87971932399
]
]
},
"secondaryMetrics" : {
}
},
{
"jmhVersion" : "1.36",
"benchmark" : "benchmarks.AppendBenchmark.bench01_append",
"mode" : "thrpt",
"threads" : 1,
"forks" : 4,
"jvm" : "/private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java",
"jvmArgs" : [
"-XX:ThreadPriorityPolicy=1",
"-XX:+UnlockExperimentalVMOptions",
"-XX:+EnableJVMCIProduct",
"-XX:JVMCIThreadsPerNativeLibraryRuntime=1",
"-XX:-UnlockExperimentalVMOptions"
],
"jdkVersion" : "17.0.6",
"vmName" : "OpenJDK 64-Bit Server VM",
"vmVersion" : "17.0.6+10-jvmci-22.3-b13",
"warmupIterations" : 5,
"warmupTime" : "2 s",
"warmupBatchSize" : 1,
"measurementIterations" : 5,
"measurementTime" : "2 s",
"measurementBatchSize" : 1,
"params" : {
"seqType" : "Array"
},
"primaryMetric" : {
"score" : 364745.5936869782,
"scoreError" : 11566.73317748211,
"scoreConfidence" : [
353178.8605094961,
376312.3268644603
],
"scorePercentiles" : {
"0.0" : 329223.05143850186,
"50.0" : 370705.6558278879,
"90.0" : 373174.72300587053,
"95.0" : 375312.3523448463,
"99.0" : 375421.573033883,
"99.9" : 375421.573033883,
"99.99" : 375421.573033883,
"99.999" : 375421.573033883,
"99.9999" : 375421.573033883,
"100.0" : 375421.573033883
},
"scoreUnit" : "ops/s",
"rawData" : [
[
370730.8415600298,
370632.88970682176,
363285.0659979971,
372244.1521719275,
370680.470095746
],
[
372612.7967803672,
371902.13426990516,
364470.397661492,
372498.65078634757,
372513.3084583722
],
[
370391.1383451164,
373237.15925314865,
367240.00554685685,
375421.573033883,
371487.34619699797
],
[
357838.10464710026,
340189.3818921946,
329223.05143850186,
337319.07794820616,
370994.32794855273
]
]
},
"secondaryMetrics" : {
}
}
]
[info] welcome to sbt 1.7.1 (GraalVM Community Java 17.0.6)
[info] loading settings for project cs206-demos-build-build-build from metals.sbt ...
[info] loading project definition from /Users/mbovel/cs206-demos/project/project/project
[info] loading settings for project cs206-demos-build-build from metals.sbt ...
[info] loading project definition from /Users/mbovel/cs206-demos/project/project
[success] Generated .bloop/cs206-demos-build-build.json
[success] Total time: 0 s, completed Mar 5, 2023, 12:50:13 PM
[info] loading settings for project cs206-demos-build from metals.sbt,plugins.sbt ...
[info] loading project definition from /Users/mbovel/cs206-demos/project
[success] Generated .bloop/cs206-demos-build.json
[success] Total time: 0 s, completed Mar 5, 2023, 12:50:14 PM
[info] loading settings for project cs206-demos from build.sbt ...
[info] set current project to cs206-demos (in build file:/Users/mbovel/cs206-demos/)
[success] Total time: 0 s, completed Mar 5, 2023, 12:50:15 PM
[info] compiling 7 Scala sources and 1 Java source to /Users/mbovel/cs206-demos/target/scala-3.2.0/classes ...
[warn] there was 1 deprecation warning; re-run with -deprecation for details
[warn] one warning found
[info] done compiling
[info] running org.openjdk.jmh.generators.bytecode.JmhBytecodeGenerator /Users/mbovel/cs206-demos/target/scala-3.2.0/classes /Users/mbovel/cs206-demos/target/scala-3.2.0/src_managed/jmh /Users/mbovel/cs206-demos/target/scala-3.2.0/resource_managed/jmh default
Processing 18 classes from /Users/mbovel/cs206-demos/target/scala-3.2.0/classes with "reflection" generator
Writing out Java source to /Users/mbovel/cs206-demos/target/scala-3.2.0/src_managed/jmh and resources to /Users/mbovel/cs206-demos/target/scala-3.2.0/resource_managed/jmh
[info] compiling 22 Java sources to /Users/mbovel/cs206-demos/target/scala-3.2.0/classes ...
[info] done compiling
[info] running (fork) org.openjdk.jmh.Main -wi 5 -w 2 -i 5 -r 2 -f 4 -rf JSON -rff benchmarks/results/01-AppendBenchmark-graal-2.json AppendBenchmark
[info] # JMH version: 1.36
[info] # VM version: JDK 17.0.6, OpenJDK 64-Bit Server VM, 17.0.6+10-jvmci-22.3-b13
[info] # VM invoker: /private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java
[info] # VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:JVMCIThreadsPerNativeLibraryRuntime=1 -XX:-UnlockExperimentalVMOptions
[info] # Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
[info] # Warmup: 5 iterations, 2 s each
[info] # Measurement: 5 iterations, 2 s each
[info] # Timeout: 10 min per iteration
[info] # Threads: 1 thread, will synchronize iterations
[info] # Benchmark mode: Throughput, ops/time
[info] # Benchmark: benchmarks.AppendBenchmark.bench00_prepend
[info] # Parameters: (seqType = List)
[info] # Run progress: 0.00% complete, ETA 00:05:20
[info] # Fork: 1 of 4
[info] # Warmup Iteration 1: 391613636.238 ops/s
[info] # Warmup Iteration 2: 429588721.966 ops/s
[info] # Warmup Iteration 3: 428049250.909 ops/s
[info] # Warmup Iteration 4: 406963029.136 ops/s
[info] # Warmup Iteration 5: 401672158.701 ops/s
[info] Iteration 1: 406584848.191 ops/s
[info] Iteration 2: 399782141.245 ops/s
[info] Iteration 3: 356308889.512 ops/s
[info] Iteration 4: 368230572.178 ops/s
[info] Iteration 5: 403090721.600 ops/s
[info] # Run progress: 6.25% complete, ETA 00:05:05
[info] # Fork: 2 of 4
[info] # Warmup Iteration 1: 364466258.024 ops/s
[info] # Warmup Iteration 2: 415278299.041 ops/s
[info] # Warmup Iteration 3: 418841262.042 ops/s
[info] # Warmup Iteration 4: 416924569.493 ops/s
[info] # Warmup Iteration 5: 421497807.735 ops/s
[info] Iteration 1: 423989078.657 ops/s
[info] Iteration 2: 418625612.168 ops/s
[info] Iteration 3: 423633328.418 ops/s
[info] Iteration 4: 421001901.827 ops/s
[info] Iteration 5: 426811951.223 ops/s
[info] # Run progress: 12.50% complete, ETA 00:04:45
[info] # Fork: 3 of 4
[info] # Warmup Iteration 1: 370583021.187 ops/s
[info] # Warmup Iteration 2: 435513606.208 ops/s
[info] # Warmup Iteration 3: 449285411.610 ops/s
[info] # Warmup Iteration 4: 442676172.017 ops/s
[info] # Warmup Iteration 5: 459864180.424 ops/s
[info] Iteration 1: 460082973.502 ops/s
[info] Iteration 2: 457622181.215 ops/s
[info] Iteration 3: 457976522.076 ops/s
[info] Iteration 4: 447162800.425 ops/s
[info] Iteration 5: 458168575.371 ops/s
[info] # Run progress: 18.75% complete, ETA 00:04:25
[info] # Fork: 4 of 4
[info] # Warmup Iteration 1: 401558978.752 ops/s
[info] # Warmup Iteration 2: 429946047.540 ops/s
[info] # Warmup Iteration 3: 452599874.717 ops/s
[info] # Warmup Iteration 4: 455637485.376 ops/s
[info] # Warmup Iteration 5: 461309972.898 ops/s
[info] Iteration 1: 460820994.973 ops/s
[info] Iteration 2: 456153244.979 ops/s
[info] Iteration 3: 463252295.492 ops/s
[info] Iteration 4: 451026908.849 ops/s
[info] Iteration 5: 445879204.724 ops/s
[info] Result "benchmarks.AppendBenchmark.bench00_prepend":
[info] 430310237.331 ±(99.9%) 27241588.295 ops/s [Average]
[info] (min, avg, max) = (356308889.512, 430310237.331, 463252295.492), stdev = 31371453.592
[info] CI (99.9%): [403068649.037, 457551825.626] (assumes normal distribution)
[info] # JMH version: 1.36
[info] # VM version: JDK 17.0.6, OpenJDK 64-Bit Server VM, 17.0.6+10-jvmci-22.3-b13
[info] # VM invoker: /private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java
[info] # VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:JVMCIThreadsPerNativeLibraryRuntime=1 -XX:-UnlockExperimentalVMOptions
[info] # Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
[info] # Warmup: 5 iterations, 2 s each
[info] # Measurement: 5 iterations, 2 s each
[info] # Timeout: 10 min per iteration
[info] # Threads: 1 thread, will synchronize iterations
[info] # Benchmark mode: Throughput, ops/time
[info] # Benchmark: benchmarks.AppendBenchmark.bench00_prepend
[info] # Parameters: (seqType = Array)
[info] # Run progress: 25.00% complete, ETA 00:04:04
[info] # Fork: 1 of 4
[info] # Warmup Iteration 1: 300145.909 ops/s
[info] # Warmup Iteration 2: 366703.342 ops/s
[info] # Warmup Iteration 3: 366284.098 ops/s
[info] # Warmup Iteration 4: 360692.130 ops/s
[info] # Warmup Iteration 5: 362061.133 ops/s
[info] Iteration 1: 368471.311 ops/s
[info] Iteration 2: 364389.493 ops/s
[info] Iteration 3: 369274.428 ops/s
[info] Iteration 4: 361768.574 ops/s
[info] Iteration 5: 369455.746 ops/s
[info] # Run progress: 31.25% complete, ETA 00:03:44
[info] # Fork: 2 of 4
[info] # Warmup Iteration 1: 289697.373 ops/s
[info] # Warmup Iteration 2: 370188.440 ops/s
[info] # Warmup Iteration 3: 372434.071 ops/s
[info] # Warmup Iteration 4: 363520.485 ops/s
[info] # Warmup Iteration 5: 372521.822 ops/s
[info] Iteration 1: 371790.930 ops/s
[info] Iteration 2: 373053.102 ops/s
[info] Iteration 3: 367582.530 ops/s
[info] Iteration 4: 362853.883 ops/s
[info] Iteration 5: 371606.448 ops/s
[info] # Run progress: 37.50% complete, ETA 00:03:23
[info] # Fork: 3 of 4
[info] # Warmup Iteration 1: 289813.800 ops/s
[info] # Warmup Iteration 2: 369458.667 ops/s
[info] # Warmup Iteration 3: 372437.739 ops/s
[info] # Warmup Iteration 4: 364467.158 ops/s
[info] # Warmup Iteration 5: 371778.750 ops/s
[info] Iteration 1: 328081.372 ops/s
[info] Iteration 2: 369703.497 ops/s
[info] Iteration 3: 371471.684 ops/s
[info] Iteration 4: 362630.111 ops/s
[info] Iteration 5: 372868.500 ops/s
[info] # Run progress: 43.75% complete, ETA 00:03:03
[info] # Fork: 4 of 4
[info] # Warmup Iteration 1: 289966.934 ops/s
[info] # Warmup Iteration 2: 369864.795 ops/s
[info] # Warmup Iteration 3: 370581.719 ops/s
[info] # Warmup Iteration 4: 318985.504 ops/s
[info] # Warmup Iteration 5: 287819.941 ops/s
[info] Iteration 1: 310889.685 ops/s
[info] Iteration 2: 313411.212 ops/s
[info] Iteration 3: 299374.767 ops/s
[info] Iteration 4: 300812.244 ops/s
[info] Iteration 5: 305217.473 ops/s
[info] Result "benchmarks.AppendBenchmark.bench00_prepend":
[info] 350735.349 ±(99.9%) 24594.574 ops/s [Average]
[info] (min, avg, max) = (299374.767, 350735.349, 373053.102), stdev = 28323.148
[info] CI (99.9%): [326140.776, 375329.923] (assumes normal distribution)
[info] # JMH version: 1.36
[info] # VM version: JDK 17.0.6, OpenJDK 64-Bit Server VM, 17.0.6+10-jvmci-22.3-b13
[info] # VM invoker: /private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java
[info] # VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:JVMCIThreadsPerNativeLibraryRuntime=1 -XX:-UnlockExperimentalVMOptions
[info] # Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
[info] # Warmup: 5 iterations, 2 s each
[info] # Measurement: 5 iterations, 2 s each
[info] # Timeout: 10 min per iteration
[info] # Threads: 1 thread, will synchronize iterations
[info] # Benchmark mode: Throughput, ops/time
[info] # Benchmark: benchmarks.AppendBenchmark.bench01_append
[info] # Parameters: (seqType = List)
[info] # Run progress: 50.00% complete, ETA 00:02:43
[info] # Fork: 1 of 4
[info] # Warmup Iteration 1: 24454.779 ops/s
[info] # Warmup Iteration 2: 27701.177 ops/s
[info] # Warmup Iteration 3: 29648.150 ops/s
[info] # Warmup Iteration 4: 29607.508 ops/s
[info] # Warmup Iteration 5: 30850.342 ops/s
[info] Iteration 1: 30280.075 ops/s
[info] Iteration 2: 30099.647 ops/s
[info] Iteration 3: 30000.580 ops/s
[info] Iteration 4: 30430.947 ops/s
[info] Iteration 5: 30606.989 ops/s
[info] # Run progress: 56.25% complete, ETA 00:02:22
[info] # Fork: 2 of 4
[info] # Warmup Iteration 1: 24748.018 ops/s
[info] # Warmup Iteration 2: 28221.599 ops/s
[info] # Warmup Iteration 3: 30973.738 ops/s
[info] # Warmup Iteration 4: 31247.369 ops/s
[info] # Warmup Iteration 5: 30812.258 ops/s
[info] Iteration 1: 31222.031 ops/s
[info] Iteration 2: 31107.874 ops/s
[info] Iteration 3: 30658.834 ops/s
[info] Iteration 4: 31381.319 ops/s
[info] Iteration 5: 31282.972 ops/s
[info] # Run progress: 62.50% complete, ETA 00:02:02
[info] # Fork: 3 of 4
[info] # Warmup Iteration 1: 25681.439 ops/s
[info] # Warmup Iteration 2: 28214.213 ops/s
[info] # Warmup Iteration 3: 30657.366 ops/s
[info] # Warmup Iteration 4: 30526.860 ops/s
[info] # Warmup Iteration 5: 31030.973 ops/s
[info] Iteration 1: 31221.948 ops/s
[info] Iteration 2: 31305.710 ops/s
[info] Iteration 3: 30892.019 ops/s
[info] Iteration 4: 31210.856 ops/s
[info] Iteration 5: 31854.893 ops/s
[info] # Run progress: 68.75% complete, ETA 00:01:41
[info] # Fork: 4 of 4
[info] # Warmup Iteration 1: 24203.958 ops/s
[info] # Warmup Iteration 2: 28595.311 ops/s
[info] # Warmup Iteration 3: 30283.665 ops/s
[info] # Warmup Iteration 4: 30848.345 ops/s
[info] # Warmup Iteration 5: 30782.946 ops/s
[info] Iteration 1: 31410.115 ops/s
[info] Iteration 2: 30272.118 ops/s
[info] Iteration 3: 30053.846 ops/s
[info] Iteration 4: 31355.272 ops/s
[info] Iteration 5: 30208.880 ops/s
[info] Result "benchmarks.AppendBenchmark.bench01_append":
[info] 30842.846 ±(99.9%) 487.563 ops/s [Average]
[info] (min, avg, max) = (30000.580, 30842.846, 31854.893), stdev = 561.478
[info] CI (99.9%): [30355.283, 31330.409] (assumes normal distribution)
[info] # JMH version: 1.36
[info] # VM version: JDK 17.0.6, OpenJDK 64-Bit Server VM, 17.0.6+10-jvmci-22.3-b13
[info] # VM invoker: /private/var/root/Library/Caches/Coursier/arc/https/github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.1/graalvm-ce-java17-darwin-amd64-22.3.1.tar.gz/graalvm-ce-java17-22.3.1/Contents/Home/bin/java
[info] # VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:JVMCIThreadsPerNativeLibraryRuntime=1 -XX:-UnlockExperimentalVMOptions
[info] # Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
[info] # Warmup: 5 iterations, 2 s each
[info] # Measurement: 5 iterations, 2 s each
[info] # Timeout: 10 min per iteration
[info] # Threads: 1 thread, will synchronize iterations
[info] # Benchmark mode: Throughput, ops/time
[info] # Benchmark: benchmarks.AppendBenchmark.bench01_append
[info] # Parameters: (seqType = Array)
[info] # Run progress: 75.00% complete, ETA 00:01:21
[info] # Fork: 1 of 4
[info] # Warmup Iteration 1: 296708.697 ops/s
[info] # Warmup Iteration 2: 369165.270 ops/s
[info] # Warmup Iteration 3: 361730.934 ops/s
[info] # Warmup Iteration 4: 366632.239 ops/s
[info] # Warmup Iteration 5: 369881.138 ops/s
[info] Iteration 1: 370730.842 ops/s
[info] Iteration 2: 370632.890 ops/s
[info] Iteration 3: 363285.066 ops/s
[info] Iteration 4: 372244.152 ops/s
[info] Iteration 5: 370680.470 ops/s
[info] # Run progress: 81.25% complete, ETA 00:01:01
[info] # Fork: 2 of 4
[info] # Warmup Iteration 1: 291605.201 ops/s
[info] # Warmup Iteration 2: 368387.971 ops/s
[info] # Warmup Iteration 3: 365050.658 ops/s
[info] # Warmup Iteration 4: 370492.700 ops/s
[info] # Warmup Iteration 5: 371229.690 ops/s
[info] Iteration 1: 372612.797 ops/s
[info] Iteration 2: 371902.134 ops/s
[info] Iteration 3: 364470.398 ops/s
[info] Iteration 4: 372498.651 ops/s
[info] Iteration 5: 372513.308 ops/s
[info] # Run progress: 87.50% complete, ETA 00:00:40
[info] # Fork: 3 of 4
[info] # Warmup Iteration 1: 290894.283 ops/s
[info] # Warmup Iteration 2: 370728.398 ops/s
[info] # Warmup Iteration 3: 368119.242 ops/s
[info] # Warmup Iteration 4: 374613.175 ops/s
[info] # Warmup Iteration 5: 373738.733 ops/s
[info] Iteration 1: 370391.138 ops/s
[info] Iteration 2: 373237.159 ops/s
[info] Iteration 3: 367240.006 ops/s
[info] Iteration 4: 375421.573 ops/s
[info] Iteration 5: 371487.346 ops/s
[info] # Run progress: 93.75% complete, ETA 00:00:20
[info] # Fork: 4 of 4
[info] # Warmup Iteration 1: 270634.693 ops/s
[info] # Warmup Iteration 2: 365066.628 ops/s
[info] # Warmup Iteration 3: 364739.445 ops/s
[info] # Warmup Iteration 4: 373922.797 ops/s
[info] # Warmup Iteration 5: 371789.586 ops/s
[info] Iteration 1: 357838.105 ops/s
[info] Iteration 2: 340189.382 ops/s
[info] Iteration 3: 329223.051 ops/s
[info] Iteration 4: 337319.078 ops/s
[info] Iteration 5: 370994.328 ops/s
[info] Result "benchmarks.AppendBenchmark.bench01_append":
[info] 364745.594 ±(99.9%) 11566.733 ops/s [Average]
[info] (min, avg, max) = (329223.051, 364745.594, 375421.573), stdev = 13320.267
[info] CI (99.9%): [353178.861, 376312.327] (assumes normal distribution)
[info] # Run complete. Total time: 00:05:26
[info] REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on
[info] why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial
[info] experiments, perform baseline and negative tests that provide experimental control, make sure
[info] the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts.
[info] Do not assume the numbers tell you what you want them to tell.
[info] NOTE: Current JVM experimentally supports Compiler Blackholes, and they are in use. Please exercise
[info] extra caution when trusting the results, look into the generated code to check the benchmark still
[info] works, and factor in a small probability of new VM bugs. Additionally, while comparisons between
[info] different JVMs are already problematic, the performance difference caused by different Blackhole
[info] modes can be very significant. Please make sure you use the consistent Blackhole mode for comparisons.
[info] Benchmark (seqType) Mode Cnt Score Error Units
[info] AppendBenchmark.bench00_prepend List thrpt 20 430310237.331 ± 27241588.295 ops/s
[info] AppendBenchmark.bench00_prepend Array thrpt 20 350735.349 ± 24594.574 ops/s
[info] AppendBenchmark.bench01_append List thrpt 20 30842.846 ± 487.563 ops/s
[info] AppendBenchmark.bench01_append Array thrpt 20 364745.594 ± 11566.733 ops/s
[info] Benchmark result is saved to benchmarks/results/01-AppendBenchmark-graal-2.json
[success] Total time: 332 s (05:32), completed Mar 5, 2023, 12:55:47 PM