Hello There, Guest! Login or Register


Streamer plugin CPU fuckup @ new server [Very high priority!]
#1
Since .dev is kinda dead right now: someone needs to pick this up ASAP because our current server will expire soon-ish.

On our new server, which has been running minecraft already for a while, but so far the SA-MP testruns are running like shit.
An empty server with LVP is taking 5% CPU usage, while a "full" running LVP gamemode at the current server isn't even using 2%.
Changing the gamemode to lvdm and the CPU usage is normal, aka 0% with an empty server. So it is something in LVP.

I think I have managed to trim the problem down as far as I can, it seems to be the streamer plugin. We are using this Streamer Plugin amirite? If so, I updated the plugin at the new server already to the latest 2.6.1, aka 0.3e version. But that didn't help.

Plus I saw the following warnings/errors in the server_log:
[12:11:40] *** Streamer Plugin: Include file version (0) does not match plugin version (0x26104) (script needs to be recompiled with the latest include file)
[12:11:40] *** Streamer_SetIntData: Invalid data specified

On the WIKI I saw something related to Streamer_TickRate which could be tested:
Note: The tick rate varies depending on the server's processing power. If items stream too slowly, lower the tick rate; if CPU usage gets too high, raise the tick rate.
I have no clue what the current tick rate is, but it is probably too low right now :)

So hopefully it is a quick and easy fix, otherwise we have a serious problem next month.
Reply
#2
I don't really want to go peaking with the tick rate function since the author of the plugin doesn't really explain what impact it has.

The reason its using a lot of memory is because it's loading the wrong version of the plugin against the wrong include file (0.3d plugin on a 0.3e server). Updating the plugin alone isn't sufficient, LVP needs to be compiled with the latest plugin include file too. This isn't as easy as it sounds because I've modified it slightly.

If you run the lvp.amx that's on the main server right now, along with all the plugins on the main server, on a 0.3d server, it should work as expected. You can download 0.3d linux server here: http://files.sa-mp.com/samp03dsvr_R2.tar.gz


What's the official date of the move? I didn't really want to change anything on the current live gamemode as I'd have to back-track the code in order to update the plugin. If I can aim to get 2.95 finished for the move date that'd be fantastic.

Reply
#3
LVP is running on 0.3e, right?
So how would running a 0.3d server help?

Plus it is not the memory usage, it is CPU. Can't you/someone, compile a 0.3e version for LVP 2.94.x with the 0.3e streamer plugin, with a few different thick rates, so I can check the CPU load?
Because I'm affraid that running the current gamemode on the new server will decrease the already worse performanse of LVP, object wise.

I'm not 100% sure when the current server actually ends, but the next payment is scheduled @ 01-07-12.
And since the old server costs about 3 times as much as the new server... MrBondt and I where aiming to switch SA-MP next weekend!
Reply
#4
Bump, this is really important. I'd like to see this fixed this weekend.
Reply
#5
I am not really familiair with this source yet, however the one who knows where the configuration files are, could try the following:
For player loops, never use default for-loops. Use foreach
Code:
#undef foreach
#define foreach(%1,%2) \
    for (new %2 = 0, %1 = 0; %1 < MAX_PLAYERS; %1++)

Also, undefine MAX_PLAYERS and define it with the current maximum player slots.
Code:
#undef MAX_PLAYERS
#define MAX_PLAYERS 124
(redefine MAX_PLAYERS first)
Please, tell me the results after this has been changed.

Edit: This is not related to the streamer, but I am not sure if the Streamer plugin is actually causing this.
Reply
#6
(06-17-2012, 12:46 AM)Jay_ link Wrote: I don't really want to go peaking with the tick rate function since the author of the plugin doesn't really explain what impact it has.
Doesn't this explain the impact enough? :p

(06-23-2012, 01:07 PM)Biesmen link Wrote: Also, undefine MAX_PLAYERS and define it with the current maximum player slots.
We're already using that, I think it's the SLOTS define. We're also using a MAXPLAYERS variable (shouldn't be all caps really) which contains the current amount of players on the server.

I uploaded an amx to the server (with the Streamer_TickRate fix), seeing as the server already ran the latest plugin version and was already compiled against the 0.3e version of the include. Sander should test it now! :p.
Reply
#7
Good work, Matthias :)
Reply
#8
Thank you :). I think Sander said that it helped :). If necessary, we can increase the tickrate even more :p.
Reply
#9
I just killed the samp03svr process on the new server because it was using 101% CPU:

15818 samp      20  0 1548m 1.5g 3004 R  101  4.7  2975:50 samp03svr

Seems there's still work to be done. It's worth mentioning that samp03svr had to be killed with kill -9. Normal kill didn't work.
Reply
#10
Send me the FTP / SSH details
Reply