To know the execution time of a SQL Statement, event monitors should be used ... Event monitors give a clear split up of the time taken by various processes (like execution, open cursor, prepare, close cursor, commit/rollback) including sort time, lock wait time etc.
For Q2, why not use SEQUENCE Objects which are not locked ? BTW, what version of db2 are you on ?
Cheers
Sathyaram