Skip to content

Commit 75aac71

Browse files
committed
Updated examples.
1 parent a3a3aee commit 75aac71

File tree

2 files changed

+17
-11
lines changed

2 files changed

+17
-11
lines changed

examples/directives/vector_add_c_openacc.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,16 @@
33

44
from kernel_tuner import tune_kernel
55
from kernel_tuner.utils.directives import (
6+
Code,
7+
OpenACC,
8+
Cxx,
69
extract_directive_signature,
710
extract_directive_code,
811
extract_preprocessor,
912
generate_directive_function,
1013
extract_directive_data,
1114
allocate_signature_memory,
1215
)
13-
from collections import OrderedDict
1416

1517
code = """
1618
#include <stdlib.h>
@@ -38,15 +40,16 @@
3840
"""
3941

4042
# Extract tunable directive
43+
app = Code(OpenACC(), Cxx())
4144
preprocessor = extract_preprocessor(code)
42-
signature = extract_directive_signature(code)
43-
body = extract_directive_code(code)
45+
signature = extract_directive_signature(code, app)
46+
body = extract_directive_code(code, app)
4447
# Allocate memory on the host
45-
data = extract_directive_data(code)
48+
data = extract_directive_data(code, app)
4649
args = allocate_signature_memory(data["vector_add"], preprocessor)
4750
# Generate kernel string
4851
kernel_string = generate_directive_function(
49-
preprocessor, signature["vector_add"], body["vector_add"], data=data["vector_add"]
52+
preprocessor, signature["vector_add"], body["vector_add"], app, data=data["vector_add"]
5053
)
5154

5255
tune_params = dict()

examples/directives/vector_add_fortran_openacc.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,16 @@
33

44
from kernel_tuner import tune_kernel
55
from kernel_tuner.utils.directives import (
6+
Code,
7+
OpenACC,
8+
Fortran,
69
extract_directive_signature,
710
extract_directive_code,
811
extract_preprocessor,
912
generate_directive_function,
1013
extract_directive_data,
1114
allocate_signature_memory,
1215
)
13-
from collections import OrderedDict
1416

1517
code = """
1618
#define VECTOR_SIZE 1000000
@@ -33,18 +35,19 @@
3335
"""
3436

3537
# Extract tunable directive
38+
app = Code(OpenACC(), Fortran())
3639
preprocessor = extract_preprocessor(code)
37-
signature = extract_directive_signature(code)
38-
body = extract_directive_code(code)
40+
signature = extract_directive_signature(code, app)
41+
body = extract_directive_code(code, app)
3942
# Allocate memory on the host
40-
data = extract_directive_data(code)
43+
data = extract_directive_data(code, app)
4144
args = allocate_signature_memory(data["vector_add"], preprocessor)
4245
# Generate kernel string
4346
kernel_string = generate_directive_function(
44-
preprocessor, signature["vector_add"], body["vector_add"], data=data["vector_add"]
47+
preprocessor, signature["vector_add"], body["vector_add"], app, data=data["vector_add"]
4548
)
4649

47-
tune_params = OrderedDict()
50+
tune_params = dict()
4851
tune_params["nthreads"] = [32 * i for i in range(1, 33)]
4952
metrics = dict()
5053
metrics["GB/s"] = lambda x: ((2 * 4 * len(args[0])) + (4 * len(args[0]))) / (x["time"] / 10**3) / 10**9

0 commit comments

Comments
 (0)