Back with some more information... I added logging and it seems that the time is lost pent in python code (i.e. not waiting for the database.) Look at the following bit from the log, which times a complete handling of the home page of my webapp:
INFO 2014-03-10 19:47:52,311 gnubg.webapp: Starting timing of index() call
INFO 2014-03-10 19:48:03,372 gnubg.webapp: Time taken for connecting to db: 0.006
INFO 2014-03-10 19:48:13,114 mysqld: Query execution took 0.002 seconds
INFO 2014-03-10 19:48:13,136 mysqld: Query execution took 0.001 seconds
INFO 2014-03-10 19:48:13,163 mysqld: Query execution took 0.001 seconds
INFO 2014-03-10 19:48:13,213 mysqld: Query execution took 0.002 seconds
INFO 2014-03-10 19:48:13,244 mysqld: Query execution took 0.010 seconds
INFO 2014-03-10 19:48:13,265 mysqld: Query execution took 0.003 seconds
INFO 2014-03-10 19:48:13,285 mysqld: Query execution took 0.001 seconds
INFO 2014-03-10 19:48:13,307 mysqld: Query execution took 0.003 seconds
INFO 2014-03-10 19:48:13,331 mysqld: Query execution took 0.005 seconds
INFO 2014-03-10 19:48:13,362 mysqld: Query execution took 0.011 seconds
INFO 2014-03-10 19:48:13,471 mysqld: Query execution took 0.001 seconds
INFO 2014-03-10 19:48:13,521 mysqld: Query execution took 0.001 seconds
INFO 2014-03-10 19:48:13,529 gnubg.webapp: Time taken for index() call: 10.162
The above is amidst numerous other responses in the range of 0.5 to 1.5 seconds... So there is definitely something wrong here.