Loading...
  OR  Zero-K Name:    Password:   

Post edit history

Mass Benchmarking Required

To display differences between versions, select one or more edits in the list using checkboxes and click "diff selected"
Post edit history
Date Editor Before After
1/15/2015 9:23:36 PMATrankhokomoko before revert after revert
1/15/2015 7:42:24 PMATrankhokomoko before revert after revert
1/15/2015 7:15:09 PMATrankhokomoko before revert after revert
1/15/2015 6:20:38 PMATrankhokomoko before revert after revert
Before After
1 (Whenever I say I in the following post, I mean to say "I with the help of @Anarchid and @ikinz ") 1 (Whenever I say I in the following post, I mean to say "I with the help of @Anarchid and @ikinz ")
2 https://docs.google.com/spreadsheets/d/15dq0EuuhB29ezifaOQIu2PMpR9T7hbpeGGmgqMPGACI/edit#gid=0 2 https://docs.google.com/spreadsheets/d/15dq0EuuhB29ezifaOQIu2PMpR9T7hbpeGGmgqMPGACI/edit#gid=0
3 \n 3 \n
4 I suspected the all round fall in performance, especially in the event may be the result of lua not getting optimised as much as it did in 91.0 as apparently the liblua glue code was changed a bit. 4 I suspected the all round fall in performance, especially in the event may be the result of lua not getting optimised as much as it did in 91.0 as apparently the liblua glue code was changed a bit.
5 So I've compiled a 98.0 version with 91.0's lua (and some small fixes to make it actually compile). 5 So I've compiled a 98.0 version with 91.0's lua (and some small fixes to make it actually compile).
6 First result was a significantly larger file size, probably due to inlining of lua functions that now actually works. 6 First result was a significantly larger file size, probably due to inlining of lua functions that now actually works.
7 Second result can be seen in the benchmark under 98-frankenlua (it's better than both 98 and 91). It's indeed only one run, I'll conduct more, but mild optimism may be in place. 7 Second result can be seen in the benchmark under 98-frankenlua (it's better than both 98 and 91). It's indeed only one run, I'll conduct more, but mild optimism may be in place.
8 \n 8 \n
9 EDIT: 9 EDIT:
10 diff is here: 10 diff is here:
11 https://gist.github.com/ashdnazg/007390d11354c8ed723a 11 https://gist.github.com/ashdnazg/007390d11354c8ed723a
12 \n 12 \n
13 EDIT 2: 13 EDIT 2:
14 I was wrong about inlining I think, but I'm pretty positive the lock that was added affects the performance significantly 14 I was wrong about inlining I think, but I'm pretty positive the lock that was added affects the performance significantly
15 \n 15 \n
16 EDIT 3: 16 EDIT 3:
17 https://gist.github.com/ashdnazg/8ef5721ea9ff91883bf9 17 https://gist.github.com/ashdnazg/8ef5721ea9ff91883bf9
18 This seems to be the thing that affected performance the most. 18 This seems to be the thing that affected performance the most.
19 I suppose there's a reason for a lock, so it can't just be removed, but that's where we should concentrate to have the largest improvement. 19 I suppose there's a reason for a lock, so it can't just be removed, but that's where we should concentrate to have the largest improvement.
20 \n
21 EDIT 4:
22 Just had some tests, and I've managed to play 1v1 with one client having develop version and one develop+patch. Haven't encountered desyncs. Also managed to view replays of one with the other with no desyncs.
23 I think the lock is there to allow lua to run jobs in parallel, but that never actually happens in the current engine design, so we're just wasting lots of cycles with no (apparent?) gain.