Re: time after time

Bill Yerazunis <[email protected]>
Newsgroups gmane.mail.spam.crm114
Message-ID <[email protected]>
   From: "Eric S. Johansson" <[email protected]>

   well, I've run this test a few times and I consistently get the
   same result.  running a single CRM 114 is no faster than running
   numeral for concurrent CRM 114 processes.  not only that, I still
   get the same distorted scores results.

   I've run this test on virtual and physical machines and get
   approximately the same results.  I'm going to run the tests on a
   physical machine again tonight and publish them separately.

   the first set of data is the number of training events that occur
   in a given time.  For example, 0.5 seconds had two training events
   take that long.  Sorry, I didn't sort it.  Also, rule out the 0.0
   line.  I think there's a bug in my statistics gathering there.  The
   second check again it is the result of the command run through
   time.  As you can see, it's relatively evenly split between user
   and system time.

This is very, very wierd.

Maybe we should chat over the phone on this?  I need to understand
more about the actual code you're using.

     - Bill Yerazunis


   A single run:


   0.0, 10378
   0.5, 2
   0.1, 690
   0.2, 34
   1.0, 1
   0.3, 1
   0.6, 1

   real    25m56.214s
   user    11m25.260s
   sys     13m36.850s

   now, let's look at 4 processes running at the same time.  Now in order to give 
   CRM 11 for the best possible advantage, all four processes are using the same 
   .css files.  in theory, the CSS image would be mapped into memory and generally 
   stay there as long as there was a least one process using it.  Uh-huh.

   0.0, 9236
   0.5, 31
   0.2, 480
   0.8, 7
   0.1, 3
   0.6, 58
   0.3, 1007
   0.4, 221
   0.9, 1
   0.7, 63


   real    94m46.274s
   user    11m25.460s
   sys     11m56.510s

   0.0, 9263
   0.5, 27
   0.4, 209
   0.2, 471
   0.1, 4
   0.6, 36
   0.3, 1016
   0.8, 20
   0.9, 3
   0.7, 58

   real    94m44.155s
   user    11m23.110s
   sys     11m58.610s

   0.0, 9253
   0.5, 41
   0.8, 15
   0.4, 200
   1.0, 3
   0.1, 4
   0.6, 50
   0.3, 1017
   0.2, 470
   0.7, 54

   real    94m45.234s
   user    11m22.620s
   sys     12m0.060s

   0.0, 9264
   0.5, 28
   0.8, 14
   0.2, 432
   1.0, 1
   0.1, 7
   0.6, 42
   0.3, 1036
   0.4, 220
   0.9, 1
   1.7, 1
   0.7, 61

   real    94m43.708s
   user    11m20.050s
   sys     12m0.210s

   they all take roughly 4 times the execution time of a single process.  The load 
   average climbed to about three plus.  You can see why I've come to the 
   conclusion that a single threaded CRM 114 is just as efficient as multiples 
   running at the same time.

   needs some refinement but is is clear that forking is taking a *big* chunk of time.

   also separately I collected some stats on performance of my Python code just in 
   case I was doing something "unpleasant".  this is one of those moments where I 
   wish Thunderbird would not wrap lines.

    >>> stats.print_stats()
   Tue Jun  3 10:52:55 2008    /tmp/crm114.perf

	     1871173 function calls in 63.730 CPU seconds

       Ordered by: cumulative time, internal time

       ncalls  tottime  percall  cumtime  percall filename:lineno(function)
	    1    0.000    0.000   63.730   63.730 test_train.py:149(main)
	    1    0.000    0.000   63.730   63.730 profile:0(main())
	    1    0.000    0.000   63.730   63.730 <string>:1(<module>)
	    1   11.150   11.150   63.720   63.720 test_train.py:45(retrain)
	11107    1.760    0.000   34.450    0.003 
   /home/esj/projects/crm114-test/crm114.py:187(score_message)
	11591    2.070    0.000   23.690    0.002 
   /usr/lib/python2.5/subprocess.py:535(__init__)
	11591    0.910    0.000   20.440    0.002 
   /usr/lib/python2.5/subprocess.py:1037(_execute_child)
	11591   14.870    0.001   14.870    0.001 :0(fork)
	11591    0.170    0.000   10.590    0.001 
   /usr/lib/python2.5/subprocess.py:643(communicate)
	11591    1.950    0.000   10.420    0.001 
   /usr/lib/python2.5/subprocess.py:1183(_communicate)
	 8059    1.410    0.000    8.320    0.001 
   /home/esj/projects/crm114-test/crm114.py:157(train_as_bad)
	 8059    1.380    0.000    6.140    0.001 
   /home/esj/projects/crm114-test/crm114.py:33(dump_stack)
	 8059    0.200    0.000    4.520    0.001 
   /usr/lib/python2.5/traceback.py:131(format_exception)
	77126    3.750    0.000    3.750    0.000 :0(read)
	 3048    0.290    0.000    3.110    0.001 
   /home/esj/projects/crm114-test/crm114.py:126(train_as_good)
	 8059    0.000    0.000    3.100    0.000 
   /usr/lib/python2.5/traceback.py:74(format_tb)
	48160    0.030    0.000    2.490    0.000 
   /usr/lib/python2.5/subprocess.py:981(_read_no_intr)
	44428    2.440    0.000    2.440    0.000 :0(time)
	39306    2.330    0.000    2.330    0.000 :0(isinstance)
	  484    0.140    0.000    2.310    0.005 
   /home/esj/projects/crm114-test/crm114.py:80(CRM114_train)
	92729    2.260    0.000    2.260    0.000 :0(close)
	11591    1.670    0.000    2.090    0.000 
   /usr/lib/python2.5/subprocess.py:1174(wait)
	43459    1.950    0.000    1.960    0.000 
   /usr/lib/python2.5/posixpath.py:56(join)
	 8059    0.910    0.000    1.780    0.000 
   /usr/lib/python2.5/traceback.py:78(extract_tb)
       135679    1.700    0.000    1.700    0.000 :0(select)
	43343    1.410    0.000    1.410    0.000 :0(syslog)
	 8059    1.310    0.000    1.320    0.000 
   /usr/lib/python2.5/traceback.py:27(format_list)
	 8059    0.500    0.000    1.220    0.000 
   /usr/lib/python2.5/traceback.py:148(format_exception_only)
	34773    1.140    0.000    1.140    0.000 :0(fdopen)
	11591    0.050    0.000    1.030    0.000 
   /usr/lib/python2.5/subprocess.py:961(_set_cloexec_flag)
	23182    0.980    0.000    0.980    0.000 :0(fcntl)
	87485    0.870    0.000    0.870    0.000 :0(append)
	99110    0.170    0.000    0.760    0.000 
   /usr/lib/python2.5/subprocess.py:993(_write_no_intr)
	99110    0.590    0.000    0.590    0.000 :0(write)

   -------------------------------------------------------------------------
   Check out the new SourceForge.net Marketplace.
   It's the best place to buy or sell services for
   just about anything Open Source.
   http://sourceforge.net/services/buy/index.php
   _______________________________________________
   Crm114-general mailing list
   [email protected]
   https://lists.sourceforge.net/lists/listinfo/crm114-general


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.