1

For performance evaluation, I'm using the yardstick benchmark on apache ignite. To increase the memory bandwidth while running the yardstick benchmark(ex.IgnitePutGetBenchmark), I directly modified the yardstick benchmark java source and compiled it. As a result, java class file was created.

1) Source file path
$ vi ~/apache-ignite-2.14.0-bin/benchmarks/sources/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutGetBenchmark.java

2) Compile path
$ cd ~/apache-ignite-2.14.0-bin/benchmarks/sources
$ mvn package
...
[INFO] BUILD SUCCESS
...

3) Class file path
~/apache-ignite-2.14.0-bin/benchmarks/sources/target/classes/org/apache/ignite/yardstick/cache/IgnitePutGetBenchmark.class

And then, I tried to run PutGetBenchmark.

1) bin path
$ bin/benchmark-run-all.sh config/benchmark-sample.properties
...
-cfg ${SCRIPT_DIR}/../config/ignite-localhost-config.xml -nn ${nodesNum} -b ${b} -w ${w} -d ${d} -t ${t} -sm ${sm} -r ${range} -dn IgnitePutGetBenchmark -sn IgniteNode -ds ${ver}atomic-put-get-${b}-backup,\
...

But My modified version of the java source didn't work, the default version of the code seems to work. For example, I added a println statement, but it doesn't log anything.

How can IgnitePutGet benchmark be executed by reflecting the code of the version I modified? Is there something I am doing wrong in the above?

  1. How to compile benchmarks
  2. How to run a benchmark with the modified code applied

0 Answers0