To start with - i am using browsermob proxy for response times and codes, but indeed it does not give you anything like JS execution time.
You already mentioned DynaTrace so I will not discuss this. What else is there - I have not used myself, but i have heard people using httpWatch. It integrates very vell with C# and is said to be capable of analyzing the performance of ajax calls.
Also, don't forget, that you can inject javascript with webdriver, so you can try to make use of boomerang or something like this.