Merge pull request #392 from PrismLauncher/max_ram_logic
This commit is contained in:
		| @@ -563,7 +563,7 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv) | |||||||
|  |  | ||||||
|         // Memory |         // Memory | ||||||
|         m_settings->registerSetting({"MinMemAlloc", "MinMemoryAlloc"}, 512); |         m_settings->registerSetting({"MinMemAlloc", "MinMemoryAlloc"}, 512); | ||||||
|         m_settings->registerSetting({"MaxMemAlloc", "MaxMemoryAlloc"}, 4096); |         m_settings->registerSetting({"MaxMemAlloc", "MaxMemoryAlloc"}, suitableMaxMem()); | ||||||
|         m_settings->registerSetting("PermGen", 128); |         m_settings->registerSetting("PermGen", 128); | ||||||
|  |  | ||||||
|         // Java Settings |         // Java Settings | ||||||
| @@ -1591,3 +1591,17 @@ QString Application::getUserAgentUncached() | |||||||
|  |  | ||||||
|     return BuildConfig.USER_AGENT_UNCACHED; |     return BuildConfig.USER_AGENT_UNCACHED; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | int Application::suitableMaxMem() | ||||||
|  | { | ||||||
|  |     float totalRAM = (float)Sys::getSystemRam() / (float)Sys::mebibyte; | ||||||
|  |     int maxMemoryAlloc; | ||||||
|  |  | ||||||
|  |     // If totalRAM < 6GB, use (totalRAM / 1.5), else 4GB | ||||||
|  |     if (totalRAM < (4096 * 1.5)) | ||||||
|  |         maxMemoryAlloc = (int) (totalRAM / 1.5); | ||||||
|  |     else | ||||||
|  |         maxMemoryAlloc = 4096; | ||||||
|  |  | ||||||
|  |     return maxMemoryAlloc; | ||||||
|  | } | ||||||
|   | |||||||
| @@ -200,6 +200,8 @@ public: | |||||||
|  |  | ||||||
|     void ShowGlobalSettings(class QWidget * parent, QString open_page = QString()); |     void ShowGlobalSettings(class QWidget * parent, QString open_page = QString()); | ||||||
|  |  | ||||||
|  |     int suitableMaxMem(); | ||||||
|  |  | ||||||
| signals: | signals: | ||||||
|     void updateAllowedChanged(bool status); |     void updateAllowedChanged(bool status); | ||||||
|     void globalSettingsAboutToOpen(); |     void globalSettingsAboutToOpen(); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 txtsd
					txtsd