New Project wizard

Add / Remove breakpoints

OpenGL State Variable Selection

gDEBugger Project settings

System information

Options


New Project Wizard

The New Project wizard will guide you, step by step, in creating a debugged process project from scratch.

Application settings

Select the executable to be debugged, the working directory, and the command line arguments.

OpenGL settings

Select OpenGL frame terminators and breakpoints.

OpenCL settings

Select OpenCL frame terminators and breakpoints.


Add/Remove Breakpoints Dialog

The Breakpoint dialog lets you choose OpenCL and OpenGL API function breakpoints, as well as kernel function name breakpoints.

Breakpoints added this way will be added to the Breakpoints view.

The debugged process execution is suspended when a debugged process thread calls an API function marked as a breakpoint. The process run is suspended before the function is executed, letting you observe the effect the breakpoint function has on the application behavior.

The debugged process execution is suspended when a kernel with a function name marked as a breakpoint starts executing. This lets you get right into kernel debugging without stepping into the clEnqueueNDRangeKernel function call.

Add / Remove Breakpoints

Breakpoints

API Functions

The API Functions list contains OpenCL and OpenGL API functions, as well as platform-specific binding (WGL, CGL, GLX, EAGL or EGL) functions supported by gDEBugger.

Kernel Functions

The Kernel Functions list will be filled when an OpenCL application is debugged, to contain the names of all kernel functions that are used by the application.

Error / Warning

Error and Warning breakpoints are special breakpoints that can be set on the occurrance of special events:

  • Break on OpenGL error – will be hit whenever an OpenGL function generates an error. The output window will display the error code. Note that if your application uses glGetError for validation, its flow might change with this option on.
  • Break on OpenCL error – will be hit whenever an OpenCL function returns an error value. The output window will display the error code.
  • Break on Detected error – the gDEBugger OpenCL and OpenGL servers will sometimes detect errors that are not mentioned in the specifications. This breakpoint will be hit when such an error is detected. The output window will display the error details.
  • Break on Deprecated function – OpenGL 3.0 and up and OpenCL 1.1 and up include functions and behaviors that are marked as deprecated and must be removed to maintain forward compatibility. This breakpoint will be hit when such a function is called.
  • Break on Memory leak – will be hit when an OpenCL or OpenGL object that has subordinate objects (e.g. a context, an OpenCL program) is released before all its objects were released. Note that while this behavior is legal, it is a bad practice and might also indicate objects not being released (and being left alive during runtime, taking up system resources).
  • Break on OpenGL Debug Output – will be hit whenever the GL_ARB_debug_output or GL_AMD_debug_output extensions are used to output a debug message. This extension is supported only on Windows OS.

Text Filter

Enables filtering the Breakpoints list. Entering multiple values separated by spaces or commas searches for function names containing all the strings.

Active Breakpoints

The active breakpoints list contains the currently selected API and kernel function breakpoints. You can Enable/Disable a specific breakpoint by checking / unchecking the checkbox next to the function name. You can also type in kernel function names to add kernels that were not created yet in the application.

Add Breakpoint

To add a breakpoint, select a function / functions from the API Functions or Kernel Functions list and add it to the Active Breakpoints list by double clicking on it or by pressing the Add button.

Remove Breakpoint

To remove a breakpoint, select the function from the Active Breakpoints list and remove it by double clicking on it or by pressing the Remove button.

Remove all Breakpoints

Press the Remove All button to remove all of the active breakpoints.

Settings

Enable /Disable all Function Breakpoints

Change the enabled status of all active breakpoints.


OpenGL State Variable Selection Dialog

The State Variables dialog lets you choose OpenGL, WGL, CGL and OpenGL extension state variables.

When the debugged process execution is suspended you will be able to see the selected state variables values in the State Variables view.

Available state variables

The available state variables list contains OpenGL, WGL, glX and OpenGL extension variables supported by gDEBugger. Selected variables are highlighted in blue.

Text Filter

Enables filtering the state variables list. Entering multiple values separated by spaces or commas searches for variable names containing all the strings.

State variables

The State variables list lists the currently selected variables.

Add Variable

To add a variable, select a variable / variables from the Available state variables list and add it to the State variables list by double clicking on it or by pressing the Add button.

Remove Variable

To remove a variable, select the variable from the State variables list and remove it by double clicking on it or by pressing the Remove button.

Remove all Variables

Press the Remove All button to remove all of the variables.


Debug Settings Dialog

This dialog allows you to specify settings for the current startup project.

Debug Settings

Executable for Debug Session

The full path to the executable file launched for a debug session.

Working Directory

The working directory of the executable file.

Program Arguments

The debugged application’s command line arguments (optional).

Operating System Environment Variables

The environment variables used for the debugged application (optional). This will be merged into gDEBugger’s environment, overriding any duplicate variables.

OpenCL Frame Terminators

Frame terminators are the functions that end your application computation frame.
Using them enables you to view the log of a single computation frame and not the entire calls log.

Available Frame Terminators are: clFlush, clFinish, cl_gremedy_computation_frame, clWaitForEvents

OpenGL Frame Terminators

Frame terminators are the functions that end your application render frame.
Using them enables you to view the log of a single render frame and not the entire calls log.

Available Frame Terminators are: glFlush, glFinish, glClear, wglSwapBuffers, wglSwapLayerBuffers, wglMakeCurrent, glFrameTerminatorGREMEDY

glFlush

glFlush is usually chosen for single-buffered applications.

wglSwapBuffers / glXSwapBuffers

wglSwapBuffers / glXSwapBuffers is usually chosen for double-buffered applications.

Advanced Settings

Initialize DirectDraw

Check this box if the debugged application uses both DirectDraw and OpenGL to render and is experiencing stability issues when debugged with gDEBugger.


System Information Dialog

The System Information dialog collects computer configuration data and OpenGL implementation details such as: the operating system, memory, graphic card and driver details, monitor details, available pixel formats, available OpenGL extensions, etc.

System Information

System View

Collects and displays information about the configuration of your system.

Display View

Collects and displays information about the configuration of your display system.

OpenGL Renderer View

Collects and displays information about the configuration of your graphic accelerator system.

OpenGL Pixel Formats View

Collects and displays information about the supported pixel format on your system.

OpenGL Extensions View

Collects and displays information about the supported OpenGL extensions on your system.

OpenCL Platforms View

Collects and displays information about the supported OpenCL platforms.

OpenCL Devices View

Collects and displays information about the supported OpenCL devices and their capabilities and limits.

Save Button

Exports the System information data from all views to a .csv file



Options Dialog

The Options dialog lets you control program attributes and behavior.

Call Stack tab

HTML Log File tab

Logging tab

Connection tab

Advanced tab


Options – Call Stack Tab

The Call Stack tab lets you specify the source code root location and additional source code directories. This enables the use of the Source Code editor when the debugged application debug info holds partial source code paths and when the debugged application has been built on a different file system structure than your source code file structure.

Options Dialog - Call Stack Tab

Additional source code directories:

When specifying additional source code directories, If the source code file is not found at its debug information path, it will searched, by file name only, in the additional source code directories. The search is performed according to the order in which the directories are specified.

The additional source code directories are semicolon separated.

Source code root location:

When specifying a source code root location, the root location is prefixed to each source code file path. Only one source code root location can be specified.

Example:
If the source code root is “D:\Dir1\” and the debug information source code path is “\Dir2\Dir3\MyFile.cpp”, the Source Code editor input path will be “D:\Dir1\Dir2\Dir3\MyFile.cpp”.

Collect Allocated Objects’ Creation Calls Stacks:

Deselect this checkbox if you don’t want gDEBugger to collect the graphic memory allocated objects creation calls stacks (which are displayed in the Memory View). This can improve Debug Mode performance in some cases when many graphic memory objects are allocated.


Options – HTML Log File Tab

The HTML Log File tab lets you control the way the texture images data is logged in the HTML calls log.

Options Dialog - HTML Log File Tab

Enable Texture images logging in the Calls History HTML log:

When the Enable Texture images logging check box is checked, textures data is saved and displayed in the calls log file.

Textures Data File Format:

You can select the logged texture data file format by choosing the appropriate radio button. Available formats are: JPG, BMP, PNG, TIFF. 3D textures are always stored as tiff images.


Options – Logging Tab

The Logging tab lets you specify the logging limits of various calls loggers, as well as the location where the gDEBugger log files will be saved

Options Dialog - Logging Tab

Calls Logging:

Set the logging limit for OpenGL API function calls, OpenCL API function calls, and OpenCL queue commands

Log Files:

Log Files and Images Directory

A directory where the API call log files and temporary image and source files are saved.


Options – Connection Tab

The Connection tab lets you control how gDEBugger connects to the internet.

Options Dialog - Connection Tab

Proxy Settings:

Change these settings if your computer uses a HTTP Proxy.

I am using an HTTP proxy server:

Check this option if your computer connects to the internet through an HTTP proxy. If you are experiencing problems with gDEBugger’s online features (request trial license, check for updates and send error report), changing the proxy settings might be the solution.

Proxy server / Port number:

If you are using a proxy server, please input its information here. The server name could be a DNS address or an IP address. If you are unsure of what your HTTP proxy server or port are, contact your network administrator or copy the settings from your web browser. gDEBugger does not currently support the HTTP_PROXY environment variable.


Options – Advanced Tab

The Advanced tab lets you control the advanced settings of the gDEBugger applicaiton.

Options Dialog - Advanced Tab

Debug log level:

The debug log level is an internal mechanism aimed to help fixing gDEBugger problems. There are three levels for the debug logging:

Error:

Log errors that rise while running gDEBugger.

Info:

Log errors and gDEBugger internal information that rise while running gDEBugger (default logging level).

Debug:

Log gDEBugger debugging information, errors and other internal information that rise while running gDEBugger (for the gDEBugger support team to locate a problem inside gDEBugger).

Extensive:

Log extensive gDEBugger debugging information, errors and other internal information that rise while running gDEBugger (for the gDEBugger support team to locate a problem inside gDEBugger).

Performance counters sample interval:

The number of milliseconds elapsed between performance counters samples.

Floating-point precision:

– The maximum number of significant digits that will be displayed.

Flush log file after every monitored function call:

When the Flush log file after every monitored function call check box is checked, gDEBugger will flush the OpenCL / OpenGL calls history log file after every API function call instead of not use memory cached batches. This feature can help tracking the function call that led to a debugged application crash. Using this feature dramatically slows down the debugged application performance and therefore it is not recommended for regular use.


gDEBugger Menus

File Menu

New Project

Launch the New Project wizard.

Open Project

Select and open a previously saved project file.

Home Page

Display the gDEBugger Home Page.

Save Project

Save the currently active project.

Save Project As

Save the currently active project to a new name or location.

Open File

Select and open a file to display as source in the main MDI window.

Save File

Saves the currently active source file.

Save File As

Save the currently active source file to a new name or location.

Export Images and Data

Save the currently active object view as an image or raw data.
Save all objects as images or raw data.
Save OpenGL state variable values to a file.

Export Statistics

Save the information from various Statistics view tabs to a file.

Recent Projects

Display a list of recently opened projects.

Exit

Quit gDEBugger.

Edit Menu

Cut

Cut the selection in the currently active view to the clipboard.

Copy

Copy the selection in the currently active view to the clipboard.

Paste

Paste the contents of the clipboard to the currently active view.

Select All

Select all the data in the currently active view.

Find

Find a string match in the currently active view.

Find Next

Continue a previous search.

View Menu

Views

Show or hide gDEBugger views.

Toolbars

Show or hide gDEBugger toolbars.

Show Line Numbers

Display line numbers in MDI source views.

Reset GUI Layouts

Reset the frame and view locations to their defaults.
Use this option if a view is indicated to be shown but is not on screen.

Debug Menu

Go / Frame Step / Draw Step / Step Over / Step In / Step Out / Break / Stop Debugging

See the command descriptions in the Debug toolbar section.

Debug Settings

Display the Debug Settings dialog.

Breakpoints Menu

Break on OpenGL Error / OpenCL Error / Detected Error / Deprecated Functions / Memory Leaks / OpenGL Debug Output Extension

Enable or disable Error / Warning breakpoints.
See the breakpoint descriptions in the Breakpoints dialog section.

Enable All Breakpoints

Toggle all selected breakpoints between enabled and disabled.

Load Breakpoints

Load the breakpoints from a previously saved file.

Save Breakpoints As

Save the selected breakpoints to a file.

Add / Remove Breakpoints

Display the Breakpoints dialog.

Tools Menu

Images

See the command descriptions in the Images and Buffers toolbar section.

System Information

Display the System Information dialog.

Options

Display the Options dialog.

Window Menu

Close all Document Windows

Close all MDI source and object views.

Help Menu

View Help

Display the gDEBugger User Guide.

View Tutorial

Display the gDEBugger Tutorial.

Check for Updates

Check for a newer version of gDEBugger and change automatic update check settings.

AMD Developer Tools Support Forum

Open the support forum for gDEBugger in a browser window.

AMD Developer Tools Knowledge Base

Open the knowledge base for gDEBugger in a browser window.

Open a Support Request

Open the support request form to report an issue with gDEBugger in a browser window.

About gDEBugger

Displays information about the installed gDEBugger version.