ASP, a SEJITS framework for Python
ASP is the rapidly evolving open-source SEJITS framework that uses Python as the embedding language for DSELs and as the authoring language for both DSEL compilers and the apps that use them:
- Application writers can download and use a growing variety of specializers in their Python scientific apps; the specializers target a variety of hardware platforms, including multicore (with Cilk or OpenMP compilers), GPUs (with Cuda compilers), and cloud computing (using the Spark framework).
- Specializer writers can create new DSELs to support their own algorithms, or extend existing DSEL compilers to target new backends. We urge you to use GitHub pull requests to contribute your own code back to ASP.
- ASP GitHub repository including Wiki documentation
- Self-service developer training: the ASP MOOC hosted on EdX Edge [link coming soon]
We accelerate 2D convolution by on GPUs by reducing memory communication, prefetching data to registers, unrolling loops, and utilizing the texture cache. Our techniques draw on Vasily Volkov’s Better Performance at Lower Occupancy line of work. Target applications include computer vision problems like feature extraction and sliding-window object detection.