[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Safety of enabling JIT
From: |
Rik |
Subject: |
Re: Safety of enabling JIT |
Date: |
Mon, 09 Dec 2013 08:44:35 -0800 |
On 12/08/2013 10:26 PM, John W. Eaton wrote:
> On 12/09/2013 12:10 AM, Rik wrote:
>> On 12/08/2013 10:00 AM, address@hidden wrote:
>>> Message: 2
>>> Date: Sun, 8 Dec 2013 00:33:14 +0200
>>> From: Susi Lehtola <address@hidden>
>>> To: Octave Maintainers List <address@hidden>
>>> Subject: Safety of enabling JIT
>>> Message-ID: <address@hidden>
>>> Content-Type: text/plain; charset=US-ASCII
>>>
>>> Hi,
>>>
>>>
>>> configure reports
>>> --enable-jit (EXPERIMENTAL) enable JIT compiler
>>> but this seems to be the default when llvm is available.
>>>
>>> How safe is the option nowadays?
>>
>> It *seems* safe. First, even when the JIT compiler is built (configure
>> time decision) the compiler is not enabled at runtime. To do so a user
>> either needs to invoke octave with the option --jit-compiler or use
>> "enable_jit (1)" from within Octave. Second, there are a series of JIT
>> verification tests and they all pass. The only contra-indication has been
>> some memory leaks and weirdness when running JIT under valgrind. Although
>> this may point to a problem, it has never manifested itself in normal
>> operation. It might just be something about the valgrind environment.
>>> Can we enable it for the Fedora
>>> package?
>> I think so, for the reasons above.
>
> If we are going to recommend enabling it, then I think we should make
> that the default.
>
> I still think the JIT compiler should be disabled by default, and we need
> to be sure that enabling the code but not running it doesn't cause any
> trouble.
This is the set-up I've been running for months where JIT is compiled in,
but not enabled at run-time. It's been fine for me. I'm not running
production code, but I do regularly execute the test suite and haven't had
any failures that could be attributed to JIT.
>
> Does linking with the LLVM libraries cause any trouble for Octave?
Not on my Linux machine. There is a bug report about using JIT on MinGW
(https://savannah.gnu.org/bugs/?40608). This, however, is about compiling
and using it at run-time rather than letting it sit dormant.
>
> When it is disabled at run time, we are sure it doesn't have any effect
> on Octave?
I'm only one data point. I think Michael Godfrey runs with JIT actually
enabled at run-time and he hasn't reported problems. Is anyone else
running with LLVM compiled in and JIT either on or off?
--Rik