-
-
Notifications
You must be signed in to change notification settings - Fork 213
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OTBM RAM usage #624
Comments
I bet this is the result of getting rid of: I'm using Naruto Story client and I haven't tested Mehah's client long time, but I've been following Mehah's changes. From what I remember, he got rid of attributes in thingType, which had long seemed suspicious to me in terms of RAM. I often see reports on Discords that something is not working, either in OTCv8 or Redemption. |
I believe that the high memory consumption is due to the use of phmap::flat_hash_map, try replacing it with std::unordered_map and see if the consumption decreases. |
@mehah One thing I've noticed is that .otmm files generated by Redemption are 5-10% bigger than files generated by other OTCs.
Only commit with |
@gesior
|
std::dynamic_storage (note: this is just you are comparing a simple 64bit integer with a class, with some methods, a vector and 'any' anyway, @gesior , I have some priorities ahead, as soon as I have time off, I'll pay attention to this, especially because I want to transform the Client into a map editor, so it needs to consume little memory. |
I'm sorry I misled you and thank you for the correction |
@conde2 Anyway, I must first test if https://github.com/gesior/otclient_mapgen code moved to Mehah will be able to render map images using 13+ client files and no .otb file or Mehah code for 13+ reads only features required by client, ignoring data required to load .otbm. |
This issue is stale because it has been open 120 days with no activity. |
test this commit note: Perhaps consumption is still a little high, as we use shared_ptr from STL, instead of OTC Legacy. https://github.com/edubart/otclient/blob/master/src/framework/stdext/shared_ptr.h |
Looks like this commit is merged into Line 321 in 8160999
I removed this line and now it compiles.
There is some reduction. I will try to add 'map renderer' code to Mehah OTC next week and test how fast it will work. |
Priority
Low
Area
What happened?
I've tried to generate full minimap for TFS using OTClient Redemption. Typed in Terminal:
and RAM usage went to 550 MB - with edubart/OTCv8 it's 374 MB.
Then tested with 115 MB .otbm map and it looks like Redemption client uses 2x more memory for OTBM:
edubart Release x64: 4244 MB RAM
OTCv8 Release x86: too big map for 32-bit
Mehah Release x64: 8672 MB RAM
Mehah Debug x64: 16651 MB RAM
I also tested this on Linux and the results are the same. Redemption client used 10 GB after loading 115 MB .otbm.
Does anyone have an idea what was changed in Redemption client that it uses 2x more RAM for OTBM?
What OS are you seeing the problem on?
Linux, Windows
Code of Conduct
The text was updated successfully, but these errors were encountered: