Skip to content

Commit d2ec24a

Browse files
committed
Improved the helper, it can also allocate data now.
1 parent c83b4ce commit d2ec24a

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

kernel_tuner/utils/directives.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -686,9 +686,10 @@ def add_present_openacc_fortran(name: str, size: ArraySize) -> str:
686686
return f" present({name}({','.join(md_size)})) "
687687

688688

689-
def process_directives(langs: Code, source: str, user_dimensions: dict = None) -> dict:
689+
def process_directives(langs: Code, source: str, user_dimensions: dict = None) -> tuple(dict, dict):
690690
"""Helper functions to process all the directives in the code and create tunable functions"""
691691
kernel_strings = dict()
692+
kernel_args = dict()
692693
preprocessor = extract_preprocessor(source)
693694
signatures = extract_directive_signature(source, langs)
694695
bodies = extract_directive_code(source, langs)
@@ -699,4 +700,5 @@ def process_directives(langs: Code, source: str, user_dimensions: dict = None) -
699700
kernel_strings[kernel] = generate_directive_function(
700701
preprocessor, signatures[kernel], bodies[kernel], langs, data[kernel], init, deinit, user_dimensions
701702
)
702-
return kernel_strings
703+
kernel_args[kernel] = allocate_signature_memory(data[kernel], preprocessor, user_dimensions)
704+
return (kernel_strings, kernel_args)

0 commit comments

Comments
 (0)