Hi all,

Our next Research IT Reading Group topic will be: HPC optimization and
auto-tuning for Python code w/SEJITS

When: Thursday, October 9th from noon - 1pm

Where: 200C Warren Hall, 2195 Hearst St (see building access instructions
below).

The presentation and discussion will be facilitated by Chick Markley, Staff
Programmer for the Aspire Lab <https://aspire.eecs.berkeley.edu/> in EECS.

Chick writes: “If you write code in the high-level language Python, or wish
that you could instead of writing in a low-level language like
C/Fortran/OpenCL by hand, then SEJITS is an option that allows you to take
advantage of high performance hardware such as GPUs and MICs by allowing
you to write specialized kernels in Python that bridge that gap. Our
framework provides tools to generate code at runtime, transparent to the
user, with autotuning that specifically targets the application and the
hardware environment.

We are looking for use cases with Python applications and domain experts
that might benefit from SEJITS specializers.”

Here's the background material for review prior to our meeting:

⇒ ​SEJITS (​Selected Embedded Just-In-Time Speciali​zation​) implements
software patterns associated with computational or energy intensive
algorithms (see Berkeley software motifs
<http://www.eecs.berkeley.edu/Pubs/TechRpts/2008/EECS-2008-23.pdf>). These
specializers exploit run-time information and auto-tuning to ​generate low
level code that ​achieves​ near maximal performance in this domain.

⇒ SEJITS was developed by the AspireLab, formerly ParLab, with large
contributions from Shoaib Kamal, originally at ParLab and now at MIT.  The main
paper describing this work is here
<http://www.eecs.berkeley.edu/~krste/papers/SEJITS-pmea2009.pdf>.

---

More details are available on the main website at: sejits.org

All of the code is open source and available on github.com/ucb-sejits

The core code is CTree <https://github.com/ucb-sejits/ctree>, A framework
for writing SEJITS specializers

Also on the website is a collection of specializers for applications, the
most ​mature specializer​s​ are for stencil code
<https://github.com/ucb-sejits/stencil_code> and also hindemith
(development branch)
<https://github.com/ucb-sejits/hindemith/tree/development> which is
collection of linear algebra specializers optimized for optical flow
applications.


---

Warren Hall access: For those who do not have keycard access to the
building, please take the elevator to the second floor (stairwell door
requires keycard). Before noon, let the receptionist know you're joining
the Reading Group in 200C and s/he will let you in and show you the way.
After noon, look for a sign next to the (closed) receptionist window to the
right as you exit the elevators. We'll post a note with a phone number that
you can call or text, and someone will come out to open the locked doors.

Cheers,

Camille

Reply via email to