Index: www/trunk/SummerOfCode/2016.html =================================================================== --- www/trunk/SummerOfCode/2016.html +++ www/trunk/SummerOfCode/2016.html @@ -95,6 +95,9 @@

Monolithic kernels, like linux, did not provide a hardening mechanism on the kernel modules' memory access. Modules in Linux could do almost everything. Arbitary write and read may cause system crash, information leak, and even rootkit injection. There is a great need to implement a memory hardening mechanism to limit the behavior of a kernel module. This projects will enhance the 'Baggy Bounds with Accurate Checking' (BBAC). By adding information to the memory object's padding area, we can perform various safety checks with limited overhead. I will mainly focus on providing runtime access policy hardening. This work will prevent most of illegal memory accesses efficiently.

+

Proposal

+

Reporting interval: Weekly

+

Personal website/blog: Zhengyang Liu

Enabling Polyhedral Optimizations in Julia

Julia is a dynamic programming language that, over the past few years, gained interest in the open-source community, especially in the field of scientific computing. Julia programs are executed by a virtual machine that translates the source code, during run-time, to machine code based on the LLVM compiler framework. LLVM provides a variety of analyses and transformation capabilities that are leveraged to optimize programs and facilitate efficient execution. More recently, LLVM was enhanced by a new optimization framework, namely Polly, that supports automatic parallelization and data-locality optimizations based on the polyhedral model. Polly is able to speed up compute kernels significantly, especially in the context of dense linear algebra and iterative stencil computations. In the course of this project I plan to integrate Polly into Julia to enable polyhedral optimizations for Julia programs.

Proposal