LuaCoCo+Lua 5.3.x

classic Classic list List threaded Threaded
18 messages Options
Reply | Threaded
Open this post in threaded view
|

LuaCoCo+Lua 5.3.x

Bizins'kyi Yurii
Hi,

I'm porting older game to x64 platform. It uses Lua 5.1 (alpha) + LuaJIT 1.0.3. It also uses LuaCoCo patch, specifically lua_newcthread from it. To get x64 support I have 2 options: either take Lua 5.3.x or LuaJIT 2.0.x, but neither have LuaCoCo support. Is there any change that LuaCoCo patch will be adapted to Lua 5.3.x or LuaJIT 2.0.x.

Thank you.
With best regards,
Yurii Bizinskyi
Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Russell Haley
While I don't know all the details, my understanding is the author, Mike Pall, doesn't like Lua 5.3.

You could look at switching over to the ‎LuaJIT project as it is currently frozen at the 5.1 syntax and supports Coco out of the box because it's the same author (Mike Pall)?

Good luck!
Russ

Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
From: Bizins'kyi Yurii
Sent: Thursday, October 13, 2016 11:17 AM
Reply To: Lua mailing list
Subject: LuaCoCo+Lua 5.3.x

Hi,

I'm porting older game to x64 platform. It uses Lua 5.1 (alpha) + LuaJIT 1.0.3. It also uses LuaCoCo patch, specifically lua_newcthread from it. To get x64 support I have 2 options: either take Lua 5.3.x or LuaJIT 2.0.x, but neither have LuaCoCo support. Is there any change that LuaCoCo patch will be adapted to Lua 5.3.x or LuaJIT 2.0.x.

Thank you.
With best regards,
Yurii Bizinskyi

Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Russell Haley
Sorry, just re-read your email. I didn't realize CoCo was removed form LuaJIT 2.0 (it was one of the things I was researching). I'm surprised that there is no replacement mechanism in 2.0?

I was also looking at other projects for polling/threading and one I found was luasys but requires a Posix API or Mingwin. I've recently settled on cqueues, which is a similar concept to coco (i think?) in that it uses yielding to allow for kernel level polling in C. Unfortunately, everything I have looked at is Posix specific. 

From a brief glance at the coco code (reading the patch file), lua_newcthread looks like a wrapper around existing lua tools: http://www.lua.org/manual/5.3/manual.html#lua_newthread. If you just need a new thread, perhaps you should implement your own wrapper? Caveat: I know little about lua C interfacing. 


Russ

On Thu, Oct 13, 2016 at 11:50 AM, Russell Haley <[hidden email]> wrote:
While I don't know all the details, my understanding is the author, Mike Pall, doesn't like Lua 5.3.

You could look at switching over to the ‎LuaJIT project as it is currently frozen at the 5.1 syntax and supports Coco out of the box because it's the same author (Mike Pall)?

Good luck!
Russ

Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
From: Bizins'kyi Yurii
Sent: Thursday, October 13, 2016 11:17 AM
Reply To: Lua mailing list
Subject: LuaCoCo+Lua 5.3.x

Hi,

I'm porting older game to x64 platform. It uses Lua 5.1 (alpha) + LuaJIT 1.0.3. It also uses LuaCoCo patch, specifically lua_newcthread from it. To get x64 support I have 2 options: either take Lua 5.3.x or LuaJIT 2.0.x, but neither have LuaCoCo support. Is there any change that LuaCoCo patch will be adapted to Lua 5.3.x or LuaJIT 2.0.x.

Thank you.
With best regards,
Yurii Bizinskyi


Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Bizins'kyi Yurii

Thank you Russ. If there won't be other solution I'll have to implement it myself as you said.

Yurii


13 жовт. 2016 21:25 "Russell Haley" <[hidden email]> пише:
Sorry, just re-read your email. I didn't realize CoCo was removed form LuaJIT 2.0 (it was one of the things I was researching). I'm surprised that there is no replacement mechanism in 2.0?

I was also looking at other projects for polling/threading and one I found was luasys but requires a Posix API or Mingwin. I've recently settled on cqueues, which is a similar concept to coco (i think?) in that it uses yielding to allow for kernel level polling in C. Unfortunately, everything I have looked at is Posix specific. 

From a brief glance at the coco code (reading the patch file), lua_newcthread looks like a wrapper around existing lua tools: http://www.lua.org/manual/5.3/manual.html#lua_newthread. If you just need a new thread, perhaps you should implement your own wrapper? Caveat: I know little about lua C interfacing. 


Russ

On Thu, Oct 13, 2016 at 11:50 AM, Russell Haley <[hidden email]> wrote:
While I don't know all the details, my understanding is the author, Mike Pall, doesn't like Lua 5.3.

You could look at switching over to the ‎LuaJIT project as it is currently frozen at the 5.1 syntax and supports Coco out of the box because it's the same author (Mike Pall)?

Good luck!
Russ

Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
From: Bizins'kyi Yurii
Sent: Thursday, October 13, 2016 11:17 AM
Reply To: Lua mailing list
Subject: LuaCoCo+Lua 5.3.x

Hi,

I'm porting older game to x64 platform. It uses Lua 5.1 (alpha) + LuaJIT 1.0.3. It also uses LuaCoCo patch, specifically lua_newcthread from it. To get x64 support I have 2 options: either take Lua 5.3.x or LuaJIT 2.0.x, but neither have LuaCoCo support. Is there any change that LuaCoCo patch will be adapted to Lua 5.3.x or LuaJIT 2.0.x.

Thank you.
With best regards,
Yurii Bizinskyi


Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Nagaev Boris

Why not to use existing solution (lua 5.1)?


13 окт. 2016 г. 20:44 пользователь "Bizins'kyi Yurii" <[hidden email]> написал:

Thank you Russ. If there won't be other solution I'll have to implement it myself as you said.

Yurii


13 жовт. 2016 21:25 "Russell Haley" <[hidden email]> пише:
Sorry, just re-read your email. I didn't realize CoCo was removed form LuaJIT 2.0 (it was one of the things I was researching). I'm surprised that there is no replacement mechanism in 2.0?

I was also looking at other projects for polling/threading and one I found was luasys but requires a Posix API or Mingwin. I've recently settled on cqueues, which is a similar concept to coco (i think?) in that it uses yielding to allow for kernel level polling in C. Unfortunately, everything I have looked at is Posix specific. 

From a brief glance at the coco code (reading the patch file), lua_newcthread looks like a wrapper around existing lua tools: http://www.lua.org/manual/5.3/manual.html#lua_newthread. If you just need a new thread, perhaps you should implement your own wrapper? Caveat: I know little about lua C interfacing. 


Russ

On Thu, Oct 13, 2016 at 11:50 AM, Russell Haley <[hidden email]> wrote:
While I don't know all the details, my understanding is the author, Mike Pall, doesn't like Lua 5.3.

You could look at switching over to the ‎LuaJIT project as it is currently frozen at the 5.1 syntax and supports Coco out of the box because it's the same author (Mike Pall)?

Good luck!
Russ

Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
From: Bizins'kyi Yurii
Sent: Thursday, October 13, 2016 11:17 AM
Reply To: Lua mailing list
Subject: LuaCoCo+Lua 5.3.x

Hi,

I'm porting older game to x64 platform. It uses Lua 5.1 (alpha) + LuaJIT 1.0.3. It also uses LuaCoCo patch, specifically lua_newcthread from it. To get x64 support I have 2 options: either take Lua 5.3.x or LuaJIT 2.0.x, but neither have LuaCoCo support. Is there any change that LuaCoCo patch will be adapted to Lua 5.3.x or LuaJIT 2.0.x.

Thank you.
With best regards,
Yurii Bizinskyi


Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Russell Haley
In reply to this post by Bizins'kyi Yurii
Just an FYI, lots of people are at the Lua Workshop in San Francisco right now (*jealous*!). You may get a better answer next week.

Russ

On Thu, Oct 13, 2016 at 12:44 PM, Bizins'kyi Yurii <[hidden email]> wrote:

Thank you Russ. If there won't be other solution I'll have to implement it myself as you said.

Yurii


13 жовт. 2016 21:25 "Russell Haley" <[hidden email]> пише:

Sorry, just re-read your email. I didn't realize CoCo was removed form LuaJIT 2.0 (it was one of the things I was researching). I'm surprised that there is no replacement mechanism in 2.0?

I was also looking at other projects for polling/threading and one I found was luasys but requires a Posix API or Mingwin. I've recently settled on cqueues, which is a similar concept to coco (i think?) in that it uses yielding to allow for kernel level polling in C. Unfortunately, everything I have looked at is Posix specific. 

From a brief glance at the coco code (reading the patch file), lua_newcthread looks like a wrapper around existing lua tools: http://www.lua.org/manual/5.3/manual.html#lua_newthread. If you just need a new thread, perhaps you should implement your own wrapper? Caveat: I know little about lua C interfacing. 


Russ

On Thu, Oct 13, 2016 at 11:50 AM, Russell Haley <[hidden email]> wrote:
While I don't know all the details, my understanding is the author, Mike Pall, doesn't like Lua 5.3.

You could look at switching over to the ‎LuaJIT project as it is currently frozen at the 5.1 syntax and supports Coco out of the box because it's the same author (Mike Pall)?

Good luck!
Russ

Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
From: Bizins'kyi Yurii
Sent: Thursday, October 13, 2016 11:17 AM
Reply To: Lua mailing list
Subject: LuaCoCo+Lua 5.3.x

Hi,

I'm porting older game to x64 platform. It uses Lua 5.1 (alpha) + LuaJIT 1.0.3. It also uses LuaCoCo patch, specifically lua_newcthread from it. To get x64 support I have 2 options: either take Lua 5.3.x or LuaJIT 2.0.x, but neither have LuaCoCo support. Is there any change that LuaCoCo patch will be adapted to Lua 5.3.x or LuaJIT 2.0.x.

Thank you.
With best regards,
Yurii Bizinskyi



Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Bizins'kyi Yurii
In reply to this post by Nagaev Boris

Because LuaJIT 1.0.3 explicitly tells that it doesn't support other platforms than x86 and it doesn't compile. If I update to LuaJIT 2.0.x I loose LuaCoCo which was integrated in 1.x.x only.

Yurii


13 жовт. 2016 21:52 "Nagaev Boris" <[hidden email]> пише:

Why not to use existing solution (lua 5.1)?


13 окт. 2016 г. 20:44 пользователь "Bizins'kyi Yurii" <[hidden email]> написал:

Thank you Russ. If there won't be other solution I'll have to implement it myself as you said.

Yurii


13 жовт. 2016 21:25 "Russell Haley" <[hidden email]> пише:
Sorry, just re-read your email. I didn't realize CoCo was removed form LuaJIT 2.0 (it was one of the things I was researching). I'm surprised that there is no replacement mechanism in 2.0?

I was also looking at other projects for polling/threading and one I found was luasys but requires a Posix API or Mingwin. I've recently settled on cqueues, which is a similar concept to coco (i think?) in that it uses yielding to allow for kernel level polling in C. Unfortunately, everything I have looked at is Posix specific. 

From a brief glance at the coco code (reading the patch file), lua_newcthread looks like a wrapper around existing lua tools: http://www.lua.org/manual/5.3/manual.html#lua_newthread. If you just need a new thread, perhaps you should implement your own wrapper? Caveat: I know little about lua C interfacing. 


Russ

On Thu, Oct 13, 2016 at 11:50 AM, Russell Haley <[hidden email]> wrote:
While I don't know all the details, my understanding is the author, Mike Pall, doesn't like Lua 5.3.

You could look at switching over to the ‎LuaJIT project as it is currently frozen at the 5.1 syntax and supports Coco out of the box because it's the same author (Mike Pall)?

Good luck!
Russ

Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
From: Bizins'kyi Yurii
Sent: Thursday, October 13, 2016 11:17 AM
Reply To: Lua mailing list
Subject: LuaCoCo+Lua 5.3.x

Hi,

I'm porting older game to x64 platform. It uses Lua 5.1 (alpha) + LuaJIT 1.0.3. It also uses LuaCoCo patch, specifically lua_newcthread from it. To get x64 support I have 2 options: either take Lua 5.3.x or LuaJIT 2.0.x, but neither have LuaCoCo support. Is there any change that LuaCoCo patch will be adapted to Lua 5.3.x or LuaJIT 2.0.x.

Thank you.
With best regards,
Yurii Bizinskyi


Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Daurnimator
On 13 October 2016 at 13:22, Bizins'kyi Yurii <[hidden email]> wrote:

Because LuaJIT 1.0.3 explicitly tells that it doesn't support other platforms than x86 and it doesn't compile. If I update to LuaJIT 2.0.x I loose LuaCoCo which was integrated in 1.x.x only.

Yurii


13 жовт. 2016 21:52 "Nagaev Boris" <[hidden email]> пише:

Why not to use existing solution (lua 5.1)?


I believe the suggestion was to use puc lua 5.1, not luajit.
coco works fine with lua 5.1 on almost all platforms: http://coco.luajit.org/portability.html 
Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Nagaev Boris
In reply to this post by Bizins'kyi Yurii

Can use lua 5.1 instead of luajit? It should support x64

13 окт. 2016 г. 21:22 пользователь "Bizins'kyi Yurii" <[hidden email]> написал:
>
> Because LuaJIT 1.0.3 explicitly tells that it doesn't support other platforms than x86 and it doesn't compile. If I update to LuaJIT 2.0.x I loose LuaCoCo which was integrated in 1.x.x only.
>
> Yurii
>
>
> 13 жовт. 2016 21:52 "Nagaev Boris" <[hidden email]> пише:
>
>> Why not to use existing solution (lua 5.1)?
>>
>>
>> 13 окт. 2016 г. 20:44 пользователь "Bizins'kyi Yurii" <[hidden email]> написал:
>>>
>>> Thank you Russ. If there won't be other solution I'll have to implement it myself as you said.
>>>
>>> Yurii
>>>
>>>
>>> 13 жовт. 2016 21:25 "Russell Haley" <[hidden email]> пише:
>>>>
>>>> Sorry, just re-read your email. I didn't realize CoCo was removed form LuaJIT 2.0 (it was one of the things I was researching). I'm surprised that there is no replacement mechanism in 2.0?
>>>>
>>>> I was also looking at other projects for polling/threading and one I found was luasys but requires a Posix API or Mingwin. I've recently settled on cqueues, which is a similar concept to coco (i think?) in that it uses yielding to allow for kernel level polling in C. Unfortunately, everything I have looked at is Posix specific. 
>>>>
>>>> From a brief glance at the coco code (reading the patch file), lua_newcthread looks like a wrapper around existing lua tools: http://www.lua.org/manual/5.3/manual.html#lua_newthread. If you just need a new thread, perhaps you should implement your own wrapper? Caveat: I know little about lua C interfacing. 
>>>>
>>>>
>>>> Russ
>>>>
>>>> On Thu, Oct 13, 2016 at 11:50 AM, Russell Haley <[hidden email]> wrote:
>>>>>
>>>>> While I don't know all the details, my understanding is the author, Mike Pall, doesn't like Lua 5.3.
>>>>>
>>>>> You could look at switching over to the ‎LuaJIT project as it is currently frozen at the 5.1 syntax and supports Coco out of the box because it's the same author (Mike Pall)?
>>>>>
>>>>> Good luck!
>>>>> Russ
>>>>>
>>>>> Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
>>>>> From: Bizins'kyi Yurii
>>>>> Sent: Thursday, October 13, 2016 11:17 AM
>>>>> To: [hidden email]
>>>>> Reply To: Lua mailing list
>>>>> Subject: LuaCoCo+Lua 5.3.x
>>>>>
>>>>> Hi,
>>>>>
>>>>> I'm porting older game to x64 platform. It uses Lua 5.1 (alpha) + LuaJIT 1.0.3. It also uses LuaCoCo patch, specifically lua_newcthread from it. To get x64 support I have 2 options: either take Lua 5.3.x or LuaJIT 2.0.x, but neither have LuaCoCo support. Is there any change that LuaCoCo patch will be adapted to Lua 5.3.x or LuaJIT 2.0.x.
>>>>>
>>>>> Thank you.
>>>>> With best regards,
>>>>> Yurii Bizinskyi
>>>>>
>>>>

Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Bizins'kyi Yurii
In reply to this post by Daurnimator

First, I'm a bit of concerned with performance. Second, and it is more important, in this phase of porting to x64 I'd like to do as few changes to the code as possible to reduce number of possible bugs to find. Basically, I don't need any new functionality, I just need x64 support of old lib.

Yurii


13 жовт. 2016 22:29 "Daurnimator" <[hidden email]> пише:
On 13 October 2016 at 13:22, Bizins'kyi Yurii <[hidden email]> wrote:

Because LuaJIT 1.0.3 explicitly tells that it doesn't support other platforms than x86 and it doesn't compile. If I update to LuaJIT 2.0.x I loose LuaCoCo which was integrated in 1.x.x only.

Yurii


13 жовт. 2016 21:52 "Nagaev Boris" <[hidden email]> пише:

Why not to use existing solution (lua 5.1)?


I believe the suggestion was to use puc lua 5.1, not luajit.
coco works fine with lua 5.1 on almost all platforms: http://coco.luajit.org/portability.html 
Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Nagaev Boris
Given all these reasons, it seems better to use old PUC Lua 5.1 on x64
rather than porting to Lua 5.3 or to LuaJIT 2

On Fri, Oct 14, 2016 at 12:12 AM, Bizins'kyi Yurii <[hidden email]> wrote:

> First, I'm a bit of concerned with performance. Second, and it is more
> important, in this phase of porting to x64 I'd like to do as few changes to
> the code as possible to reduce number of possible bugs to find. Basically, I
> don't need any new functionality, I just need x64 support of old lib.
>
> Yurii
>
>
> 13 жовт. 2016 22:29 "Daurnimator" <[hidden email]> пише:
>
>> On 13 October 2016 at 13:22, Bizins'kyi Yurii <[hidden email]> wrote:
>>>
>>> Because LuaJIT 1.0.3 explicitly tells that it doesn't support other
>>> platforms than x86 and it doesn't compile. If I update to LuaJIT 2.0.x I
>>> loose LuaCoCo which was integrated in 1.x.x only.
>>>
>>> Yurii
>>>
>>>
>>> 13 жовт. 2016 21:52 "Nagaev Boris" <[hidden email]> пише:
>>>
>>>> Why not to use existing solution (lua 5.1)?
>>
>>
>> I believe the suggestion was to use puc lua 5.1, not luajit.
>> coco works fine with lua 5.1 on almost all platforms:
>> http://coco.luajit.org/portability.html



--


Best regards,
Boris Nagaev

Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Bizins'kyi Yurii

I'll give it a try, of course, man just searches the easiest way first. I just hope that there are no unresolvable references to luajit in code.

Yurii


13 жовт. 2016 23:22 "Nagaev Boris" <[hidden email]> пише:
Given all these reasons, it seems better to use old PUC Lua 5.1 on x64
rather than porting to Lua 5.3 or to LuaJIT 2

On Fri, Oct 14, 2016 at 12:12 AM, Bizins'kyi Yurii <[hidden email]> wrote:
> First, I'm a bit of concerned with performance. Second, and it is more
> important, in this phase of porting to x64 I'd like to do as few changes to
> the code as possible to reduce number of possible bugs to find. Basically, I
> don't need any new functionality, I just need x64 support of old lib.
>
> Yurii
>
>
> 13 жовт. 2016 22:29 "Daurnimator" <[hidden email]> пише:
>
>> On 13 October 2016 at 13:22, Bizins'kyi Yurii <[hidden email]> wrote:
>>>
>>> Because LuaJIT 1.0.3 explicitly tells that it doesn't support other
>>> platforms than x86 and it doesn't compile. If I update to LuaJIT 2.0.x I
>>> loose LuaCoCo which was integrated in 1.x.x only.
>>>
>>> Yurii
>>>
>>>
>>> 13 жовт. 2016 21:52 "Nagaev Boris" <[hidden email]> пише:
>>>
>>>> Why not to use existing solution (lua 5.1)?
>>
>>
>> I believe the suggestion was to use puc lua 5.1, not luajit.
>> coco works fine with lua 5.1 on almost all platforms:
>> http://coco.luajit.org/portability.html



--


Best regards,
Boris Nagaev

Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Sean Conner
In reply to this post by Bizins'kyi Yurii
It was thus said that the Great Bizins'kyi Yurii once stated:
> First, I'm a bit of concerned with performance.

  It's only a concern if the performance is too slow.  At work, I'm using
Lua 5.1 to process SIP messages (our customer is one of The Monopolistic
Phone Companies [1]), with each transation being handled as a coroutine and
performance has yet to be an issue (millions of calls per day).

> Second, and it is more
> important, in this phase of porting to x64 I'd like to do as few changes to
> the code as possible to reduce number of possible bugs to find. Basically,
> I don't need any new functionality, I just need x64 support of old lib.

  Lua (5.1, 5.2, 5.3) compiles and works just fine on x86-64 (and on 64-bit
SPARC; we use those too).  Really, it comes down to other libraries you
might need compiled.  I wouldn't worry too much about Lua.

  -spc

[1] Yeah, I know---a monopoly is *one company*.  But in my defense,
        *ALL* phone companies are monopolistic in their dark little hearts.

Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Russell Haley
In reply to this post by Bizins'kyi Yurii
I had assumed that possibility had already been explored. Sorry. :(

Sent from my BlackBerry 10 smartphone on the Virgin Mobile network.
From: Bizins'kyi Yurii
Sent: Thursday, October 13, 2016 2:30 PM
To: Lua mailing list
Reply To: Lua mailing list
Subject: Re: LuaCoCo+Lua 5.3.x

I'll give it a try, of course, man just searches the easiest way first. I just hope that there are no unresolvable references to luajit in code.

Yurii


13 жовт. 2016 23:22 "Nagaev Boris" <[hidden email]> пише:
Given all these reasons, it seems better to use old PUC Lua 5.1 on x64
rather than porting to Lua 5.3 or to LuaJIT 2

On Fri, Oct 14, 2016 at 12:12 AM, Bizins'kyi Yurii <[hidden email]> wrote:
> First, I'm a bit of concerned with performance. Second, and it is more
> important, in this phase of porting to x64 I'd like to do as few changes to
> the code as possible to reduce number of possible bugs to find. Basically, I
> don't need any new functionality, I just need x64 support of old lib.
>
> Yurii
>
>
> 13 жовт. 2016 22:29 "Daurnimator" <[hidden email]> пише:
>
>> On 13 October 2016 at 13:22, Bizins'kyi Yurii <[hidden email]> wrote:
>>>
>>> Because LuaJIT 1.0.3 explicitly tells that it doesn't support other
>>> platforms than x86 and it doesn't compile. If I update to LuaJIT 2.0.x I
>>> loose LuaCoCo which was integrated in 1.x.x only.
>>>
>>> Yurii
>>>
>>>
>>> 13 жовт. 2016 21:52 "Nagaev Boris" <[hidden email]> пише:
>>>
>>>> Why not to use existing solution (lua 5.1)?
>>
>>
>> I believe the suggestion was to use puc lua 5.1, not luajit.
>> coco works fine with lua 5.1 on almost all platforms:
>> http://coco.luajit.org/portability.html



--


Best regards,
Boris Nagaev


Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Bizins'kyi Yurii
In reply to this post by Sean Conner
process SIP messages (our customer is one of The Monopolistic
Phone Companies [1]), with each transation being handled as a coroutine and
performance has yet to be an issue (millions of calls per day).
Let's take for exaple 10 000 000 SIP messages per day, most of them would be in business time, so half of a day. 10000000/43200 = 231 message per second, or ~7.7 messages per 33 ms. FPS game I'm porting must run at least 30 FPS, that's why 1 update has to be at most 33ms long. Let's be optimistic and say that rendering and other engine staff takes only 1/4 of this time and so Lua scripts (complete game logics) has 24ms. And during this 24ms it must process tons of scripted events, checks and only scripters know what else. So yes, performance is of concerne especially knowing that script optimization done by modders already increase FPS by approx. 1/4 and helped reduce/eliminate stutter in heavy crowded places.

But, to not be stucked with one library I took Boris's advice and just used plain Lua 5.1 with LuaCoCo. It compiles - good sign. Later on we will see I we'll have to go back to LuaJIT and try to integrate LuaCoCo to 2.0.x

Thanks to all for the advices.
Yurii

2016-10-14 0:12 GMT+02:00 Sean Conner <[hidden email]>:
It was thus said that the Great Bizins'kyi Yurii once stated:
> First, I'm a bit of concerned with performance.

  It's only a concern if the performance is too slow.  At work, I'm using
Lua 5.1 to process SIP messages (our customer is one of The Monopolistic
Phone Companies [1]), with each transation being handled as a coroutine and
performance has yet to be an issue (millions of calls per day).

> Second, and it is more
> important, in this phase of porting to x64 I'd like to do as few changes to
> the code as possible to reduce number of possible bugs to find. Basically,
> I don't need any new functionality, I just need x64 support of old lib.

  Lua (5.1, 5.2, 5.3) compiles and works just fine on x86-64 (and on 64-bit
SPARC; we use those too).  Really, it comes down to other libraries you
might need compiled.  I wouldn't worry too much about Lua.

  -spc

[1]     Yeah, I know---a monopoly is *one company*.  But in my defense,
        *ALL* phone companies are monopolistic in their dark little hearts.


Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Michal Kottman-2
On 14 October 2016 at 11:42, Bizins'kyi Yurii <[hidden email]> wrote:
But, to not be stucked with one library I took Boris's advice and just used plain Lua 5.1 with LuaCoCo. It compiles - good sign. Later on we will see I we'll have to go back to LuaJIT and try to integrate LuaCoCo to 2.0.x

Based on this post [1] by Mike Pall (author of LuaJIT), "there's little need for CoCo anymore" in LuaJIT 2. That said, I have no experience with CoCo and LuaJIT 2.

Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Eduardo Tongson
On Sat, Oct 15, 2016 at 12:08 AM, Michal Kottman
<[hidden email]> wrote:

> On 14 October 2016 at 11:42, Bizins'kyi Yurii <[hidden email]> wrote:
>>>
>>> But, to not be stucked with one library I took Boris's advice and just
>>> used plain Lua 5.1 with LuaCoCo. It compiles - good sign. Later on we will
>>> see I we'll have to go back to LuaJIT and try to integrate LuaCoCo to 2.0.x
>
>
> Based on this post [1] by Mike Pall (author of LuaJIT), "there's little need
> for CoCo anymore" in LuaJIT 2. That said, I have no experience with CoCo and
> LuaJIT 2.
>
> [1] http://www.freelists.org/post/luajit/CoCo-in-202,1

According to LuaJIT docs, the LuaJIT VM is fully resumable. I guess
the Coco features were integrated around the introduction of LuaJIT 2.
A viable solution might be patching Lua 5.1.5 with LuaCoco and/or use
LuaJIT 2.

Slightly OT, I'm curious about the OP's configuration. "Lua 5.1
(alpha) + LuaJIT 1.0.3.": how does that work? Mixed PUC Lua and LuaJIT
code base?

Cheers!

Reply | Threaded
Open this post in threaded view
|

Re: LuaCoCo+Lua 5.3.x

Bizins'kyi Yurii
According to LuaJIT docs, the LuaJIT VM is fully resumable
If that means that it is enough to just replace lua_newcthread from LuaCoCo with native lua_newthread then great.

"Lua 5.1 (alpha) + LuaJIT 1.0.3.": how does that work? Mixed PUC Lua and LuaJIT code base?
yep, something like that, I can't explain better but it seems that in that old version LuaJIT was more like an extension of PUC Lua rather then overhaul like it is in LuaJIT 2.

Yurii

2016-10-15 4:56 GMT+02:00 Eduardo Tongson <[hidden email]>:
On Sat, Oct 15, 2016 at 12:08 AM, Michal Kottman
<[hidden email]> wrote:
> On 14 October 2016 at 11:42, Bizins'kyi Yurii <[hidden email]> wrote:
>>>
>>> But, to not be stucked with one library I took Boris's advice and just
>>> used plain Lua 5.1 with LuaCoCo. It compiles - good sign. Later on we will
>>> see I we'll have to go back to LuaJIT and try to integrate LuaCoCo to 2.0.x
>
>
> Based on this post [1] by Mike Pall (author of LuaJIT), "there's little need
> for CoCo anymore" in LuaJIT 2. That said, I have no experience with CoCo and
> LuaJIT 2.
>
> [1] http://www.freelists.org/post/luajit/CoCo-in-202,1

According to LuaJIT docs, the LuaJIT VM is fully resumable. I guess
the Coco features were integrated around the introduction of LuaJIT 2.
A viable solution might be patching Lua 5.1.5 with LuaCoco and/or use
LuaJIT 2.

Slightly OT, I'm curious about the OP's configuration. "Lua 5.1
(alpha) + LuaJIT 1.0.3.": how does that work? Mixed PUC Lua and LuaJIT
code base?

Cheers!