search for: lazy

Displaying 20 results from an estimated 3950 matches for "lazy".

2009 Oct 28
7
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
In r85295, in response to the discussion at http://llvm.org/PR5184 (Lazy JIT ain't thread-safe), I changed the default JIT from lazy to non-lazy. It has since come to my attention that this may have been the wrong change, so I wanted to ask you guys. A couple reasons to make the default non-lazy compilation: * The lack of thread-safety surprises new users * Crashes...
2009 Oct 28
2
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
On Wed, Oct 28, 2009 at 9:50 AM, Chris Lattner <clattner at apple.com> wrote: > > On Oct 28, 2009, at 9:41 AM, Jeffrey Yasskin wrote: > >> In r85295, in response to the discussion at http://llvm.org/PR5184 >> (Lazy JIT ain't thread-safe), I changed the default JIT from lazy to >> non-lazy. It has since come to my attention that this may have been >> the wrong change, so I wanted to ask you guys. >> >> A couple reasons to make the default non-lazy compilation: >> * The lack of...
2009 Oct 28
0
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
On Oct 28, 2009, at 9:41 AM, Jeffrey Yasskin wrote: > In r85295, in response to the discussion at http://llvm.org/PR5184 > (Lazy JIT ain't thread-safe), I changed the default JIT from lazy to > non-lazy. It has since come to my attention that this may have been > the wrong change, so I wanted to ask you guys. > > A couple reasons to make the default non-lazy compilation: > * The lack of thread-safety surpr...
2009 Oct 28
0
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...who run into this problem don't think they're doing anything unusual, and in fact their code works fine with the eager JIT. People shouldn't stumble into broken behavior, and defaults are good to prevent stumbling. To avoid misconceptions, Unladen Swallow added the line to turn off the lazy jit months ago, and we'll keep that line whatever the decision is here. We might take advantage of a thread-safe code-patching facility eventually, but we've been designing assuming nobody else will implement that for us. I favor changing the default because it'll help newbies, not beca...
2009 Oct 28
0
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...9;d always prefer correct but slow behavior by default, and explicitly enabling dangerous (but in some cases fast) behavior. I would also point out that it seems that most of the people new to the JIT are surprised by the current behavior, where as those who would be surprised by needing to enable lazy JIT are those long familiar with past behavior. In the OSS world, I always favor easing adoption over maintaining the status quo. My meager 2 cents. -Chandler On Wed, Oct 28, 2009 at 9:41 AM, Jeffrey Yasskin <jyasskin at google.com> wrote: > In r85295, in response to the discussion at ht...
2009 Oct 29
2
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
There is nothing here that prevents users from enabling or disabling lazy JIT. We're talk about flipping the default behavior. That does not make the API any better or worse. Nor does it fix the inherent thread safety issue. I can tell you there are no Apple clients that depend on the lazy JIT. Please do not imply I am being secretive. I am simply busy. My o...
2009 Oct 28
5
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...) > behavior. The behavior is only dangerous because people are using it in new and different ways. > > I would also point out that it seems that most of the people new to > the JIT are surprised by the current behavior, where as those who > would be surprised by needing to enable lazy JIT are those long > familiar with past behavior. In the OSS world, I always favor easing > adoption over maintaining the status quo. This argues for better documentation. I'd prefer for EE to abort if user is asking for a known dangerous configuration (multi-threaded and lazy). The big...
2009 Oct 29
3
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...th a lot of what you wrote below, but it's not worth > arguing about if there's a compromise we can both live with. > > On Thu, Oct 29, 2009 at 12:36 AM, Evan Cheng <evan.cheng at apple.com> wrote: >> There is nothing here that prevents users from enabling or disabling lazy >> JIT. We're talk about flipping the default behavior. That does not make the >> API any better or worse. Nor does it fix the inherent thread safety issue. >> >> I can tell you there are no Apple clients that depend on the lazy JIT. >> Please do not imply I am be...
2009 Oct 28
0
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...<jyasskin at google.com> wrote: > On Wed, Oct 28, 2009 at 9:50 AM, Chris Lattner <clattner at apple.com> wrote: >> >> On Oct 28, 2009, at 9:41 AM, Jeffrey Yasskin wrote: >> >>> In r85295, in response to the discussion at http://llvm.org/PR5184 >>> (Lazy JIT ain't thread-safe), I changed the default JIT from lazy to >>> non-lazy. It has since come to my attention that this may have been >>> the wrong change, so I wanted to ask you guys. >>> >>> A couple reasons to make the default non-lazy compilation: >&g...
2009 Oct 29
0
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...ings. I disagree with a lot of what you wrote below, but it's not worth arguing about if there's a compromise we can both live with. On Thu, Oct 29, 2009 at 12:36 AM, Evan Cheng <evan.cheng at apple.com> wrote: > There is nothing here that prevents users from enabling or disabling lazy > JIT. We're talk about flipping the default behavior. That does not make the > API any better or worse. Nor does it fix the inherent thread safety issue. > > I can tell you there are no Apple clients that depend on the lazy JIT. > Please do not imply I am being secretive. I am s...
2009 Oct 29
0
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...t you wrote below, but it's not worth >> arguing about if there's a compromise we can both live with. >> >> On Thu, Oct 29, 2009 at 12:36 AM, Evan Cheng <evan.cheng at apple.com> wrote: >>> There is nothing here that prevents users from enabling or disabling lazy >>> JIT. We're talk about flipping the default behavior. That does not make the >>> API any better or worse. Nor does it fix the inherent thread safety issue. >>> >>> I can tell you there are no Apple clients that depend on the lazy JIT. >>> Please d...
2009 Oct 29
3
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
Hi Jeffrey, Jeffrey Yasskin wrote: > Cool, I'll start implementing it. > Great! Thanks. Just to clarify things: on my end, it doesn't really matter what is the default behavior, as long as vmkit can continue to have the existing behavior of lazy compilation. With Chris' solution, I was wondering how you would implement the getPointerToFunction{Eager, Lazy} functions when the getPointerToFunction is called by the JIT, not the user. For example, when Function F calls Function G and the JIT needs an address for G (either a callback or...
2009 Oct 29
0
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...> > Jeffrey Yasskin wrote: >> >> Cool, I'll start implementing it. >> > > Great! Thanks. > > Just to clarify things: on my end, it doesn't really matter what is the > default behavior, as long as vmkit can continue to have the existing > behavior of lazy compilation. With Chris' solution, I was wondering how you > would implement the getPointerToFunction{Eager, Lazy} functions when the > getPointerToFunction is called by the JIT, not the user. For example, when > Function F calls Function G and the JIT needs an address for G (either a...
2009 Oct 28
1
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
Code that takes the default lazy behavior will still work if the default is changed to non-lazy. The only way non-lazy breaks (as far as I know) is if you've already done some lazy JITting and left some lazy stubs laying around. And code that does that will still work, after adjusting to an API change. This is one of the le...
2009 Nov 01
1
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...e defaulted to the safer option, but this patch seems like the wrong thing to do. Evan, you wrote, "there are existing customers out there that are using previous llvm release who will not appreciate the API change." Who are they? Recall that after my original change they can get back to lazy compilation by adding jit->DisableLazyCompilation(false) to their code. They have no need for #ifdefs. I still think that having a default that's right in nearly all cases is the best option (the only concrete counter-example I've seen is lli), but I'm happy to write another patch...
2009 Nov 01
1
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...t;>> >>>>> >>>> Great! Thanks. >>>> >>>> Just to clarify things: on my end, it doesn't really matter what is the >>>> default behavior, as long as vmkit can continue to have the existing >>>> behavior of lazy compilation. With Chris' solution, I was wondering how you >>>> would implement the getPointerToFunction{Eager, Lazy} functions when the >>>> getPointerToFunction is called by the JIT, not the user. For example, when >>>> Function F calls Function G and the J...
2009 Oct 28
0
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
On Oct 28, 2009, at 1:10 PM, Renato Golin wrote: > Creating another method (getLazyFunctionPointer) or passing a boolean, > enum, whatever seems like the best course of action right now. > I think that this is a great idea. Instead of making "lazy or not" be a policy maintained by the JIT, why don't we approach this as a bug in the current API. Perhaps...
2007 Aug 23
5
[PATCH] Fix preemptible lazy mode bug
I recently sent off a fix for lazy vmalloc faults which can happen under = paravirt when lazy mode is enabled. Unfortunately, I jumped the gun a = bit on fixing this. I neglected to notice that since the new call to = flush the MMU update queue is called from the page fault handler, it can = be pre-empted. Both VMI and Xen us...
2007 Aug 23
5
[PATCH] Fix preemptible lazy mode bug
I recently sent off a fix for lazy vmalloc faults which can happen under = paravirt when lazy mode is enabled. Unfortunately, I jumped the gun a = bit on fixing this. I neglected to notice that since the new call to = flush the MMU update queue is called from the page fault handler, it can = be pre-empted. Both VMI and Xen us...
2009 Oct 28
4
[LLVMdev] Should LLVM JIT default to lazy or non-lazy?
...good point when not to change the default even when it's dangerous) is the strcpy() in the libc. It's dangerous, malicious, bearing stupid, but still there. You have the strncpy (and all associated variants) but it's not compulsory nor the default behaviour. Creating another method (getLazyFunctionPointer) or passing a boolean, enum, whatever seems like the best course of action right now. I understand that passing lots of Function*s to the JIT and only generating what's really executed would be "nice" but (as was pointed out before) this is signal of bad code. You shou...