search for: zdevito

Displaying 9 results from an estimated 9 matches for "zdevito".

Did you mean: devito
2014 Mar 25
3
[LLVMdev] Getting the Debugging JIT-ed Code with GDB example to work
I'm trying to run the example described at: http://llvm.org/docs/DebuggingJITedCode.html I followed the sample command line session (below, with versions numbers for everything), but gdb doesn't stop at the breakpoints as described. Any idea what is wrong? Thanks, Zach zdevito at derp:~/terra/tests$ > ~/clang+llvm-3.4-x86_64-unknown-ubuntu12.04/bin/clang -cc1 -O0 -g > -emit-llvm showdebug.c > zdevito at derp:~/terra/tests$ gdb --args > ~/clang+llvm-3.4-x86_64-unknown-ubuntu12.04/bin/lli -use-mcjit showdebug.ll > 5 > GNU gdb (Ubuntu/Linaro 7.4-2012.04-0u...
2013 Jul 10
2
[LLVMdev] unaligned AVX store gets split into two instructions
...in the llvm 3.2 version and disappears from the 3.3 version if you remove the "align 8"s from kernel.ll which are making it unaligned. Do the two-instruction unaligned loads increase register pressure? Or is something else going on? Zach On Tue, Jul 9, 2013 at 11:33 PM, Zach Devito <zdevito at stanford.edu> wrote: > Thanks for all the the info! I'm still in the process of narrowing down > the performance difference in my code. I'm no longer convinced its related > to only the unaligned loads/stores alone since extracting this part of the > kernel makes the perf...
2013 Sep 19
0
[LLVMdev] unaligned AVX store gets split into two instructions
...ons are due to spill/reloads, which are due to increase register pressure. This matches Zach's analysis. We've filed bug 17285 for this problem. Is there any possibility to avoid splitting in case of multiple loads going together? Dmitry. On Wed, Jul 10, 2013 at 1:12 PM, Zach Devito <zdevito at stanford.edu> wrote: > I've narrowed this down to a single kernel (kernel.ll), which does a > fixed-size matrix-matrix multiply: > > # ~/llvm-32-final/bin/llc kernel.ll -o kernel32.s > # ~/llvm-33-final/bin/llc kernel.ll -o kernel33.s > # ~/llvm-32-final/bin/clang++ har...
2013 Jul 10
3
[LLVMdev] unaligned AVX store gets split into two instructions
...atic analysis on your binary and tells you where the critical path is. http://software.intel.com/en-us/articles/intel-architecture-code-analyzer Thanks, Nadav On Jul 9, 2013, at 10:01 PM, Eli Friedman <eli.friedman at gmail.com> wrote: > On Tue, Jul 9, 2013 at 9:01 PM, Zach Devito <zdevito at gmail.com> wrote: >> I'm seeing a difference in how LLVM 3.3 and 3.2 emit unaligned vector loads >> on AVX. >> 3.3 is splitting up an unaligned vector load but in 3.2, it was emitted as a >> single instruction (details below). >> In a matrix-matrix inner-kern...
2013 Jul 10
0
[LLVMdev] unaligned AVX store gets split into two instructions
...ou where the critical > path is. > http://software.intel.com/en-us/articles/intel-architecture-code-analyzer > > Thanks, > Nadav > > > On Jul 9, 2013, at 10:01 PM, Eli Friedman <eli.friedman at gmail.com> wrote: > > On Tue, Jul 9, 2013 at 9:01 PM, Zach Devito <zdevito at gmail.com> wrote: > > I'm seeing a difference in how LLVM 3.3 and 3.2 emit unaligned vector loads > on AVX. > 3.3 is splitting up an unaligned vector load but in 3.2, it was emitted as > a > single instruction (details below). > In a matrix-matrix inner-kernel, I see...
2013 Jul 10
0
[LLVMdev] unaligned AVX store gets split into two instructions
On Tue, Jul 9, 2013 at 9:01 PM, Zach Devito <zdevito at gmail.com> wrote: > I'm seeing a difference in how LLVM 3.3 and 3.2 emit unaligned vector loads > on AVX. > 3.3 is splitting up an unaligned vector load but in 3.2, it was emitted as a > single instruction (details below). > In a matrix-matrix inner-kernel, I see a ~25% dec...
2013 Jul 10
4
[LLVMdev] unaligned AVX store gets split into two instructions
I'm seeing a difference in how LLVM 3.3 and 3.2 emit unaligned vector loads on AVX. 3.3 is splitting up an unaligned vector load but in 3.2, it was emitted as a single instruction (details below). In a matrix-matrix inner-kernel, I see a ~25% decrease in performance, which seems to be due to this. Any ideas why this changed? Thanks! Zach LLVM Code: define <4 x double> @vstore(<4 x
2016 Jun 30
1
Entry for llvm.org/ProjectsWithLLVM - Terra programming language
Terra: A low-level counterpart to Lua By Zach DeVito (http://cs.stanford.edu/~zdevito) Terra (http://terralang.org/) is a system programming language that is embedded in and meta-programmed by Lua, which handles details like conditional compilation, type systems, namespaces, and templating/function specialization that are normally special constructs in other languages. Terra code s...
2012 May 25
0
[LLVMdev] generating LLVM code that meets the C ABI
I want to generate LLVM functions that meet the C ABI for function calls/returns (preferably on multiple platforms but x86_64 would be OK for now). I know that LLVM doesn't handle this completely automatically (e.g. the type {i32,i32} should be passed as a single i64 on x86_64 linux). Is there any library that automates the generation of function declarations meeting the ABI and emit