InplaceOps.jl is another package that can help: it substitutes some matrix operations with their mutable BLAS-based equivalents.
On 21 July 2014 10:10, Tim Holy <[email protected]> wrote: > codegen is a big one, as are inference.jl, gf.c, and cgutils.cpp. But there > are optimization sprinkled throughout (e.g., ccall.cpp). > > You might be interested in this: > https://github.com/JuliaLang/julia/issues/3440 > > Most of the optimizations so far are low level; most of the higher-level stuff > tends to be macros in packages (@devec being a prime example, I'm working on > another now). The fact that @devec didn't work for you is evidence that this > is nontrivial (I bet that Dahua would be interested in contributions that > improve it). In the longer run, it might be interesting to experiment with > LLVM's Polly, but I'm not very clear on how far that project has gotten in > practice. > > --Tim > > On Monday, July 21, 2014 03:51:11 PM Andrei wrote: >> Could you please point me to where these optimizations take place? I see >> some other transformations (like escape analysis, for example) happening in >> codegen, are there any other places I should look at? >> >> On Mon, Jul 21, 2014 at 2:43 PM, Tim Holy <[email protected]> wrote: >> > On Monday, July 21, 2014 02:33:26 PM Andrei wrote: >> > > I see one disadvantage of using these tools, however - they are much >> > >> > harder >> > >> > > to read. Are there any plans for automatic code optimization on compiler >> > > level? >> > >> > There are already many optimizations in place. But there's always more you >> > could do. >> > >> > --Tim >
