Category Archives: Uncategorized

LLVM backend

A lot has happened in the meantime. Some things I’ve been working on: An llvm code generation backend Optimizing broadcasting (Fortran’s SPREAD) through loop-invariant code motion where possible Finding optimal tiling parameters Optimal strength reduction for index calculation Ways to … Continue reading

Posted in Uncategorized | Leave a comment

Progress Update

I keep forgetting to blog, so here goes. The vector expression compiler has gained a good number of specializations, such as – strided (with a preference to C or Fortran order) – inner dimension contiguous (C/Fortran) – contiguous (C/Fotran) – … Continue reading

Posted in Uncategorized | Leave a comment

break

I’m going to take a break for a week or so, to give my shoulders some rest, since they’ve been troubling me.

Posted in Uncategorized | Leave a comment

Vector expression compiler

I started a new project to compile vector expressions using any code generation backend. The project allows easy mapping of foreign ASTs and types onto the new project’s AST and type system, and then specializes the AST according to the … Continue reading

Posted in Uncategorized | Leave a comment

Refactoring

The refactoring has begun, buffer and memoryview indexing is now separated (http://tinyurl.com/cb86mn4), but at some point we need to rewrite all type analysis as a (set of) transforms. I’m going to split the type analysis some more, and refactor some … Continue reading

Posted in Uncategorized | Leave a comment

gsoc 2012

So the gsoc has started, I’m starting off with some (large) refactoring of several parts of Cython which have grown to an unmanageable state of needless complexity.

Posted in Uncategorized | Leave a comment

Memoryviews

I realized that I haven’t blogged in quite a while. So here is an update. I’ve done quite a bit on memoryviews. Firstly, I finished Cython utility codes (this is already merged) and added a utility code loader for normal … Continue reading

Posted in Uncategorized | Leave a comment