From owner-freebsd-java@FreeBSD.ORG Wed Apr 2 16:24:03 2008 Return-Path: Delivered-To: freebsd-java@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4A0141065674 for ; Wed, 2 Apr 2008 16:24:03 +0000 (UTC) (envelope-from scrappy@hub.org) Received: from hub.org (hub.org [200.46.204.220]) by mx1.freebsd.org (Postfix) with ESMTP id CAC5A8FC2C for ; Wed, 2 Apr 2008 16:24:02 +0000 (UTC) (envelope-from scrappy@hub.org) Received: from localhost (unknown [200.46.204.184]) by hub.org (Postfix) with ESMTP id 175A41687519; Wed, 2 Apr 2008 13:24:02 -0300 (ADT) Received: from hub.org ([200.46.204.220]) by localhost (mx1.hub.org [200.46.204.184]) (amavisd-maia, port 10024) with ESMTP id 46198-05; Wed, 2 Apr 2008 13:23:59 -0300 (ADT) Received: from fserv.hub.org (blk-7-245-234.eastlink.ca [71.7.245.234]) by hub.org (Postfix) with ESMTP id AFFD31687514; Wed, 2 Apr 2008 13:24:00 -0300 (ADT) Received: from localhost (localhost [127.0.0.1]) by fserv.hub.org (Postfix) with ESMTP id 7852A60169; Wed, 2 Apr 2008 13:24:00 -0300 (ADT) Date: Wed, 2 Apr 2008 13:24:00 -0300 (ADT) From: "Marc G. Fournier" To: Greg Lewis In-Reply-To: <20080402064543.GA30534@misty.eyesbeyond.com> Message-ID: <20080402131022.P87973@fserv.hub.org> References: <24A133A6EE9DA04411B3CF04@ganymede.hub.org> <20080401161800.1c4ee021.cyb.@gmx.net> <20080402064543.GA30534@misty.eyesbeyond.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Andreas Rudisch <"cyb."@gmx.net>, freebsd-java@freebsd.org Subject: Re: Azureus + 7-STABLE == Slow download + No Upload X-BeenThere: freebsd-java@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting Java to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Apr 2008 16:24:03 -0000 > The reason that we've persisted with doing patchsets for Java is so that > everybody can get at the source and investigate/fix things which are > important to them. I've persistently argued against switching solely to > binary releases, when that has come up, for just this reason. First, a note ... I think the Java group is doing a fantastic job, considering all of the hurdle that you guys had to jump through at the start of this with NDA (I believe?) and such ... please do not take *any* of what I have (or will) say as anything but an attempt to further improve, as they aren't meant as anything but ... > So, if you can't find someone on the porting team who is both interested > and has time to investigate it right now then there are a number of things > you can do yourrselves to start the investigation. In this case, I'm curious as to why nobody is taking this as an opportunity ... Azureus is a huge piece of software, that tends to make extensive use of threading (from what I can tell), and since at least 6.x, has had problem reports when trying to do 'two things at once' ... if this is a coding bug with Azureus itself, fine, but if this is a bug with FreeBSD (ie. our threading + java) that Azureus highlights to the extreme, then if we can get Azureus fixed, that would trickle down to other less 'intense' java applications, and, possible even non-java ones ... *But* ... after installing deluge (python), which I'm getting massive transfer rates (such that I'd never seen with Azureus even at its best) even with 20+ torrents on the go, I don't see it as being a FreeBSD threading issue, except for how that interacts with Java+Azureus ... Now, it could be like with Wine, where Azureus was programmed with 'linux in mind', so that someone is missing / broken in FreeBSD/java in relation ... but even knowing *that* would at least make it easier for ppl posting about such issues ... > . Look through the list archives into what people have found out about > problems with Azureus before. This isn't the first time this has come > up. I've done that, and you are right, it isn't the firs time ... the bulk of the reports have revolved around 6.x, where you need to add an entry to /etc/libmap.conf to map pthread -> thr ... with that, Azureus on 6.x works fine, but with 7.x, thr is the default library, and I've checked jdk15 using ldd to make sure that that is what is being used ... The only other issue I've found relates to IPv6, but I don't have that built into my kernel, and, just in case, I did add the flag that was suggested to force IPv4 ... The other email's that I've seen on the subject generally went along the lines of "I gave up on Azureus+Java and moved to something else to fix the problem" ... > . Look at what the kernel threads are doing periodically with ps(1). What should one be looking at here? I have no problems with doing the 'leg work' on this, just need to know what I need to be looking for ... > . Dump the Java threads periodically. Huh? > . Run Azureus under ktrace and look at what syscalls are being made. > There is going to be a lot of output from ktrace I expect, so its > going to take some time to sort through. I have the disk space, but insufficicent knowledge to know what I'm looking for from the output ... > . Run this on 6.x and 7.x and try the different threading libraries. 6.x runs fine with the pthread->thr map in /etc/libmap.conf ... I've tried it on 7.x with both diablo (uses pthreads, I believe) and jdk15 (with thr) .. same results ... > . Run it on Linux and compare what it does if you're interested. Not an option ... I don't have a Linux box to run it on ... > . Run it under different JDKs to see if that makes any difference. Tried both diablo and jdk15 ... haven't tried the linux jdk though, will look at installing that tonight ...