Displaying 20 results from an estimated 30000 matches similar to: "[LLVMdev] Questions on llvm and jit"
2010 Mar 26
3
[LLVMdev] Questions on llvm and jit
Hi Reid. Thanks for your response. We will be running this code in different processes across different nodes. Basically we have thousands of "executor" processes that are solely responsible for executing this code generated at compile-time across partitioned data. Rather than each one of these processes invoking the jit and compiling with full opts and all of that, we believe it may
2010 Mar 26
0
[LLVMdev] Questions on llvm and jit
On Tue, Mar 23, 2010 at 4:44 PM, Shasank Chavan
<shanko_chavano at hotmail.com> wrote:
> Hi. I have more questions regarding llvm and using it as a jit for our
> purposes. Also, let me confess that I haven't actually used llvm yet (I'm
> still prototyping using gnu's libjit). Some of the issues that have come up
> from that work so far leads to me these questions:
2010 Mar 26
0
[LLVMdev] Questions on llvm and jit
If you really trying to avoid linking everything into a shared library (easiest choice), consider splitting up the compilation into a few more steps:
1) Compile and optimize once as part of your build, target LLVM bitcode instead of machine code
2) Ship .bc files out to each node
3) Fix-up call instructions in a BasicBlockPass, run JIT without any/many additional IR optimizations enabled
This
2010 Mar 26
1
[LLVMdev] Questions on llvm and jit
If you distribute the .bc to a new machine and JIT it there, you
wouldn't need to apply any relocations to call instructions, since the
JIT will get all the offsets right when it does code generation on the
node.
I would strongly recommend the shared library approach over this one,
because JIT compile time is dominated by code generation, not
optimization. If you distribute the .bcs, then
2010 Mar 07
4
[LLVMdev] llvm and flushing instruction cache
Hi. I have a very quick question. Is the instruction cache flushed by the llvm jit before code in memory is written to or executed? I'm assuming so, but I can't find where in the source code this is happening. In particular I searched for clflush, invd, and wbinvd instructions, but couldn't find them. And if it's not necessary to do this, can you please explain why? (I'm
2010 Feb 03
5
[LLVMdev] Using LLVM to generate x86 dynamically in memory
Hi Jim. Thanks for your speedy response. I'm not entirely sure if a JIT is what I'm looking for. I'm basically looking for a dll with an interface that takes a C program as input and compiles and optimizes it to native x86 instructions in an in-memory buffer. I don't want the dll the execute it, and I don't particularly want to translate our expressions into LLVM bitcode
2010 Mar 07
0
[LLVMdev] llvm and flushing instruction cache
On Sat, Mar 6, 2010 at 10:34 PM, Shasank Chavan
<shanko_chavano at hotmail.com> wrote:
> Hi. I have a very quick question. Is the instruction cache flushed by the
> llvm jit before code in memory is written to or executed? I'm assuming so,
> but I can't find where in the source code this is happening. In particular
> I searched for clflush, invd, and wbinvd
2010 Feb 03
0
[LLVMdev] Using LLVM to generate x86 dynamically in memory
This can be done. Last year I took clang (v. 2.5) and hacked the compiler driver into a library which would JIT C source to memory.
I then created a Zend extension which utilized the library. No external frameworks were used in these hacks, and were fairly simple
to implement once one knew how to use the Clang/LLVM libraries.
I cannot speak to your dll requirement, as the work was done for Linux.
2010 Feb 03
0
[LLVMdev] Using LLVM to generate x86 dynamically in memory
On Tue, Feb 2, 2010 at 7:39 PM, Shasank Chavan
<shanko_chavano at hotmail.com> wrote:
> Hi Jim. Thanks for your speedy response. I'm not entirely sure if a JIT is
> what I'm looking for. I'm basically looking for a dll with an interface
> that takes a C program as input and compiles and optimizes it to native x86
> instructions in an in-memory buffer. I don't
2010 Feb 02
2
[LLVMdev] Using LLVM to generate x86 dynamically in memory
Hi. I'm very new to LLVM, and have read some of the documentation online. Before I invest too much time, however, in learning about LLVM, I'd like to know if it can be used for my purpose. We currently have a critical runtime component that evaluates expressions via interpretation. The bytecode that we generate goes through various optimization phases similarly to that of optimizing
2010 Feb 02
0
[LLVMdev] Using LLVM to generate x86 dynamically in memory
On Feb 2, 2010, at 3:05 PM, Shasank Chavan wrote:
> Hi. I'm very new to LLVM, and have read some of the documentation online. Before I invest too much time, however, in learning about LLVM, I'd like to know if it can be used for my purpose. We currently have a critical runtime component that evaluates expressions via interpretation. The bytecode that we generate goes through
2006 Apr 18
1
[LLVMdev] Re: LLVM-based JVM JIT for libgcj
>>>>> "Jakob" == Jakob Praher <jp at hapra.at> writes:
Jakob> I would definitely like to look into it.
I'll send it in private email.
Jakob> Yes very much! How did you find writing it directly in
Jakob> SSA-form.
Actually I used what Chris called "the alloca trick"... the JIT
doesn't really generate SSA form but instead uses alloca to
2006 Apr 18
2
[LLVMdev] LLVM-based JVM JIT for libgcj
>>>>> "Chris" == Chris Lattner <sabre at nondot.org> writes:
>> FWIW I actually did this work twice, once for libjit and once for
>> LLVM. I'm happy to provide a comparison, from a jit-writing
>> perspective, if you're interested.
Chris> Given your experience with both, I'd be very interested in any
Chris> thoughts you have on
2006 Apr 18
0
[LLVMdev] Re: LLVM-based JVM JIT for libgcj
hi Tom,
I am really glad that someone has found time to step into that :-).
Tom Tromey wrote:
> I recently wrote an LLVM-based JIT plugin for libgcj and I thought
> it'd be worthwhile to mention it here.
>
> It is in cvs on sourceforge, but afaics anonymous cvs there is pretty
> broken at the moment... so if you want a copy, ask and I will email it
> to you.
wow. that is
2006 Apr 18
0
[LLVMdev] LLVM-based JVM JIT for libgcj
On Tue, 18 Apr 2006, Tom Tromey wrote:
> I recently wrote an LLVM-based JIT plugin for libgcj and I thought
> it'd be worthwhile to mention it here.
Cool!
> Exception handling definitely does not work, I didn't even try to
> implement it yet. I've been thinking about having some kind of simple
> bridge between the LLVM and GCC worlds here -- very inefficient, but
>
2006 Apr 18
4
[LLVMdev] LLVM-based JVM JIT for libgcj
I recently wrote an LLVM-based JIT plugin for libgcj and I thought
it'd be worthwhile to mention it here.
It is in cvs on sourceforge, but afaics anonymous cvs there is pretty
broken at the moment... so if you want a copy, ask and I will email it
to you.
Basically I hacked libgcj to (optionally) dynamically load JIT module
at startup. If a JIT is loaded then bytecode is passed to it rather
2009 Mar 03
0
[LLVMdev] Issue with paper http://llvm.org/devmtg/2008-08/Geoffray_VMKitProject.pdf and presentation http://hal.inria.fr/docs/00/35/45/77/PDF/RR-6799.pdf
Dear all,
First, sorry for all that noise. I know you guys *just don't care*TM,
but this requires some clarification. I won't say more than what's in
this email.
The VMKit paper dates from early 2008. It compares VMKit with pnet 0.7.4
and not the latest release (0.8.0) because we were not able to get any
information to build it correctly at the time; the website that hosted
2009 Mar 03
3
[LLVMdev] Issue with paper http://llvm.org/devmtg/2008-08/Geoffray_VMKitProject.pdf and presentation http://hal.inria.fr/docs/00/35/45/77/PDF/RR-6799.pdf
Hi Chris,
Just in case that this information does not get corrupted I want to
point to the issue:
In http://llvm.org/devmtg/2008-08/Geoffray_VMKitProject.pdf it is on
page 21: "VMKit, Mono, PNet", Array bounds checks.
In http://hal.inria.fr/docs/00/35/45/77/PDF/RR-6799.pdf it is on page
17: "We compare N3 with Mono [9] version 1.2.6, and PNet version 0.7.4
[2], which uses
2009 Apr 20
2
[LLVMdev] Issue with paper http://llvm.org/devmtg/2008-08/Geoffray_VMKitProject.pdf and presentation http://hal.inria.fr/docs/00/35/45/77/PDF/RR-6799.pdf
Dear all,
This new version of the paper at:
http://hal.archives-ouvertes.fr/docs/00/36/53/37/PDF/RR-6799.pdf
got ride of libJIT. Now my question is the how scientific is this
research and research paper if instead of using libJIT and
Portable.NET JIT:
authors of "VMKit: a Substrate for Virtual Machines by Nicolas
Geoffray — Gaël Thomas— Charles Clément —Bertil Folliot — Gilles
2006 Apr 18
0
[LLVMdev] LLVM-based JVM JIT for libgcj
On Tue, 18 Apr 2006, Tom Tromey wrote:
>>>>>> "Chris" == Chris Lattner <sabre at nondot.org> writes:
>>> FWIW I actually did this work twice, once for libjit and once for
>>> LLVM. I'm happy to provide a comparison, from a jit-writing
>>> perspective, if you're interested.
>
> Chris> Given your experience with both,