Hi, all! Very interesting result was given by profiling w3af start (main() call) by standart profile module:
Starting w3af, running on: Python version: 2.6.5 (r265:79063, Apr 16 2010, 13:09:56) [GCC 4.4.3] GTK version: 2.20.1 PyGTK version: 2.17.0 w3af - Web Application Attack and Audit Framework Version: 1.1 (from SVN server) Revision: 3500 Author: Andres Riancho and the w3af team. 227580 function calls (222020 primitive calls) in 12.829 CPU seconds Ordered by: internal time ncalls tottime percall cumtime percall filename:lineno(function) 62 7.634 0.123 7.634 0.123 {method 'execute' of 'sqlite3.Connection' objects} 1 1.546 1.546 3.019 3.019 {gtk._gtk.main} 1 0.927 0.927 0.928 0.928 {method 'run' of 'gtk.Dialog' objects} 1 0.501 0.501 0.501 0.501 {time.sleep} 1 0.143 0.143 0.143 0.143 {method 'execute' of 'sqlite3.Cursor' objects} 1 0.103 0.103 0.210 0.210 __init__.py:23(<module>) 2 0.102 0.051 0.102 0.051 {method 'read' of 'file' objects} 1083/414 0.097 0.000 0.388 0.001 sre_parse.py:385(_parse) 14124 0.084 0.000 0.129 0.000 sre_parse.py:188(__next) 44079/42881 0.077 0.000 0.081 0.000 {len} 1940/364 0.070 0.000 0.222 0.001 sre_compile.py:38(_compile) 26 0.065 0.002 0.065 0.002 {gtk._gtk.main_iteration} ... as you can see on cold start we execute about 62 SQL queries! It is because in many plugins we use disk_list as storage: $grep -R 'disk_list(' * | grep -v 'svn' | wc -l 68 What is workaround for this problem? May be we will load plugins body only after enabling of pluing in UI? So cold start will load only core and plugins informaion like name, info and params? -- Taras http://oxdef.info ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ W3af-develop mailing list W3af-develop@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/w3af-develop