Natural Selection 2
Login Now >
Click here to create a new account
Unknown Worlds Entertainment
Home
Game Guide
Community
Media
Forums
Store
Twitter
Facebook
YouTube
Latest Developer Posts
Promoted Content
matso
Master of Patches
May 23
Do the "Performance-Jam"!!!
Insane wrote: » ezekel wrote: » Scatter wrote: » Is LuaJIT something that must be implemented game wide or can it be used in certain critical pathways? I have a basic coding understanding but not enough to really know this off hand. I think luaJIT splits the workload, so one part of the game goes through luaJIT, then another part goes through regular lua.. so making the work more evenly split on the cores already supported or I'm an idiot and you can just disregard what I said because it's a complete guess Not quite. In very simple terms, LuaJIT translates Lua code into a format that your CPU can read more quickly. It does this just before the code segment is actually executed, hence the name (Just In Time). Turns out that Wikepedia has a very nice article how a tracing JIT compiler like LuaJIT actually works ... https://en.wikipedia.org/wiki/Tracing_just-in-time_compilation
Insane
Anomaly
May 23
Do the "Performance-Jam"!!!
ezekel wrote: » Scatter wrote: » Is LuaJIT something that must be implemented game wide or can it be used in certain critical pathways? I have a basic coding understanding but not enough to really know this off hand. I think luaJIT splits the workload, so one part of the game goes through luaJIT, then another part goes through regular lua.. so making the work more evenly split on the cores already supported or I'm an idiot and you can just disregard what I said because it's a complete guess Not quite. In very simple terms, LuaJIT translates Lua code into a format that your CPU can read more quickly. It does this just before the code segment is actually executed, hence the name (Just In Time).
Sewlek
The programmer previously known as Schimmel
May 23
Sewlek's Balance mod
CrazyEddie wrote: » BigRustyRed wrote: » RT's felt less important so the focus was a lot more on attacking specific areas of the map and holding map control then chasing after recappers and defending RTs. I haven't played the BT mod yet, but what you've described sounds like a good change to me. I get tired of constantly hearing "Skylights!" and "Ventilation!" and "Observation!" and having people running off to go rescue or rebuild them. I try to tell my teammates that the way to save Skylights is to take and hold Overlook. If the current BT makes running after RTs less valuable and encourages tactical play to secure territory, then I'm all for it. thats not clear yet. i keep the RT scaled down to 8 t.res for ~2 more days and see what its does to the game play.
matso
Master of Patches
May 22
Do the "Performance-Jam"!!!
SteveRock wrote: » CrazyEddie wrote: » Steve, Cory - as long as you're answering performance and technology questions: Are you doing any work around splitting up the game logic code so that it could be handled in multiple lua threads? I know that's not easy (and I know that's an understatement) but it seems like the payoff could be huge. We do this for prediction already, which resulted in huge gains, but that's literally running two separate Lua worlds. Doing it within the same world is more complex, and much more risky (in terms of bugs, code maintainability, whether or not it would even work, etc. etc.). So, it's less likely we'll pursue this avenue. The extra Lua VM running the Predict world is very much a special case; it it responsible for taking the server network updates and merge it with any missing client moves, then deliver that to the main thread. It reduced an O(fps^2) problem in the main thread to an O(network rate) in a secondary thread - a very good thing. Also increased fps so much that Max had to add move rate limiters to avoid servers imploding under the load ... oh, fun times, good times (http://forums.unknownworlds.com/discussion/122189/224-tech-changes-part-1 for those interested in more details ) Lua does not support true multithreading (yet), so if you want to split the logic work you would probably go for using multiple Lua VMs running in their own threads, and then have a merge phase in between... doable, but adding lots of complexity. So going for LuaJIT first is the right way ... hopefully, it will be fast enough to tide Spark over until Lua supports true multithreading.
SteveRock
May 22
Do the "Performance-Jam"!!!
CrazyEddie wrote: » Steve, Cory - as long as you're answering performance and technology questions: Are you doing any work around splitting up the game logic code so that it could be handled in multiple lua threads? I know that's not easy (and I know that's an understatement) but it seems like the payoff could be huge. We do this for prediction already, which resulted in huge gains, but that's literally running two separate Lua worlds. Doing it within the same world is more complex, and much more risky (in terms of bugs, code maintainability, whether or not it would even work, etc. etc.). So, it's less likely we'll pursue this avenue.
matso
Master of Patches
May 22
Do the "Performance-Jam"!!!
CrazyEddie wrote: » Steve, Cory - as long as you're answering performance and technology questions: Are you doing any work around splitting up the game logic code so that it could be handled in multiple lua threads? I know that's not easy (and I know that's an understatement) but it seems like the payoff could be huge. Right now the client uses slightly more than 2 cores at peak load, so further MT would not benefit 2-core machines much. Better to go for LuaJIT, which uses the CPU more efficiently.
MurphyIdiot
NS2 programmer
May 22
time to make the mods - problem
Your problem is in the game_setup.xml file. If you open the console with ~ in game, you will see this being spammed: Error: Error reading end tag. Error: Couldn't load 'game_setup.xml' It failed to parse the file due to this line having a typo: <predeict>lua/ModPredict.lua</predict> The console and log file are your friend
SteveRock
May 22
Do the "Performance-Jam"!!!
moultano wrote: » SteveRock wrote: » And since you seem to be fairly technically minded, the major challenge we face with LuaJIT is the Lua->C++ API. For LuaJIT to be performant, you have to architect that API in some pretty specific ways, otherwise you will always break the JIT compiles and get almost no benefit from it. Completely changing the API is not an attractive option (rewrite a lot of code..break all the mods..), so we're currently investigating ways of avoiding this. Tell us more! Reading about things like this gives me a "break out the profiler" itch. It's exciting. Is there a performance sensitive subset you could rewrite, and assume the remainder will fall back to being interpreted? One challenge is even identifying the hotspots, so Dushan has been working on a sample-based Lua profiler to help with this. Think of it as Intel VTune for Lua scripts (cuz otherwise, VTune just tells us...Lua is slow). Once that is done, we can better assess if it's possible to address just that subset.
Squeal_Like_A_Pig
Janitor
May 22
UWE to replace Vanilla NS2 with Sewlek's balance mod in the near future
thelawenforcer wrote: » ironhorse - im saying that characterizing all criticism or questioning of the mod in general as no more than "omg this mod suxxxxX!!1!!!" is a serious misrepresentation of what people were actually saying and that by doing so, it enables him to ignore said criticism or questions. i find that intellectually dishonest and would expect better from a serious games developer. Nowhere did I state this. Not...at...all. There is plenty of valid criticisms of the mod being carried out in thoughtful discussions in the main BT mod thread, in game, and by the official balance mod testing team, and I was not referring to those arguments, merely requesting people who want to give further feedback to frame it in a manner that is respectful and constructive. And, I see that there were several posts made after my comment that did exactly what I requested, giving their opinions in a non inflammatory way, and listing out the reasons why they disagree with certain features in the mod. However, I would like to request that people leave their feedback in the other current BT thread, so that we have it all in one place, and it doesn't get lost in this thread.
Forums
Recent Threads
Activity
Best of...
Unknown Worlds Entertainment
Getting Started
[bug] Couldn't drop skylights' RT
41
views
2
comments
0
points
Most recent by
IronHorse
3:53AM
Technical Support
Crash on launch
1
view
2
comments
0
points
Most recent by
IronHorse
3:44AM
Technical Support
Framedrops when using mouse in lategame
51
views
2
comments
0
points
Most recent by
Ghosthree3
12:53AM
Technical Support
config_path issues
71
views
13
comments
0
points
Most recent by
digitaljuice
12:00AM
Server Discussion
Your game files do not match the servers....
311
views
21
comments
0
points
Most recent by
hit321
May 23
Technical Support
More Discussions
General
Sewlek's Balance mod
49.3K
views
1.7K
comments
1
point
Most recent by
Marshall_Drummin
5:36AM
General Discussion
Please lower shotgun power
2.2K
views
123
comments
1
point
Most recent by
d0ped0g
5:28AM
General Discussion
Comments on NS2 Beacon
491
views
22
comments
1
point
Most recent by
hakenspit
5:19AM
General Discussion
Cool features/tactics rarely used.
2.1K
views
72
comments
5
points
Most recent by
xen32
4:47AM
General Discussion
Flame throwers?
1.1K
views
48
comments
0
points
Most recent by
hakenspit
2:53AM
General Discussion
More Discussions
Veteran
Custom HUD mod
401
views
10
comments
0
points
Most recent by
Mendasp
May 23
Competitive Play
ESL
Opening tournament
Webbed
2.7K
views
49
comments
0
points
Most recent by
fanatic
May 22
Competitive Play
Australian Cyber Gamer Tournament Season 1 comes to a close
221
views
8
comments
0
points
Most recent by
sebastianoswell
May 22
Competitive Play
Quoth Gaming recruiting for ENSL
151
views
2
comments
0
points
Most recent by
SammyG
May 21
Competitive Play
Pro players - Competitive play Vs Pub Play
1.4K
views
39
comments
0
points
Most recent by
joshhh
May 21
Competitive Play
More Discussions
Creation
The Post Your Screenshots Thread!
NS2 Edition!
Webbed
475.1K
views
2.4K
comments
0
points
Most recent by
angelous
3:51AM
Mapping
ns2_ayumi
111
views
11
comments
1
point
Most recent by
Scatter
2:59AM
Mapping
New launchpad
21
views
2
comments
0
points
Most recent by
oldassgamers
2:23AM
Mapping
Combat Mode Relaunch
54.3K
views
1.1K
comments
2
points
Most recent by
DarkSeraph
12:51AM
Modding
Remake List
Which NS1 map is still missing and your favorite?
541
views
28
comments
0
points
Most recent by
[AwE]Sentinel
May 23
Mapping
More Discussions
Other
Post YouTube videos plx. Second Encounter.
That is still all.
607.1K
views
3.7K
comments
0
points
Most recent by
Konohas Perverted Hermit
4:29AM
Off-Topic
Xbox One (1)
411
views
27
comments
0
points
Most recent by
ezekel
1:08AM
Off-Topic
Do all dating websites suck?
131
views
4
comments
0
points
Most recent by
ellnic
12:20AM
Off-Topic
GTX 780
81
views
7
comments
0
points
Most recent by
billet
May 23
Off-Topic
NS disappeared from steam
21
views
0
comments
0
points
Started by
That_Annoying_Kid
May 23
Natural Selection Help
More Discussions
Community
Copyright
Developer
Terms of Use
Privacy
Unknown Worlds Entertainment Logo
© 2013,
Unknown Worlds Entertainment
. All rights reserved.
Visual Design by
Fully Illustrated