Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8244490: [vector] Move Vector API micro benchmarks under test/micro #77

Closed
Closed
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
@@ -0,0 +1,26 @@
% Benchmarking Vector API

Benchmarks are generted from scripts in this directory to `test/micro/org/openjdk/bench/jdk/incubator/vector/operation`

## Test selection
Run benchmarks from the top level git dir using:

``` shell
make test TEST="micro:<benchmark-name>" CONF=linux-x86_64-server-release
### One Test
make test TEST="micro:Int64Vector" CONF=linux-x86_64-server-release
### Run all tests -- WARNING requires ~4-5 hours
make test TEST="micro:org.openjdk.bench.jdk.incubator.vector" CONF=linux-x86_64-server-release
```

### JMH Configuration
See `https://github.com/openjdk/jdk/blob/master/doc/testing.md` or `doc/testing.md` dir in this git repo for more detailed steps on running the benchmarks for Vector API at `test/micro/org/openjdk/bench/jdk/incubator/vector/operation`.

From doc/testing.md:
To be able to run microbenchmarks, `configure` needs to know where to find the
JMH dependency. Use `--with-jmh=<path to JMH jars>` to point to a directory
containing the core JMH and transitive dependencies. The recommended
dependencies can be retrieved by running `sh make/devkit/createJMHBundle.sh`,
after which `--with-jmh=build/jmh/jars` should work.

This file was deleted.

This file was deleted.

@@ -24,8 +24,8 @@
# questions.
#

VECTORTESTS_HOME="$(pwd)"
JDK_SRC_HOME="./../../../../../"
JDK_SRC_HOME="$(git rev-parse --show-toplevel)"
VECTORTESTS_HOME="$JDK_SRC_HOME/test/jdk/jdk/incubator/vector/"
JAVA="${JAVA_HOME}/bin/java"
JAVAC="${JAVA_HOME}/bin/javac"
BUILDLOG_FILE="./build.log"
@@ -38,11 +38,11 @@ TEMPLATE_FILE="unit_tests.template"
TESTNG_JAR="${TESTNG_PLUGIN}/plugins/org.testng.source_6.13.1.r201712040515.jar"
TESTNG_RUN_JAR="${TESTNG_PLUGIN}/plugins/org.testng_6.13.1.r201712040515.jar"
JCOMMANDER_JAR="${TESTNG_PLUGIN}/plugins/com.beust.jcommander_1.72.0.jar"
TEST_ITER_COUNT=100

PERF_TEMPLATE_FILE="perf_tests.template"
PERF_SCALAR_TEMPLATE_FILE="perf_scalar_tests.template"
PERF_DEST="benchmark/src/main/java/benchmark/jdk/incubator/vector/"
PERF_DEST="$JDK_SRC_HOME/test/micro/org/openjdk/bench/jdk/incubator/vector/operation"


function Log () {
if [ $1 == true ]; then
@@ -261,4 +261,3 @@ do
done

rm -fr build

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2018, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,7 @@
* questions.
*/

package benchmark.jdk.incubator.vector;
package org.openjdk.bench.jdk.incubator.vector.operation;

#warn This file is preprocessed before being compiled

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2018, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,7 @@
* questions.
*/

package benchmark.jdk.incubator.vector;
package org.openjdk.bench.jdk.incubator.vector.operation;

#warn This file is preprocessed before being compiled

@@ -21,7 +21,7 @@
* questions.
*/

package benchmark.bigdata;
package org.openjdk.bench.jdk.incubator.vector.bigdata;

import jdk.incubator.vector.ByteVector;
import jdk.incubator.vector.Vector;
@@ -21,7 +21,7 @@
* questions.
*/

package benchmark.bigdata;
package org.openjdk.bench.jdk.incubator.vector.bigdata;

import jdk.incubator.vector.IntVector;
import jdk.incubator.vector.LongVector;