tomboy r1894 - in trunk: . test
- From: sharm svn gnome org
- To: svn-commits-list gnome org
- Subject: tomboy r1894 - in trunk: . test
- Date: Sun, 24 Feb 2008 00:36:12 +0000 (GMT)
Author: sharm
Date: Sun Feb 24 00:36:11 2008
New Revision: 1894
URL: http://svn.gnome.org/viewvc/tomboy?rev=1894&view=rev
Log:
* test/create_note_stress_tester.py: Add Wade's note creation stress
tester script. Addresses bug #518294.
Added:
trunk/test/create_note_stress_tester.py
Modified:
trunk/ChangeLog
Added: trunk/test/create_note_stress_tester.py
==============================================================================
--- (empty file)
+++ trunk/test/create_note_stress_tester.py Sun Feb 24 00:36:11 2008
@@ -0,0 +1,83 @@
+#!/usr/bin/env python
+
+#
+# Note Creation Stress testing
+#
+# Based on example by Ryan Paul
+#
+
+import sys, dbus, gobject, dbus.glib, time, random
+
+try:
+ num_notes = int(sys.argv[1])
+except:
+ num_notes = 10
+
+bus = dbus.SessionBus()
+obj = bus.get_object("org.gnome.Tomboy", "/org/gnome/Tomboy/RemoteControl")
+tomboy = dbus.Interface(obj, "org.gnome.Tomboy.RemoteControl")
+
+# Word notes
+fd = open('/usr/share/dict/words')
+words = []
+
+for i in fd.readlines():
+ words.append(i.split()[0])
+num_words = len(words)
+
+random.seed()
+def get_random_word():
+ while True:
+ # dbus likes utf8... force it
+ try:
+ word = unicode ( words[random.randrange(0, num_words)], "utf-8")
+ return word
+ except:
+ pass
+
+# Create lots of notes
+for i in range(0,num_notes-1):
+ title = get_random_word()
+ text = get_random_word()
+
+ start = time.time()
+
+ new_note = tomboy.CreateNamedNote(title)
+ tomboy.SetNoteContents(new_note, title + "\n\n" + text)
+
+ end = time.time()
+
+ print "%s,%f" % (i, end - start)
+
+
+
+"""
+
+# benchmarks on t42p:
+
+note number, total creation time, startup time, last note creation time
+
+100 notes: 3.67
+200 notes: 7.867
+300 notes: 9.33, ~3 second startup
+400 notes: 22.179
+800 notes: 1m36s, startup ~6 second startup, last note took 0.23 seconds (ouch)
+1600 notes: 10m57s
+
+sqlite backend
+
+wow, once I get to around 200 notes, my disk goes crazy!!! what's going on there? and then this script dies...
+
+100 notes: 3.27, ~3s, 0.015
+200 notes: 4.71, ~4s, 0.029
+400 notes: died!!! the disk issue...
+
+once 800 notes were loaded, startup time was about 6 seconds still.
+
+
+with both @800, deleting notes is REALLY slow...
+
+
+"""
+
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]