From owner-freebsd-java@FreeBSD.ORG Tue Feb 12 08:03:26 2013 Return-Path: Delivered-To: freebsd-java@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 61BB7AAB for ; Tue, 12 Feb 2013 08:03:26 +0000 (UTC) (envelope-from achill@matrix.gatewaynet.com) Received: from smadev.internal.net (adsltrust.ath.forthnet.gr [194.219.204.174]) by mx1.freebsd.org (Postfix) with ESMTP id 91E8AB6D for ; Tue, 12 Feb 2013 08:03:24 +0000 (UTC) X-Bogosity: No, tests=bogofilter Received: from smadev.internal.net (localhost [127.0.0.1]) by smadev.internal.net (8.14.5/8.14.5) with ESMTP id r1C83NB3046153 for ; Tue, 12 Feb 2013 10:03:23 +0200 (EET) (envelope-from achill@matrix.gatewaynet.com) Received: (from achill@localhost) by smadev.internal.net (8.14.5/8.14.5/Submit) id r1C83N5s046152 for freebsd-java@freebsd.org; Tue, 12 Feb 2013 10:03:23 +0200 (EET) (envelope-from achill@matrix.gatewaynet.com) X-Authentication-Warning: smadev.internal.net: achill set sender to achill@matrix.gatewaynet.com using -f From: Achilleas Mantzios To: freebsd-java@freebsd.org Subject: Re: Problem with Java System.exit on OpenJDK 7 Date: Tue, 12 Feb 2013 10:03:23 +0200 Message-ID: <2092461.Iuophl5C6i@smadev.internal.net> Organization: Dynacom Tankers Mgmt X-Face: "g.Z.Lx$T1ZMcQ%hC!e^E&tD,cT:"bTs45WM(,vUj@8QBz6}T'sn+EnZTzy`UVQ:&A=`_; f)V+K4z}rG5:(uu[b:WY'*`6F"ou-Or(q; u{#Gxx|MkO4E.vh@E}[#7Ytt"shtU>A&@CO` a|Wx]m_wRD,?4!'Ir1$4iis{/.WU<`#dhKI]g2w^!B[CvRJr+W|; -VS~QcL!s1"'??rct} ^=5Fa!W!{a}Jd:W%6,E[N\r-<)T'_N[~3fy9pF"b>-Yj^p}/2tPudP>I"$%w]"W4CIja6J Tajm}"8t`-hJlf2kRQ_V,eT_kN6KLG+~2mZ+cPX,p,xQN9QVR References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" X-BeenThere: freebsd-java@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting Java to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2013 08:03:26 -0000 (sorry, i am resending this from a valid From:) some suggestions/thoughts : - ktrace=20 - truss - gdb against a _g version (debugging enabled) of OpenJDK 7 java (if av= ailable) - jdb I doubt KDE or anything would have any relation to your problem. It might more likely be related to libthr/libc What version of Java do you have on Windows? You have to realize jumping from Windows/(Oracle?)Java to FreeBSD/Openj= dk7 makes a huge difference. Hmmmm this looks also like a TCP/IP timeout kind of thing... just a raw= speculation. Can you try with disabling IPV6? On =C3=8E=C2=94=C3=8E=C2=B5=C3=8F=C2=85 11 =C3=8E=C2=A6=C3=8E=C2=B5=C3=8E= =C2=B2 2013 17:15:23 David P. Caldwell wrote: > So I'm having a problem with the performance of a Java subprocess run= ning > under Java, running on 9.0-RELEASE i386. >=20 > It's a big subprocess, difficult to decompose. It's a big parent proc= ess, > difficult to decompose. I'm working on it. I've nearly ruled out the = parent > process as the culprit (see below), but I include it for completeness= , just > in case there's something I'm missing. >=20 > Everything runs as expected on Windows, which brings me here to this = list. >=20 > Basically, the parent process launches the subprocess using a Java co= mmand. > It runs. It runs fine. The *subprocess* calls System.exit(0). That's = where > the weirdness begins. >=20 > System.exit(), for this program, takes about 2.6 seconds to run. And = I > can't figure out why. It takes 0.025 seconds on Windows. >=20 > The program is a command shell, essentially, so having every subshell= add > 2.6 seconds of unnecessary execution time really slows things down. >=20 > 1. The application has System.runFinalizersOnExit set to false; I che= cked > in java.lang.Shutdown using reflection to be sure. >=20 > 2. The application, during its shutdown, has only one shutdown hook t= o run > -- the application shutdown hooks hook. That application shutdown hoo= ks > hook has one hook, registered by me, which prints the timestamp (for = trying > to debug this), only. Something takes 2.6 seconds to end the VM after= this. >=20 > 3. There are no temporary files to delete; I checked in > java.io.DeleteFilesOnExit using reflection to make sure. The system > registered shutdown hook in the slot for DeleteFilesOnExit is null. >=20 > The problem appears to have nothing to do with the parent process. I > synthesized a giant command line command using the environment variab= les > and system properties under which the subprocess is running, and ran = it > from the bash prompt, and still got the 2.6 second delay, based on ru= nning > the program inside a bash wrapper that first ran the subprocess giant= > command, then printed the system time. I'm 99.9% ready to rule it out= based > on that. >=20 > During one experiment, when running the program twice on the same com= mand > line, one of the runs, using the same command line, actually complete= d > System.exit in a time I'd expect -- about 0.03 seconds. The other too= k > about 2.6 seconds. All subsequent runs have take about two-and-a-half= > seconds after the shutdown hooks; I haven't been able to reproduce th= e > success and I am quite sure I didn't change anything. >=20 > I'm running this in a graphical terminal on KDE; haven't tried from a= n > ordinary console (obviously I am gradually broadening the things I'm = doing, > so I'll probably get to that). The program is not graphical and prese= nts no > GUI. >=20 > The application does reference the standard input stream but the part= icular > program I was running consumes no input. It references stdout and std= err as > well, and is emitting output to those consoles. >=20 > Does anyone have any idea or suggestions about where I should be look= ing at > this point? Obviously it's hard to instrument the program further on > FreeBSD -- I assume the NetBeans Profiler / jvisualvm stuff does not = work > on FreeBSD; that's the last I heard. > _______________________________________________ > freebsd-java@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-java > To unsubscribe, send any mail to "freebsd-java-unsubscribe@freebsd.or= g" - Achilleas Mantzios IT DEV IT DEPT Dynacom Tankers Mgmt