Recent Comments


Categories


Archives


Tags

How to Analyze Log Files Created with Procdump64 for Cubase 13 

In this post I explain how you can try to analyze the cause of unexpected Cubase behaviour. It makes use of two Windows tools (Procdump64 and WinDbg). Let me know your experiences.

(1) Generate a DMP file and share it via Dropbox or a similar service

A. Install Procdump

Use the Microsoft Procdump utility to generate a DMP file.

  • Download ProcDump64 from Microsoft (~650kB) and extract the archive to a local folder on your hard disk.
  • Run Command Prompt (cmd) as administrator (right click and select “run as administrator”)
  • Navigate (in the Command Prompt) to the folder with the extracted procdump file. For example:
    • cd C:\Users\Downloads\Procdump
    • Note: the dump (.dmp) file will be written into this folder.

B. Launch Cubase and start Procdump

Do not yet start Procdump. Instead, start Cubase in the way you normally do. You can now work with Cubase as usual.

Next, change to the command prompt and start Procdump, to monitor Cubase for unexpected behaviour:

  • procdump64 -e -h -t Cubase13

The -h option will write a .dmp file in case Cubase freezes. Procdump might kick in too early sometimes, in case some action takes a little longer. Feel free to skip the “-h” option, if you are only up for fetching crashes. The option -e will catch exceptions and the option -t terminations of the application.

Prodump is now monitoring the Cubase/Nuendo process and will write a crash log, in case Cubase/Nuendo crashes or hangs. Perform the action that causes Cubase/Nuendo to crash and send us the generated crash dmp.

 

(2) Step-by-Step Guide to Analyzing Log Files:

Now you need to analyze the resulting log files (.dmp). This guide will walk you through the process. These flags are useful for capturing dumps when an unhandled exception occurs, a process experiences a hang, or for creating unique dumps for every unhandled exception.

 

A. Locate the Dump Files

First, locate the dump files generated by procdump64. These files are typically stored in the directory where procdump64 was executed unless a different directory was specified (e.g., C:\Users\Downloads\Procdump).

B. Analyze the Dump Files

One of the most powerful tools for analyzing dump files is WinDbg, provided by Microsoft. Here’s how to use it:

  1. Install WinDbg: Download and install WinDbg from the Microsoft website.
  2. Open Dump File: Open WinDbg and select File > Open Crash Dump, then navigate to your dump file.
  3. Load Symbols (optional): Ensure you have the correct symbols loaded. See [here]. Set up the symbol path to Microsoft’s symbol server by entering the following commands in the WinDbg command window:
    • .sympath srv*
    • .reload
  4. Analyze the Dump: Use commands such as !analyze -v to get a detailed analysis of the crash. This command provides an overview of what caused the exception or hang, including stack traces, exception codes, and module information.

C. Review Stack Trace

The stack trace will show the function calls leading up to the exception or hang. Look for any patterns or repeated function calls that might indicate the root cause. Pay attention to any functions from Cubase that are near the top of the stack trace, as these are likely involved in the issue.

D. Identify Exception Codes

Exception codes can provide clues about the type of error:

  • 0xC0000005 indicates an access violation.
  • 0x80000003 indicates a breakpoint exception.

Cross-reference the exception codes with Microsoft’s documentation to get more details.

E. Examine Loaded Modules

Review the list of loaded modules to ensure all necessary modules are present and correctly loaded. Check for any suspicious or unexpected modules that might be interfering with Cubase.

E. Check for Resource Issues

Use the dump file information to check for resource constraints, such as memory usage or handle counts. High usage could indicate a resource leak or other issues leading to the hang or crash.

 

(3) Example Commands in WinDbg

  • Open the dump file:
    .opendump C:\Path\To\DumpFile.dmp
  • Analyze the dump:
    !analyze -v
  • Display loaded modules:
    lm
  • Display stack trace:
    k
  • Display exception record:
    .exr -1

 

By following these steps, you can gain insights into the cause of crashes or hangs in Cubase and identify potential solutions. If you encounter specific issues or need further assistance, providing details about the error messages or stack traces can help in offering more targeted advice.

(4) Use case

I occasionally encounter an issue where Cubase 13 freezes during project loading. The freeze occurs while loading channels, but it doesn’t consistently happen at the same channel. In the screenshot below, Cubase froze while loading the GRev (Guitar Reverb Fx channel). If this happens I have to use Window’s taks manager to end Cubase.

To analyze the cause, I start procdump64 to generate a dump file:

Now I can use WinDbg to analyze (!analyze -v) the generated dump file “Cubase13.exe_240601_141403.dmp”. This analysis shows me:

SYMBOL_NAME:  console_1_fader_input_output+cb52a
MODULE_NAME: Console_1_Fader_Input_Output
IMAGE_NAME:  Console 1 Fader Input Output.ssx
FAILURE_BUCKET_ID:  BREAKPOINT_80000003_Console_1_Fader_Input_Output.ssx!Unknown

0:000> lmvm Console_1_Fader_Input_Output
Browse full module list
start             end                 module name
00000002`92220000 00000002`98e08000   Console_1_Fader_Input_Output   (export symbols)       Console 1 Fader Input Output.ssx
    Loaded symbol image file: Console 1 Fader Input Output.ssx
    Mapped memory image file: C:\Program Files\Common Files\Softube\SSX\Console 1 Fader Input Output.ssx
    Image path: C:\Program Files\Common Files\Softube\SSX\Console 1 Fader Input Output.ssx
    Image name: Console 1 Fader Input Output.ssx
    Browse all global symbols  functions  data
    Timestamp:        Wed May 15 09:03:36 2024 (66445E48)
    CheckSum:         026B8D57
    ImageSize:        06BE8000
    File version:     2.5.85.0
    Product version:  2.5.85.0
    File flags:       20 (Mask 3F) Special
    File OS:          40004 NT Win32
    File type:        2.0 Dll
    File date:        00000000.00000000
    Translations:     0409.04b0
    Information from resource tables:
        CompanyName:      Softube
        ProductName:      Console 1 Fader Input Output
        InternalName:     Softube: Console 1 Fader Input Output
        OriginalFilename: Console 1 Fader Input Output
        ProductVersion:   2.5.85
        FileVersion:      2.5.85
        FileDescription:  Softube: Console 1 Fader Input Output
        LegalCopyright:   (c) 2007-2024 Softube. All rights reserved.

This did not directly solved the problem for me but it suggests a problem with the Softube Console 1 Fader. Some further Googleing led me to a specific support page of Softube. I followed the instruction. Now have to wait and see if the problem is solved. Update 5 June 2024: unfortunately, this didn’t solve the problem…

 

Published On: June 1st, 2024Last Updated: June 5th, 2024Categories: Education, SoftwareTags: , ,