Lag is over

How, what and why to code in BYOND.

Moderators: MisterPerson, Code Maintainers

User avatar
fleure
 
Joined: Tue Apr 15, 2014 2:50 pm
Byond Username: Fleure

Lag is over

Postby fleure » Wed Apr 23, 2014 9:05 am #1315

http://www.byond.com/forum/?post=1549601

I've made some major changes to address these issues in 506.1243 for most object types. Hopefully this will result in a speed improvement for some games. I suspect that the degree of improvement will depend greatly on the game's "action quotient", so some like SS13 might see a bigger boost than a typical RPG, but it's really hard to be sure where to expect the most impact.


I'm currently tracking a 600% improvement over the last incremental beta. This isn't a small fix like you implied, it's absolutely major.


Image
Ex-/tg/station maintainer for being a lazy shit.



Jalleo
 
Joined: Tue Apr 15, 2014 1:27 pm
Byond Username: Jalleo

Re: Lag is over

Postby Jalleo » Wed Apr 23, 2014 9:46 am #1323

Quick go to that beta before the huge bugs of server melting proportions. appear!

User avatar
Remie Richards
 
Joined: Thu Apr 17, 2014 7:11 pm
Location: England, UK, Earth, Sol, Milky Way, Local Group, Virgo Supercluster, Known Universe
Byond Username: CrimsonVision

Re: Lag is over

Postby Remie Richards » Wed Apr 23, 2014 12:21 pm #1343

Awesome! Now let's cram SS13 with more stuff so that the lag returns to the levels were used to!
私は完璧

User avatar
Psyentific
 
Joined: Mon Apr 21, 2014 7:44 am
Location: Vancouver, Canada
Byond Username: Psyentific

Re: Lag is over

Postby Psyentific » Wed Apr 23, 2014 12:44 pm #1349

You say the lag is over?
You are a LIAR!
I haven't logged into SS13 in at least a year.

User avatar
Bluespace
 
Joined: Fri Apr 18, 2014 1:04 pm
Location: UK
Byond Username: Bluespace

Re: Lag is over

Postby Bluespace » Wed Apr 23, 2014 1:40 pm #1359

Image
I play Boris Pepper.
Image

User avatar
Numbers
 
Joined: Wed Apr 16, 2014 10:40 am

Re: Lag is over

Postby Numbers » Wed Apr 23, 2014 1:57 pm #1366

Image

I give this Ron Paul stamp of approval.
"I've told you about Erro, I've warned you dwag." - Unknown
ImageImageImage

Gadd
 
Joined: Fri Apr 18, 2014 11:09 pm

Re: Lag is over

Postby Gadd » Wed Apr 23, 2014 2:34 pm #1370

When will we see a difference?

User avatar
bandit
In-Game Admin
 
Joined: Thu Apr 17, 2014 7:35 pm
Byond Username: Bgobandit

Re: Lag is over

Postby bandit » Wed Apr 23, 2014 2:49 pm #1377

Image
"I don't see any difference between ERP and rape." -- erro

admin feedback pls

User avatar
Wild Bill
 
Joined: Fri Apr 18, 2014 5:14 am

Re: Lag is over

Postby Wild Bill » Wed Apr 23, 2014 3:35 pm #1388

600% boost in object allocation speed is good.
Especially like he said with strings and lists. Good news.

Also:

Interestingly strings were part of your stress test's running time because of the \ref macro you used.

Spoiler:
ACTUAL POINTERS WHEN

User avatar
MrStonedOne
Host
 
Joined: Mon Apr 14, 2014 10:56 pm
Byond Username: MrStonedOne
Github Username: MrStonedOne

Re: Lag is over

Postby MrStonedOne » Wed Apr 23, 2014 4:36 pm #1402

it used to take 21μs (without deletion bullshit slowing it down) to create a obj or mob or well anything.


it now takes 3.4μs to create objects and it doesn't slow down when you've recently deleted a bunch of objects.

(note, this is based on his tests on his machine)

Also:

Automatic garbage collection is the only answer. If you are using the del keyword, you are going to murder your performance. Upon reaching the millions of objects, deleting even a single object can begin to take a very, very long time. Simply removing references to the object when it is no longer required is far better, and will not result in significant CPU consumption, whilst still releasing the object for reuse.


We should fix up the code where we can to take this into account.
Forum/Wiki Administrator, Server host, Database King, Master Coder

MrStonedOne on Reddit(banned), Steam, IRC, Skype Discord.

Jack7D1 wrote:After reviewing the history of our previous host(s) I conclude that MSO is our most favorable host to date. To remove him would be very unwise.
Jack7D1 wrote:I seem to be mistaken

User avatar
fleure
 
Joined: Tue Apr 15, 2014 2:50 pm
Byond Username: Fleure

Re: Lag is over

Postby fleure » Wed Apr 23, 2014 5:12 pm #1412

It sounds like explosions and loose singularities could be a lot easier on the server performance, then?
Ex-/tg/station maintainer for being a lazy shit.

User avatar
Durkel
 
Joined: Wed Apr 23, 2014 5:14 pm
Byond Username: Durkel

Re: Lag is over

Postby Durkel » Wed Apr 23, 2014 5:19 pm #1416

I've been lagging for so long I don't know what I'm going to do when it's gone. Lag has been with me since the beginning. it's like saying good bye to a old friend who now does crack and steals your wallet.
Sierra Welbe says, "Tim Ebow fucking threw soap everywhere near the HoP office, like I mean 20 fucking goddamn bars AND I CAN'T STOP SLIPPING"
Image

User avatar
Psyentific
 
Joined: Mon Apr 21, 2014 7:44 am
Location: Vancouver, Canada
Byond Username: Psyentific

Re: Lag is over

Postby Psyentific » Wed Apr 23, 2014 5:38 pm #1422

Durkel wrote:I've been lagging for so long I don't know what I'm going to do when it's gone. Lag has been with me since the beginning. it's like saying good bye to a old friend who now does crack and steals your wallet.

It's just not SS13 without the lag. I refuse to believe that the lag is gone.
I haven't logged into SS13 in at least a year.

User avatar
MrStonedOne
Host
 
Joined: Mon Apr 14, 2014 10:56 pm
Byond Username: MrStonedOne
Github Username: MrStonedOne

Re: Lag is over

Postby MrStonedOne » Wed Apr 23, 2014 5:45 pm #1423

fleure wrote:It sounds like explosions and loose singularities could be a lot easier on the server performance, then?



On my laptop, with a 1st gen intel duo with ht, doing a bomb cap bomb at lowest bomb cap, was instant.

no lag, no nothing.

upping the bomb cap to max, it took about 2 or 3 minutes of no response, followed by it running with less lag than we normally see when the singlo is beaconed and loose.

Now, this was with one person connected, who was ghosted (me).

No idea how it would run on sibyl with 60 users on.

Note: first bomb was in old ai core location on box right where the ai would be (i haven't updated in a bit)

second bomb was 3 squares up from the doors just above bridge that lead to brig.
Forum/Wiki Administrator, Server host, Database King, Master Coder

MrStonedOne on Reddit(banned), Steam, IRC, Skype Discord.

Jack7D1 wrote:After reviewing the history of our previous host(s) I conclude that MSO is our most favorable host to date. To remove him would be very unwise.
Jack7D1 wrote:I seem to be mistaken

User avatar
MrStonedOne
Host
 
Joined: Mon Apr 14, 2014 10:56 pm
Byond Username: MrStonedOne
Github Username: MrStonedOne

Re: Lag is over

Postby MrStonedOne » Wed Apr 23, 2014 5:58 pm #1426

More testing:
ADMIN LOG: MrStonedOne/(Izaiah Dimeling) changed the bomb cap to 7, 14, 28
ADMIN LOG: Explosion with size (7, 14, 28, 0) in area Bridge (113,138,1)


Code: Select all
                                                  Profile results (total time)
Proc Name                                                                         Self CPU    Total CPU    Real Time        Calls
-----------------------------------------------------------------------------    ---------    ---------    ---------    ---------
/datum/effect/effect/system/spark_spread/start                                       0.042        0.110      800.964          126
/datum/effect/effect/system/harmless_smoke_spread/start                              0.000        0.006       25.308            1
/client/proc/drop_bomb                                                               0.000        0.000       23.180            1
/proc/explosion                                                                      0.056        1.716       12.362            4
/datum/effect/system/expl_particles/proc/start                                       0.000        0.014        6.480            1
/obj/machinery/door/airlock/open                                                     0.000        0.002        6.103            5
/datum/controller/game_controller/proc/process_machines                              0.908        4.881        4.881           64
/mob/living/simple_animal/corgi/Ian/Life                                             0.004        0.004        3.215           65
/turf/Enter                                                                          0.050        0.077        3.201         3723
/obj/machinery/door/proc/open                                                        0.001        0.002        3.125            3
/obj/machinery/door/airlock/open                                                     0.000        0.002        3.125            3
/obj/machinery/door/airlock/proc/autoclose                                           0.000        0.000        2.978            4
/obj/machinery/door/airlock/close                                                    0.000        0.000        2.978            4
/obj/machinery/door/proc/close                                                       0.000        0.000        2.978            3
/obj/machinery/door/airlock/close                                                    0.000        0.000        2.978            3
/mob/living/say                                                                      0.004        0.006        2.952            2
/proc/flick_overlay                                                                  0.000        0.000        2.946            2
/proc/powernet_nextlink                                                              0.052        2.770        2.770          900
/obj/machinery/bot/secbot/Bump                                                       0.000        0.000        1.977            4
/obj/machinery/proc/auto_use_power                                                   0.375        1.810        1.820       114371
/turf/Entered                                                                        1.760        1.786        1.792         3075
/turf/simulated/Entered                                                              0.006        1.729        1.729         2771
/turf/New                                                                            0.009        1.628        1.628          212
/proc/qdel                                                                           0.011        1.281        1.282         1333
/datum/controller/air_system/proc/process_air                                        0.001        1.223        1.223           65
/datum/controller/air_system/proc/process                                            0.000        1.223        1.223           65
/datum/controller/air_system/proc/process_active_turfs                               0.030        1.183        1.184           65
/turf/simulated/proc/process_cell                                                    0.318        1.154        1.157        11813
/atom/movable/Bump                                                                   0.003        0.009        1.155         2397
/obj/machinery/door/Bumped                                                           0.000        0.004        1.150           35
/obj/machinery/door/proc/bumpopen                                                    0.000        0.004        1.150           11
/obj/machinery/door/airlock/bumpopen                                                 0.000        0.004        1.150           11
/obj/machinery/door/airlock/bumpopen                                                 0.000        0.004        1.150           11
/obj/machinery/proc/use_power                                                        0.487        1.079        1.098       148632
/turf/simulated/wall/Del                                                             0.825        0.935        0.935          227
/atom/movable/Del                                                                    0.877        0.881        0.883         1835
/obj/machinery/turret/proc/die                                                       0.000        0.001        0.869            2
/obj/machinery/turret/ex_act                                                         0.000        0.001        0.869            8
/datum/controller/game_controller/proc/process_mobs                                  0.028        0.726        0.726           65
/obj/machinery/proc/powered                                                          0.421        0.653        0.670       114657
/turf/simulated/proc/share_air                                                       0.073        0.498        0.501        29569
/datum/light_source/proc/check                                                       0.329        0.469        0.495       135294
/obj/machinery/ex_act                                                                0.002        0.476        0.476          720
/proc/get_area                                                                       0.441        0.449        0.471       152040
/obj/machinery/power/apc/process                                                     0.273        0.461        0.461         7793


Took about 5~ seconds to explode, followed by only a small amount of lag while moving for 20 seconds, followed by mostly smooth operation.
Forum/Wiki Administrator, Server host, Database King, Master Coder

MrStonedOne on Reddit(banned), Steam, IRC, Skype Discord.

Jack7D1 wrote:After reviewing the history of our previous host(s) I conclude that MSO is our most favorable host to date. To remove him would be very unwise.
Jack7D1 wrote:I seem to be mistaken

User avatar
MisterPerson
Board Moderator
 
Joined: Tue Apr 15, 2014 4:26 pm
Byond Username: MisterPerson

Re: Lag is over

Postby MisterPerson » Wed Apr 23, 2014 6:50 pm #1432

Do some tests with a pre-qdel() version of /tg/station with the current BYOND beta vs same /tg/station on the previous BYOND beta.
Just curious.
I code for the code project and moderate the code sections of the forums.

Feedback is dumb and it doesn't matter

User avatar
Wild Bill
 
Joined: Fri Apr 18, 2014 5:14 am

Re: Lag is over

Postby Wild Bill » Thu Apr 24, 2014 2:10 am #1527

Spoiler:
new != del

User avatar
MisterPerson
Board Moderator
 
Joined: Tue Apr 15, 2014 4:26 pm
Byond Username: MisterPerson

Re: Lag is over

Postby MisterPerson » Thu Apr 24, 2014 2:30 am #1531

Spoiler:
I'm trying to prove a point that these revolutions are because of GC and not from the current version.


You may now lower your expectations. /vg/ says there's been no change. Why am I not surprised?
I code for the code project and moderate the code sections of the forums.

Feedback is dumb and it doesn't matter

PostThis post was deleted by lzimann on Tue May 02, 2017 12:13 pm.

PostThis post was deleted by lzimann on Tue May 02, 2017 12:13 pm.


Return to Coding

Who is online

Users browsing this forum: No registered users