[debian-edu-commits] debian-edu/ 126/183: Add section about performance to README Add sanitiy checks to performance testscript

Alexander Alemayhu ccscanf-guest at moszumanska.debian.org
Wed Jun 11 16:48:40 UTC 2014


This is an automated email from the git hooks/post-receive script.

ccscanf-guest pushed a commit to branch master
in repository desktop-profiles.

commit cdc1bc4cf2c16c5719527ad785fc7a1bc53ebb19
Author: Bart Cornelis <cobaco at linux.be>
Date:   Tue Dec 5 19:32:52 2006 +0000

    Add section about performance to README
    Add sanitiy checks to performance testscript
---
 README                   | 33 +++++++++++++++++++++++++++++++++
 debian/changelog         | 12 ++++++++++--
 tests/performanceTest.sh | 24 ++++++++++++++++++++----
 3 files changed, 63 insertions(+), 6 deletions(-)

diff --git a/README b/README
index 5e2d5ce..2cde257 100644
--- a/README
+++ b/README
@@ -38,6 +38,39 @@ KNOWN BUGS
   script of these shells is modularized, and thus the required code-snippet is
   dropped into place on package installation.
 
+PERFORMANCE
+=-=-=-=-=-=
+For those wondering about performance, I did some benchmarking showing the
+following:
+
+- needed execution time of the script is linear in respect to the number of 
+  profiles (i.e. O(n) with n = #profiles), tested up to a 100 profiles.
+
+- with /bin/sh pointing to dash (averaged over 10 runs)
+			out-of-the-box	20	30	40	50	60
+  pentium2 350 Mhz:		0.594	0.980	1.168	1.369	1.557	1.751
+  celeron M 1.4 Ghz:		0.100	0.140	0.170	0.212	0.248	0.284	
+  centrino duo 1.83 GHz:	0.080	0.121	0.150	0.188	0.220	0.254
+
+- with /bin/sh pointing to bash (averaged over 10 runs)
+			out-of-the-box	20	30	40	50	60
+  pentium2 350 Mhz:		0.983	1.534	1.878	2.236	2.585	2.944
+  celeron M 1.4 Ghz:		0.163	0.241	0.316	0.387	0.460	0.530
+  centrino duo 1.83 GHz:	0.153	0.222	0.290	0.359	0.429	0.494
+
+-> performance when /bin/sh points to dash about 40-45% faster as when it 
+   points to bash.
+  
+   pentium2 350 Mhz = 128 MB RAM, Quantum Fireball Ex4.3A HD
+   celeron 1.4 Ghz = Acer Travelmate 2312LM, 256 MB RAM, HTS726060M9AT00 HD
+   centrino duo 1.83 Ghz = HP nx9420, 512 MB RAM, FUJITSU MHV2100B HD
+
+For those that want to run the performance tests on their own systems
+the testscript and metadata-sets I used can be found in the tests.tgz file in
+/usr/share/doc/desktop-profiles. The test script in there needs to be run as
+a user with write priviliges to the directory /etc/desktop-profiles, and will
+test performance with both dash (if present) and bash and up-to a 100 profiles.
+
 GCONF PROFILES 
 =-=-=-=-=-=-=-=
 The default gconf systemwide path file provided by the gconf2 package only
diff --git a/debian/changelog b/debian/changelog
index 48122bd..24ba189 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,8 +2,16 @@ desktop-profiles (1.4.14) UNRELEASED; urgency=low
 
   * Adapted lintian override for csh/tcsh login hook to reflect change in
     lintian 1.23.25
-
- -- Bart Cornelis (cobaco) <cobaco at linux.be>  Mon, 15 Oct 2006 19:06:23 +0200
+  * Adapt documentation to reflect that management of gnome profiles is now
+    supported out-of-the-box assuming goncf2 >=2.14.0-5
+  * Be more carefull with temporary files:
+    - Add signal traps to ensure we don't leave tempfiles behind inadvertently
+      if interrupted halfway
+    - don't create user path files if we don't add any gconf sources
+  * Added observations about performance to README, and add zip with the
+    performance test script and test data sets in /usr/share/doc
+
+ -- Bart Cornelis (cobaco) <cobaco at linux.be>  Wed, 29 Nov 2006 00:34:12 +0100
 
 desktop-profiles (1.4.13) unstable; urgency=low
 
diff --git a/tests/performanceTest.sh b/tests/performanceTest.sh
index d796d37..f5da77b 100755
--- a/tests/performanceTest.sh
+++ b/tests/performanceTest.sh
@@ -68,14 +68,30 @@ do_test_with () {
 #####################
 # Start of execution
 #####################
-SHELL_LIST="dash bash";
 PASS_LENGHT=10;
 TEST_SETS="10_per_file 1_per_file";
 RESULT_SUFFIX="$(uname -n).results";
+if (which dash > /dev/null); then
+  SHELL_LIST="dash bash";
+else  
+  echo "The dash shell isn't present -> skipping test with dash";
+  SHELL_LIST="bash";
+fi;
 
-# sanity check
-#FIXME: check for /usr/bin/time which is needed
-#FIXME: check for dash and set shell list accordingly
+# sanity checks:
+# - check if time binary is present, shell builtin is not sufficient
+# - check if we can write to /etc/desktop-profiles so we can add in 
+#   our test metadata
+if !(test -e /usr/bin/time); then
+  echo "You need to install the time package for this script to run";
+  exit 1;
+fi;  
+
+if !(test -w /etc/desktop-profiles); then
+  echo "Script can't write to /etc/desktop-profiles and is thus unable to add test data.";
+  echo "-> Exiting, please run script as user with write priviliges to that directory.";
+  exit 1;
+fi;
 
 # do baseline test
 for SHELL in $SHELL_LIST; do

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-edu/pkg-team/desktop-profiles.git



More information about the debian-edu-commits mailing list