Proceedings of the 6th ACM SIGPLAN International Workshop on Libraries, Languages and Compilers for Array Programming 2019
DOI: 10.1145/3315454.3329956
|View full text |Cite
|
Sign up to set email alerts
|

ALPyNA: acceleration of loops in Python for novel architectures

Abstract: We present ALPyNA, an automatic loop parallelization framework for Python, which analyzes data dependences within nested loops and dynamically generates CUDA kernels for GPU execution. The ALPyNA system applies classical dependence analysis techniques to discover and exploit potential parallelism. The skeletal structure of the dependence graph is determined statically (if possible) or at runtime; this is combined with type and bounds information discovered at runtime, to auto-generate high-performance kernels … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
6
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
3
1
1

Relationship

1
4

Authors

Journals

citations
Cited by 5 publications
(6 citation statements)
references
References 18 publications
0
6
0
Order By: Relevance
“…This execution time includes the overhead of transferring data back and forth between host and GPU. A breakdown of analysis, compilation and execution times for four benchmarks is given in prior work [17] and shows that execution time for large domain sizes quickly dominates. Table 1 report minimum, maximum, and geometric mean speedup achieved by ALPyNA over the CPython interpreter.…”
Section: Methodsmentioning
confidence: 99%
See 3 more Smart Citations
“…This execution time includes the overhead of transferring data back and forth between host and GPU. A breakdown of analysis, compilation and execution times for four benchmarks is given in prior work [17] and shows that execution time for large domain sizes quickly dominates. Table 1 report minimum, maximum, and geometric mean speedup achieved by ALPyNA over the CPython interpreter.…”
Section: Methodsmentioning
confidence: 99%
“…We have already published a brief description and preliminary study of an earlier version of ALPyNA [17]. Since that report, we have extended the framework to handle a richer set of loop nest semantics.…”
Section: Relation To Previous Workmentioning
confidence: 99%
See 2 more Smart Citations
“…Rather than require that developers have parallel programming expertise, our approach is to automatically parallelize loop nests in vanilla Python on GPUs. The ALPyNA framework has demonstrated significant reduction in runtimes of large and moderately complex loop nests [14,15] (Section 2). However offload overheads like kernel compilation and data transfer mean that offloading small loops is slower than CPU execution.…”
Section: Introductionmentioning
confidence: 99%