![]() StartingPoints Referenced by
|
KGS Client Memory Consumption Page
Keywords: Online Go
Dieter: This page has a wrong title, is not about Go and instead contains a dump of memory useage. Request for deletion?. Hu: I disagree. This page is designed to assist the efficacy of using a popular Go server to play Go. The large process table is not very useful and should be summarized or deleted. The page has been retitled to correct the spelling error. Perhaps this page should be wiped in 2005 or sooner since CGoban2 is evolving all the time and the memory consumption here may no longer be accurate, or as much of a problem, by then. If this page is useful, then correct the spelling of the title, please.jab: (after a discussion on KGS Wishlist Technical ) At 1) I clicked on 4 SGF in mozilla, four independent instances of Cgoban opened, each taking away quite some memory. At 2) I opened one Cgoban main window and clicked 4 times the "Edit SGF File" button to also end up with four goban's. This time they shared the main instance of Cgoban, thus taking away much less memory. From the numbers below I say case 1) takes away more memory than case 2) - and case 1) will be used in all instances where mime/link (click and go) is used. mgoetze Do you agree ? mgoetze: No, ps tells you how much memory each process is accessing, but not how much of that is shared with other processes. In one case you are counting a certain memory region once, and in the other case you are counting that same memory region four times. jab: That might be right and I am not speaking about the absolut numbers cgoban compared to acroread. Let us take a /usr/local/bin/cgoban line in the ps output, which represents one time cgoban run by a jvm with all its shared libraries. In case 1) we have this line four times in 2) just once (just as a note in both cases 4 sgf editors were open). For the shared libraries your remark is true, but for the jvms not. Also I believe that most of the java api is implemented not by shared libraries, which would render the sandbox idea void. Anyway maybe I should not try to give numbers myself, but ask directly for a proof against my claim. My claim is that memory wise on a xterm: cgoban f1.sgf ; cgoban f2.sgf ; cgoban f3.sgf ≫ cgoban f1.sgf f2.sgf f3.sgf while acroread file1.pdf ; acroread file2.pdf; acroread file3.pdf ≈ acroread file1.pdf file2.pdf file3.pdf Anybody points against or for this claim ? mgoetze: I am not at all interested in the implementation of Java, but I'll stick to what I've said from the start - there's nothing that can be changed in CGoban to satisfy your "wish", wish is therefore quite pointless. Cheyenne: First try doing java -jar cgoban.jar f1.sgf; ... _ This eliminates the shell script surrounding the java invocation. Next you should try doing the same test with another java application (just find a "hello world" type of application). I suspect again that the results you are seeing are with the java runtime environment and not with cgoban application itself. Rakshasa: "size" and "tsiz" are more intereststing than pmem. Cheyenne: Take a close look at how mozilla is invoking cgoban. It is invoking it indirectly via the shell. You are not dealing with a browser plug in, but an external invocation of an app. The reason why you see acrobat with only one instance is that acrobat provides a browser plugin interface. If you are really concerned about how much memory per instance cgoban is using, just launch cgoban directly and edit the sgf files via the cgoban menu. jab: Cheyenne, I agree to launch it directly and edit via sgf menu - that is what I do at the moment. And I am not saying my request is urgent, just that it would be a nice feature to add. I will also see if the plugin invocation helps. I just want to state that I didn't compare it to acrobat invoceed by mozilla (help>plugins>shows I have none installed), but by doing "acrobat x.pdf; acrobat y.pdf; acrobat z.pdf" on a shell. So it should be comparable to indirect invocation via shell of mozilla. Below the exact numbers (to the top comment): 1) ps -Heo pid,ppid,user,pmem,cmd
PID PPID USER %MEM CMD
1 0 root 0.0 init
2108 1 jab 0.0 kdeinit: Running...
2174 2108 jab 0.0 /bin/sh /usr/local/mozilla/run-mozilla.sh /usr/local/mozilla/mozilla-bin
2180 2174 jab 14.8 /usr/local/mozilla/mozilla-bin
2181 2180 jab 14.8 /usr/local/mozilla/mozilla-bin
9347 2181 jab 14.8 /usr/local/mozilla/mozilla-bin
9348 9347 jab 0.0 /bin/sh /usr/local/bin/cgoban /tmp/mirkof-jab-20030701.sgf
9349 9348 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9350 9349 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9351 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9352 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9353 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9354 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9355 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9356 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9357 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9368 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9381 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9387 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9392 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9394 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9397 9350 jab 9.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/mirkof-jab-20030701.sgf
9358 9347 jab 0.0 /bin/sh /usr/local/bin/cgoban /tmp/wfholden-jab-20030726.sgf
9359 9358 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9360 9359 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9361 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9362 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9363 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9364 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9365 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9366 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9367 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9372 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9384 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9388 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9391 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9393 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9398 9360 jab 8.5 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/wfholden-jab-20030726.sgf
9369 9347 jab 0.0 /bin/sh /usr/local/bin/cgoban /tmp/ynohoo-jab-20030802.sgf
9370 9369 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9371 9370 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9373 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9374 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9375 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9376 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9377 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9378 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9379 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9380 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9383 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9389 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9390 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9395 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9396 9371 jab 9.6 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/ynohoo-jab-20030802.sgf
9413 9347 jab 0.9 /bin/sh /usr/local/bin/cgoban /tmp/goaddict-jab-20040326.sgf
9414 9413 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9415 9414 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9416 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9417 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9418 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9419 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9420 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9421 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9422 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9423 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9424 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9425 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9426 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9427 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
9428 9415 jab 31.0 java -jar /usr/local/src/cgoban/cgoban.jar /tmp/goaddict-jab-20040326.sgf
2243 2180 jab 0.0 netstat? <defunct>
2) ps -Heo pid,ppid,user,pmem,cmd PID PPID USER %MEM CMD 1 0 root 0.0 init 2152 1 jab 3.7 kdeinit: kdesktop 2195 2152 jab 0.0 /bin/sh /usr/local/bin/cgoban 2196 2195 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2197 2196 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2198 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2199 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2200 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2201 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2202 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2203 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2204 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2205 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2206 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2207 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2208 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2210 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2214 2197 jab 7.3 java -jar /usr/local/src/cgoban/cgoban.jar 2626 2152 jab 0.4 /opt/kde3/bin/kdesktop_lock
Neil: Here are my figures on USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND neil 536 6.5 10.2 222656 52988 p0 S 4:22PM 0:10.98 java -jar cgoban.jar [Paths removed in command line from java and cgoban.jar for legibility] This data was taken with the client logged in, having open a few rooms and one completed game. The client was just opened, so there is no time for a slow and long memory leak to account for those 200MB and 50MB figures. This is a copy of the living page "KGS Client Memory Consumption Page" at Sensei's Library. ![]() |