Skip to content

Commit

Permalink
Added dpbench rodinia infra
Browse files Browse the repository at this point in the history
  • Loading branch information
roxx30198 committed Oct 30, 2023
1 parent 94c2d62 commit 7daea95
Show file tree
Hide file tree
Showing 10 changed files with 36 additions and 2 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/build_and_run.yml
Original file line number Diff line number Diff line change
Expand Up @@ -168,5 +168,8 @@ jobs:
- name: Run benchmarks
run: dpbench -i ${{env.WORKLOADS}} run -r2 --no-print-results || exit 1

- name: Run rodinia benchmarks
run: dpbench -i ${{env.WORKLOADS}} run -r2 --no-print-results --rodinia --no-dpbench|| exit 1

- name: Generate report
run: dpbench -i ${{env.WORKLOADS}} report || exit 1
4 changes: 4 additions & 0 deletions .github/workflows/conda-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,10 @@ jobs:
run: |
dpbench -i numpy -b azimint_hist run --npbench
- name: Run rodinia benchmark
run: |
dpbench run --rodinia --no-dpbench -r 1
upload_anaconda:
name: Upload dppy/label/dev ['${{ matrix.os }}', python='${{ matrix.python }}']

Expand Down
3 changes: 2 additions & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,8 @@ repos:
hooks:
- id: pydocstyle
# TODO: add packages one by one to enforce pydocstyle eventually
files: (^dpbench/config/|^scripts/|^dpbench/console/|^dpbench/infrastructure/benchmark_runner.py|^dpbench/infrastructure/benchmark_validation.py)
files: (^dpbench/config/|^scripts/|^dpbench/console/|^dpbench/infrastructure/benchmark_runner.py|^dpbench/infrastructure/benchmark_validation.py|
^dpbench/benchmarks/rodinia)
args: ["--convention=google"]
# D417 does not work properly:
# https://github.com/PyCQA/pydocstyle/issues/459
Expand Down
1 change: 1 addition & 0 deletions dpbench/benchmarks/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ add_subdirectory(kmeans)
add_subdirectory(knn)
add_subdirectory(gpairs)
add_subdirectory(dbscan)
add_subdirectory(rodinia)

# generate dpcpp version into config
set(FILE ${CMAKE_SOURCE_DIR}/dpbench/configs/framework_info/dpcpp.toml)
Expand Down
13 changes: 13 additions & 0 deletions dpbench/config/reader.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ def read_configs( # noqa: C901: TODO: move modules into config
no_dpbench: bool = False,
with_npbench: bool = False,
with_polybench: bool = False,
with_rodinia: bool = False,
load_implementations: bool = True,
) -> Config:
"""Read all configuration files and populate those settings into Config.
Expand Down Expand Up @@ -85,6 +86,18 @@ def read_configs( # noqa: C901: TODO: move modules into config
)
)

if with_rodinia:
modules.append(
Module(
benchmark_configs_path=os.path.join(
dirname, "../configs/bench_info/rodinia"
),
benchmark_configs_recursive=True,
benchmarks_module="dpbench.benchmarks.rodinia",
path=os.path.join(dirname, "../benchmarks/rodinia"),
)
)

for mod in modules:
if mod.benchmark_configs_path != "":
read_benchmarks(
Expand Down
3 changes: 3 additions & 0 deletions dpbench/configs/bench_info/rodinia/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# SPDX-FileCopyrightText: 2022 - 2023 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
1 change: 1 addition & 0 deletions dpbench/console/_namespace.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ class Namespace(argparse.Namespace):
dpbench: bool
npbench: bool
polybench: bool
rodinia: bool
print_results: bool
validate: bool
run_id: Union[int, None]
Expand Down
1 change: 1 addition & 0 deletions dpbench/console/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ def execute_config(args: Namespace):
implementations=args.implementations,
with_npbench=True,
with_polybench=True,
with_rodinia=True,
)

color_output = args.color
Expand Down
7 changes: 7 additions & 0 deletions dpbench/console/run.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,12 @@ def add_run_arguments(parser: argparse.ArgumentParser):
default=False,
help="Set if run polybench benchmarks.",
)
parser.add_argument(
"--rodinia",
action=argparse.BooleanOptionalAction,
default=False,
help="Set if run rodinia benchmarks.",
)
parser.add_argument(
"-r",
"--repeat",
Expand Down Expand Up @@ -135,6 +141,7 @@ def execute_run(args: Namespace, conn: sqlalchemy.Engine):
no_dpbench=not args.dpbench,
with_npbench=args.npbench,
with_polybench=args.polybench,
with_rodinia=args.rodinia,
)

if args.all_implementations:
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
"bench_info/polybench/linear-algebra/blas/*.toml",
"bench_info/polybench/medley/*.toml",
"bench_info/npbench/*.toml",
"framework_info/*.toml",
"bench_info/rodinia/*.toml" "framework_info/*.toml",
],
},
cmake_args=cmake_args,
Expand Down

0 comments on commit 7daea95

Please sign in to comment.