Cómo medir el rendimiento en el desarrollo de Java

¿Existe alguna herramienta que pueda medir el tiempo de ejecución para cada llamada de función y descubrir el cuello de botella para un proyecto java j2se en desarrollo dado? ¡Gracias!