help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: JIT compiling


From: Sergei Steshenko
Subject: Re: JIT compiling
Date: Sat, 13 Aug 2016 01:03:17 +0000 (UTC)




----- Original Message -----
> From: Oliver Heimlich <address@hidden>
> To: Sergei Steshenko <address@hidden>; Jordi Gutiérrez Hermoso 
> <address@hidden>; Alex Vong <address@hidden>
> Cc: Ricardo Wurmus <address@hidden>; "address@hidden" <address@hidden>; Leo 
> Famulari <address@hidden>; "address@hidden" <address@hidden>; Mike Miller 
> <address@hidden>
> Sent: Friday, August 12, 2016 7:06 PM
> Subject: Re: JIT compiling
> 
> On 12.08.2016 17:08, Sergei Steshenko wrote:
> 
>>>  ________________________________
>>>  From: Jordi Gutiérrez Hermoso <address@hidden>
>>>  To: Alex Vong <address@hidden> 
>>>  Cc: Ricardo Wurmus <address@hidden>; address@hidden; Leo 
> Famulari <address@hidden>; address@hidden; Mike Miller 
> <address@hidden>
>>>  Sent: Friday, August 12, 2016 2:45 PM
>>>  Subject: JIT compiling
>>> 
>>> 
>>>  On Thu, 2016-08-11 at 23:27 +0800, Alex Vong wrote:
>>>>  Finally, some unrelated stuff, I hope octave would have a byte code
>>>>  interpreter soon. I would suggest to write it in rpython, it seems
>>>>  to be the easiest way to have jit these days.
>>> 
>>>  That is a faraway pipe dream. Can you help?
>>> 
>>>  - Jordi G. H.
>>> 
>>> 
>> 
>> 
>>  Julia ( http://julialang.org/ ) quite developed since it's been 
> discussed here. They claim to have close to "C" performance and JIT.
>> 
> 
> There is a good language introduction available as a talk from JuliaCon:
> https://youtu.be/rAxzR7lMGDM
> 
> As far as I can see, Julia compiles the code if it can predict the types
> of the variables. Otherwise, it is slow. This is explained in the first
> part of the talk.
> 
> Best
> Oliver
> 


If the type can't be predicted, then runtime checks need to be made and the 
object might have to be recreated. E.g. if 12345678 is a number, it fits a 32 
bit integer, and if it is a string, it will need 9 bytes in case of "C" 
representation.


So the limitation does not look to me like a Julia-specific one.

--Sergei.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]