logo separator

[mkgmap-dev] 192GB recommended

From Andrzej Popowski popej at poczta.onet.pl on Tue Jul 28 21:02:14 BST 2020

Hi,

I recently have noticed the following suggestion in mkgmap output:

"To reduce the run time, consider increasing the amnount of memory 
available for use by mkgmap by using the Java -Xmx flag to set the 
memory to more than 196700 MB, providing this is less than the amount of 
physical memory installed."

I run mkgmap to create files for PC installation - overview map, index, 
tdb. There is no actual compilation of any map. I guess, that condition 
for triggering the message is wrong in my case and maybe the 
calculations too. I mean this part of code in Main.java:

if ((taskCount > threadCount + 1) && (maxJobs == 0) && (threadCount < 
runtime.availableProcessors())) {
			System.out.println("To reduce the run time, consider increasing the 
amnount of memory available for use by mkgmap by using the Java -Xmx 
flag to set the memory to more than " + 100* (1 + ((runtime.maxMemory() 
* runtime.availableProcessors()) / (threadCount * 1024 * 1024 * 100))) + 
" MB, providing this is less than the amount of physical memory 
installed.");
		}

Is "taskCount" correct, when input files are only *.img?

"threadCount" is probably forced to 1, because I see message: "Setting 
max-jobs to 1". Then probably there is no need to multiply memory for 
all processors.

I'm not sure about "runtime.maxMemory()". It looks like 24GB which I 
have allocated with option -Xmx24G. Shouldn't it be a real memory used?

Well, all is not a problem really. I just found the message funny and 
investigated a bit. Btw, there is a typo: "amnount".

-- 
Best regards,
Andrzej


More information about the mkgmap-dev mailing list