I've been doing some profiling using 'hotshotmain.py simple_plot.py -dAgg >/tmp/hs-out 2>&1' (with the Tools/scripts/hotshotmain.py script from the Python src distribution) I looked at the output and noticed that the pytz module takes up a fair amount of the time. Which is a bit unexpected for simple_plot.py which does not have any dates! I commented out the 'dates' imports in pylab.py and axes.py and performance increased 13%. It seemed strange for an import to have such a large effect, but when I looked at dates.py I saw that it executes code - it calls timezone() 9 times - a function which does further imports which read in a lot of data. If I restore the 'dates' imports and just comment out the 9 timezone() calls in dates.py the speedup is 11% and it saves around 3,000 function calls! I suggest - for optional modules (like dates), only import them when they are required (when the plot actually has a date) - for all modules try to minimise the amount of code that will execute upon import, especially function calls. What do you think? Steve