What is the best way to profile an isCOBOL program?
Estimated Reading Time: 1 MinutesQuestion:
My program displays a menu and I can press down-arrow 8 times and sit there and watch while the menu item selection moves down to catch up.
I want to profile my program to see what operations are accounting for the slow user interface updates.
What is the best profiling tool? What other options are available? Can I turn on tracing to display milliseconds in the timestamp for paragraph and program entry and exits?
Answer:
When your programs are compiled for debug, you can see microseconds in the log file created with a tracelevel of at least 7.
When they are not compiled for debug, you can use isCOBOL's Profiler, introduced in 2020R2.
It will tell you how much time is spent in each paragraph. It isn't a good way to profile UI, but will certainly let you see how long the background paragraphs are taking.
You should also look at the Appendices of our isCOBOL Evolve documentation, under the "Performance Tuning: Guidelines for better runtime performance: User Interface" page.
This will help you fine tune your configuration to get the best performance from your UI.
Our developers use the following tools to monitor Java:
-
Jvisualvm (included with Java 1.8 and earlier
https://docs.oracle.com/javase/7/docs/technotes/tools/share/jvisualvm.html -
VisualVM (download separately for running with Java 11 or older
https://visualvm/github/io -
JConsole
http://docs.oracle.com/javase/7/docs/technotes/guides/management/jconsole.html -
HProf
http://docs.oracle.com/javase/7/docs/technotes/samples/hprof.html