On Fri, 2010-10-22 at 16:34 -0400, William L. Thomson Jr. wrote: 
> 
> In fact when java-config (written in Python) performance improves its
> because of data being cached in disk operations. At a much lower level,
> and nothing to do with Python at all, which is starting and stopping on
> every run.

FYI I am not doing a comparison of languages. I am seeking to do real
world use case comparisons.

This is one of the major problems regarding Gentoo's Java tools I am
seeking to speeding up. This is just one of many functions, but this is
the slowest, most major operation. The files its touching are tiny, and
its only touching 243 files.

java-config -l | wc -l
243

Files are package.env files that look like the following

DESCRIPTION="Reads XML configuration files to provide initialization of
various Java objects within the system."
GENERATION="2"
SLOT="0"
CATEGORY="dev-java"
PVR="1.8.1-r1"
CLASSPATH="/usr/share/commons-digester/lib/commons-digester.jar"
DEPEND="[email protected]:commons-collections....@commons-collections:commons-logging....@commons-logging"
VM=">=virtual/jre-1.4"
TARGET="1.4"
SOURCE="1.4"
MERGE_VM="icedtea6-bin"
MERGE_COMPILER="ecj-3.5" 

The output is not sorted, so no additional processing time there. Just
open file, read it into an array/vector, close file, and output results.

time java-config -l

real 0m11.320s
user 0m0.410s
sys 0m0.120s

real 0m0.446s
user 0m0.280s
sys 0m0.070s

real 0m0.512s
user 0m0.300s
sys 0m0.060s

real 0m0.469s
user 0m0.280s
sys 0m0.070s

That is ridiculously slow IMHO (can blame the disk I/O in part). Another
C app I wrote, asspr, will hit thousands of emails, much larger than any
package env file, and return output in much less time. Even with a hit
on initial run till disk cache kicks in, still much faster.

Now I have run the above many times on different machines. There is
always a few second delay if there is nothing in the disk cache. Once
its run, if anything is cached, even after a while. Performance is as
bad, but I won't say its good either. Either way its rarely run back to
back like that, with disk cache remaining. Which cache may remain as you
are compiling and installing packages, but more likely not.

I will be shocked if after I recode java-config -l in C and its speed
does not improve substantially. Much less for other operations.

-- 
William L. Thomson Jr.
Obsidian-Studios, Inc.
http://www.obsidian-studios.com

This message (including any attachments) contains confidential
information intended for a specific individual and purpose, and is
protected by law. If you are not the intended recipient, you should
delete this message.

Any disclosure, copying, or distribution of this message, or the taking
of any action based on it, is strictly prohibited.



---------------------------------------------------------------------
Archive      http://marc.info/?l=jaxlug-list&r=1&w=2
RSS Feed     http://www.mail-archive.com/[email protected]/maillist.xml
Unsubscribe  [email protected]

Reply via email to