Get email delivery of the Cadence blog featured here
Some time back my mom suffered from excruciating pain in the knee that forced us to visit the doctor. The pain was not due to an injury, so the doctor had no clue about the cause. Still, she took an X-ray that confirmed that there were no broken bones or ligaments. The doctor just prescribed my mom some painkillers and sent us back. This worked for some time, but the pain returned and so did we – to the doctor’s clinic. This time the doctor ordered an MRI and a few other tests and was finally able to diagnose the real cause behind the pain. With correct treatment, my mom is now back to health, and I am back to attending 6 AM yoga classes with her, but that’s another story for a different time.
What I want to say is that just like our doctor needed different tests to diagnose the real cause of the pain, we may need different tests to diagnose what could be causing performance issues with our Virtuoso application. This is because it can be quite challenging to identify the cause of an issue in a complex system by just the symptom alone. To know what’s really going on, we may first need to take an X-ray, which in Virtuoso terms could be called a callstack or a snapshot of the program execution process.
While working in the Virtuoso custom IC design platform, you can think of the Performance Diagnostic tool, which was introduced in IC6.1.8 ISR14/ICADVM20.1 base release, as the Virtuoso X-Ray machine and MRI scanner. This tool supports many debugging techniques, and among all a scanner, which generates a scan report that is quite like an MRI scan report. All you need to do is to initiate the scan for the duration when your Virtuoso application slows down or freezes.
The scanner runs in the background and collects callstacks during the scanning process and displays a log file. The log file contains a high-level summary. You can share this summary and send it to the Cadence support team.
This high-level summary makes it easy for the Cadence support team to quickly narrow down the cause of the issue and in most cases, provide a solution or a workaround. At times, the support team might ask further questions or give instructions on using different tests available in the Performance Diagnostic tool. Usually, you need to create a test case or send a full log file to the Cadence support team for solution. But, this process may require an approval and it usually takes time. Benefit of using the Performance Diagnostic tool is that if you first share the high-level summary generated using this tool, it might reduce the turnaround time and your chances of getting a solution or workaround quickly are higher.
To know more about how to use this tool, check the Using the Performance Diagnostic Tool video on the Cadence Learning & Support portal.
Happy reading and stay safe!
Yuan-Kai Pei and Sucharita Mehta
Virtuoso Design Environment User Guide
Using the Performance Diagnostic Tool
For more information on Cadence circuit design products and services, visit www.cadence.com.
For any questions, general feedback, or even if you want to suggest a future blog topic, write to firstname.lastname@example.org.
Virtuoso Video Diary is an online journal that relays information about Virtuoso videos that are available in the video library on the Cadence Support portal. Hundreds of interesting videos on a wide variety of new and exciting Virtuoso features have already been created. Virtuoso Video Diary brings you direct links to these videos and other related material, on a regular basis. To receive notifications about new blogs in this series, click Subscribe and submit your email ID in the Subscriptions box.