Normally my memory usage (not CPU usage) is like 30% or so, but after 2-3 days of botting in goes up to 80-90 or sometimes even 100%. Is there any chance to prevent it? I'm getting tired of restarting my computer all the time.
Printable View
Normally my memory usage (not CPU usage) is like 30% or so, but after 2-3 days of botting in goes up to 80-90 or sometimes even 100%. Is there any chance to prevent it? I'm getting tired of restarting my computer all the time.
Got same problem but when o bot 5h+ he gets hot really hot cpu 70%+ nothing to do just geting him cold thats all in my opinion or try put something cold under him you know safe cold item not water lol or ice
programs like ramrush or any other ram cleaners doesn't work? ,
I am not sure if using windaddon could lesser it. Do use the windaddon?
Been running scripts for 11days straight, Memory still at 30-35 %
Could always check task manager, take a look and see if the issue is with Windbot or Tibia. If it's the bot, Lucas can investigate, if it's Tibia, people can still investigate and possibly provide a patch but it's more in CIPs realm to try find a permanent fix.
Lol "My computer is on 2-3 days at a time. I hate restarting it ALL THE TIME." made me laugh
A restart takes 30 seconds. And you should do it every day, unless you don't give a fuck about your computer or VPS then go ahead and fuck that shit up.
What are you talking about? A computer should never need to be restarted. The only scenario where it needs restarting is when you need to perform firmware upgrades or when there are kernel changes which can't be performed while running, and even those are somewhat optional. My PC is usually online for a minimum of 5 days at a time, only rebooting for Windows updates or due to power cuts. I'll also sometimes reboot to fix hard drive issues (easier in Unix systems, Windows is kinda crap for that).
As for virtual machines / servers, well, this image kinda speaks for itself... Updates are due now, since I'm running a kernel upgrade, but 49 days is pretty standard for a server grade Linux installation running stuff which isn't security critical (security critical stuff would be about 20 days, but could be daily or annually, depending on the security market).
http://i.imgur.com/u1kbMBy.png
Probably an excessive answer, but take my word for it, rebooting a computer is not required all that often, and it won't do you any good. What will benefit you more is to find out what's causing it to get sluggish and fix it. In the majority of cases, you'll find things like Chrome caching too heavily, which you can solve by using a rarely used HDD for your userdata folder. Other common issues are memory leaks (solved by not using abusive applications, or by patching them), and lacking RAM - when paging begins, it's very difficult to get it to stop... If you don't have enough RAM, your system will begin to cache stuff to HDD using the pagefile. Once this has begun, it is very difficult to get Windows (and Linux/Unix systems) to stop doing it, the only realistic way is to reboot. The real solution to this, though, is just to kit out your system with enough resources and/or use more frugal software which won't lead to this situation.
I have never experienced any problems with memory or cpu usage lol.
It might be poor written script, which is causing high memory usage over time
I have the same problem on my VPS ... Just open it open already using 15 ~ 40% of the CPU and 60mb of Memory ...
The solution I have to do is put the fps tibia in 5 framerate by windbot addons , if I dxe 10 framerate uses the CPU too there have to leave the priority of WindBot low.
I guess this can be due to poorly written loops, happens preety often when i try to test something (obviously cause i suck at lua), windbot can even take 99% od your cpu preety easy, im not sure but didnt windbot use to break such loops on its own ?
The only person who would really know how WindBot handles garbage collection is Lucas, but in reality, garbage collection is handled for Lua by the engine itself, see this page, search 2.10 - Garbage Collection.
I know in Java it's possible to cause a memory leak using global references to instantiated objects, but I don't believe this is possible in Lua since the engine works by replicating data as opposed to referencing it, that is to say if you do:
function addOne(theNumber)
return theNumber + 1
end
a = 5
addOne(a)
In this code, in Java / C++ / C#, depending on the calling convention and how the code is adapted, it might maintain 2 copies of the data, or only one. It also depends on optimisation, so you could end up the following memory structure
0001 is the location in memory of the variable a, which contains the number 5 (binary form: 0101). When you call addOne, the following happens:Code:0001 contains 0101 (4)
Then, theNumber has 1 added to it, and you getCode:0001 contains 0101 (4)
0002 contains 0101 (4)
Then the assignment is performed to aCode:0001 contains 0101 (4)
0002 contains 0110 (5)
At this point, the calling convention, language, or garbage collection details how the second instance of the value is deleted...Code:0001 contains 0110 (5)
0002 contains 0110 (5)
In other circumstances, it will work so you start again with
Then, when the function is called, you'll get this:Code:0001 contains 0101 (4)
Next, 1 is added to the number:Code:0001 contains 0101 (4)
0002 contains 0001 (0001 being the address of the variable we want to add to)
At this point, the information stored at 0002 should be deleted, but as above, it depends on the calling convention, the language, and how the code itself is written. Anyway, the Lua engine handles things at this level, so it should, theoretically, be impossible to enter a scenario where that "pointer" (0002 in the last code block) is not deleted.Code:0001 contains 0110 (5)
0002 contains 0001
In the case of Lua C++ integration, the first example is how it works (I think, 99% sure). It may be optimised out when compiled, and it could work the other way around at a core level, but either way the point is that all this logic is executed by the Lua engine, and not by Lucas' code or by the script itself. I can't remember exactly where I was going with this....