On Friday 18 February 2005 18:00, Hans-Peter Jansen wrote:
and here's a more detailed comparison from the two:
9.0: 9.2:
sip version: 4.1.1 sip version: 4.0.1
Qt version: 3.2.1 Qt version: 3.3.3
PyQt version: 3.13 PyQt version: 3.12
Python: 2.3 Python: 2.3.4
Initial Values Initial Values
VmSize: 4928 kB VmSize: 4276 kB
VmData: 1404 kB VmData: 852 kB
VmRSS: 2772 kB VmRSS: 2508 kB
VmLib: 2984 kB VmLib: 2886 kB
Import qt Import qt
VmSize: 22464 kB 17536 kB VmSize: 21652 kB 17376 kB
VmData: 1584 kB 180 kB VmData: 1200 kB 348 kB
VmRSS: 9336 kB 6564 kB VmRSS: 8252 kB 5744 kB
VmLib: 19552 kB 16568 kB VmLib: 19190 kB 16304 kB
Create Application Create Application
VmSize: 60972 kB 38508 kB VmSize: 23912 kB 2260 kB
VmData: 2692 kB 1108 kB VmData: 2492 kB 1292 kB
VmRSS: 13656 kB 4320 kB VmRSS: 11020 kB 2768 kB
VmLib: 21252 kB 1700 kB VmLib: 19230 kB 40 kB
Create Pushbutton Create Pushbutton
VmSize: 60972 kB 0 kB VmSize: 23904 kB -8 kB
VmData: 2692 kB 0 kB VmData: 2484 kB -8 kB
VmRSS: 13824 kB 168 kB VmRSS: 11188 kB 168 kB
VmLib: 21252 kB 0 kB VmLib: 19230 kB 0 kB
Show Pushbutton Show Pushbutton
VmSize: 62964 kB 1992 kB VmSize: 26356 kB 2452 kB
VmData: 4272 kB 1580 kB VmData: 4476 kB 1992 kB
VmRSS: 15896 kB 2072 kB VmRSS: 13836 kB 2648 kB
VmLib: 21640 kB 388 kB VmLib: 19606 kB 376 kB
Connect Pushbutton signal Connect Pushbutton signal
VmSize: 62964 kB 0 kB VmSize: 26356 kB 0 kB
VmData: 4272 kB 0 kB VmData: 4476 kB 0 kB
VmRSS: 15924 kB 28 kB VmRSS: 13860 kB 24 kB
VmLib: 21640 kB 0 kB VmLib: 19606 kB 0 kB
Enter Mainloop Enter Mainloop
VmSize: 63136 kB 172 kB VmSize: 26356 kB 0 kB
VmData: 4404 kB 132 kB VmData: 4476 kB 0 kB
VmRSS: 16260 kB 336 kB VmRSS: 14196 kB 336 kB
VmLib: 21676 kB 36 kB VmLib: 19606 kB 0 kB
Mainloop finished Mainloop finished
VmSize: 63136 kB 0 kB VmSize: 26356 kB 0 kB
VmData: 4404 kB 0 kB VmData: 4476 kB 0 kB
VmRSS: 16260 kB 0 kB VmRSS: 14196 kB 0 kB
VmLib: 21676 kB 0 kB VmLib: 19606 kB 0 kB
Delete Pushbutton Delete Pushbutton
VmSize: 63128 kB -8 kB VmSize: 26356 kB 0 kB
VmData: 4396 kB -8 kB VmData: 4476 kB 0 kB
VmRSS: 16260 kB 0 kB VmRSS: 14200 kB 4 kB
VmLib: 21676 kB 0 kB VmLib: 19606 kB 0 kB
Delete Application Delete Application
VmSize: 38132 kB -24996 kB VmSize: 25688 kB -668 kB
VmData: 4396 kB 0 kB VmData: 4268 kB -208 kB
VmRSS: 16028 kB -232 kB VmRSS: 13848 kB -352 kB
VmLib: 21288 kB -388 kB VmLib: 19230 kB -376 kB
Funny are the tremendous movements in QApplication ctor/dtor on the
left.
Pete
#! /usr/bin/env python
import sys, os
class ProcMem:
def __init__(self):
self.pid = os.getpid()
self.initial = self.getValues()
self.showValues(self.initial)
def getValues(self):
val = {}
fp = open("/proc/%s/status" % self.pid, "r")
for l in fp:
if l.startswith("Vm"):
k, v = l.split()[:2]
if k in ("VmData:", "VmLib:", "VmRSS:", "VmSize:"):
val[k] = int(v)
return val
def showValues(self, val, val2 = None):
for k in "VmSize:", "VmData:", "VmRSS:", "VmLib:":
if val2:
print "%-7s %8s kB %8s kB" % (k, val[k], val[k]-val2[k])
else:
print "%-7s %8s kB" % (k, val[k])
def diffValues(self):
val = self.getValues()
self.showValues(val, self.initial)
self.initial = val
print "Initial Values"
pm = ProcMem()
print "Import qt"
import qt
pm.diffValues()
print "Create Application"
a = qt.QApplication(sys.argv)
pm.diffValues()
print "Create Pushbutton"
b = qt.QPushButton("&Hello World", None)
a.setMainWidget(b)
pm.diffValues()
print "Show Pushbutton"
b.show()
pm.diffValues()
print "Connect Pushbutton signal"
a.connect(b, qt.SIGNAL("clicked()"), qt.qApp.quit)
pm.diffValues()
print "Enter Mainloop"
a.exec_loop()
pm.diffValues()
print "Mainloop finished"
pm.diffValues()
print "Delete Pushbutton"
del b
pm.diffValues()
print "Delete Application"
del a
pm.diffValues()
_______________________________________________
PyKDE mailing list [email protected]
http://mats.imk.fraunhofer.de/mailman/listinfo/pykde