Developer Guide for Intel® SDK for OpenCL™ Applications 2017
                    
                        ID
                        773042
                    
                
                
                    Date
                    10/22/2018
                
                
                    Public
                
            A newer version of this document is available. Customers should click here to go to the newest version.
                        
                        
                            
                            
                                Legal Information
                            
                        
                            
                            
                                Getting Help and Support
                            
                        
                            
                            
                                Introducing the Intel® SDK for OpenCL™ Applications
                            
                        
                            
                            
                                What's New in This Release
                            
                        
                            
                            
                                Which Version of the Intel® SDK for OpenCL™ Applications Should I Use?
                            
                        
                            
                                Intel® Code Builder for OpenCL™ API Plug-in for Microsoft Visual Studio*
                            
                            
                        
                            
                                Intel® Code Builder for OpenCL™ API Plug-in for Eclipse*
                            
                            
                        
                            
                                Debugging OpenCL™ Kernels on GPU
                            
                            
                        
                            
                                Intel® SDK for OpenCL™ Applications Standalone Version
                            
                            
                        
                            
                            
                                OpenCL™ 2.1 Development Environment
                            
                        
                            
                            
                                Intel® FPGA Emulation Platform for OpenCL™ Getting Started Guide
                            
                        
                            
                                Troubleshooting Intel® SDK for OpenCL™ Applications Issues
                            
                            
                        
                    
                
                                                
                                                
                                                    
                                                    
                                                        Configuring Microsoft Visual Studio* IDE
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Converting an Existing Project into an OpenCL™ Project
                                                    
                                                    
                                                
                                                    
                                                        OpenCL™ New Project Wizard
                                                    
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Building an OpenCL™ Project
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Using OpenCL™ Build Properties
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Selecting a Target OpenCL™ Device
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Generating and Viewing Assembly Code
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Generating and Viewing LLVM Code
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Generating Intermediate Program Binaries with Intel® Code Builder for OpenCL™ API Plug-in
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Configuring OpenCL™ Build Options
                                                    
                                                    
                                                
                                            
                                        Intel® SDK for OpenCL™ Applications - API Debugger
The interface of the Microsoft Visual Studio* IDE provides standard debugging capabilities for the host side of OpenCL™ applications, while the API Debugger plug-in of the Intel® SDK for OpenCL™ Applications enables debugging OpenCL kernels. The stitch between simultaneous debugging of OpenCL kernel and host application might be complicated in different stages. API Debugging feature of the Intel SDK for OpenCL Applications for Microsoft Visual Studio covers the stitch.
The API Debugging feature enables monitoring and understanding OpenCL environment of applications throughout execution.
The feature supports the following:
- API Tracing - lists a trace of all OpenCL API calls that occurred during the execution, list of trace arguments, return values, and execution time.
- OpenCL Objects View - shows all OpenCL objects that exist in memory during the execution.
- Properties View - retrieves common information per each OpenCL object.
- Command-Queue View - tracks the execution status of the enqueued commands.
- Problems View - summarizing all error and warning messages.
- Image View - visually displays all 2D image objects as bitmaps.
- Data View - visually displays buffer data and 2D image pixel arrays on a grid.
- Save/Load session - enables capturing a state/snapshot of all views of the plug-in, saving it on disk, and also loading the stored sessions.
- Memory Tracing - enables storing OpenCL Images and Buffers content, and visually examining either by Bitmap or Grid view the contents of the underlying data associated with the memory object throughout the various API calls that affected it.
     NOTE: 
   
 Concurrent debugging sessions are not supported with the Intel SDK for OpenCL Applications - API Debugger. This includes attaching the debugger to more than one process, or opening multiple instances of the Visual Studio and debugging processes concurrently.