Coder Social home page Coder Social logo

ivvenevt / opencl-intercept-layer Goto Github PK

View Code? Open in Web Editor NEW

This project forked from intel/opencl-intercept-layer

0.0 0.0 0.0 2.55 MB

Intercept Layer for Debugging and Analyzing OpenCL Applications

License: MIT License

Shell 0.03% C++ 73.59% Python 1.71% C 23.46% CMake 1.21%

opencl-intercept-layer's Introduction

Intercept Layer for OpenCLTM Applications

GitHub Actions: GitHub Actions Build Status

The Intercept Layer for OpenCL Applications is a tool that can intercept and modify OpenCL calls for debugging and performance analysis. Using the Intercept Layer for OpenCL Applications requires no application or driver modifications.

To operate, the Intercept Layer for OpenCL Applications masquerades as the OpenCL ICD loader (usually) or as an OpenCL implementation (rarely) and is loaded when the application intends to load the real OpenCL ICD loader. As part of the Intercept Layer for OpenCL Application's initialization, it loads the real OpenCL ICD loader and gets function pointers to the real OpenCL entry points. Then, whenever the application makes an OpenCL call, the call is intercepted and can be passed through to the real OpenCL with or without changes.

Intercept Layer Architecture

This project adheres to the Intercept Layer for OpenCL Application's code of conduct. By participating, you are expected to uphold this code.

Documentation

All controls are documented here.

Instructions to build the Intercept Layer for OpenCL Applications can be found here.

Instructions to use the Intercept Layer for OpenCL Applications Loader (cliloader) can be found here.

Instructions for the old loader (cliprof) can still be found here.

Instructions to install the Intercept Layer for OpenCL Applications can be found here.

Troubleshooting steps and answers to frequently asked questions can be found here.

Detailed instructions:

Tutorial

A tutorial demonstrating common usages of the Intercept Layer for OpenCL Applications can be found here.

License

The Intercept Layer for OpenCL Applications is licensed under the MIT License.

Notes:

Attached Licenses

The Intercept Layer for OpenCL Applications uses third-party code licensed under the following licenses:

Support

Please file a GitHub issue to report an issue or ask questions. Private or sensitive issues may be submitted via email to this project's maintainer (Ben Ashbaugh - ben 'dot' ashbaugh 'at' intel 'dot' com), or to any other Intel GitHub maintainer (see profile for email address).

How to Contribute

Contributions to the Intercept Layer for OpenCL Applications are welcomed and encouraged. Please see CONTRIBUTING for details how to contribute to the project.


OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos.

* Other names and brands may be claimed as the property of others.

Copyright (c) 2018-2024, Intel(R) Corporation

opencl-intercept-layer's People

Contributors

al42and avatar alexbatashev avatar alisanikiforova avatar baryluk avatar bashbaug avatar dependabot[bot] avatar echeresh avatar haraldservat avatar isanghao avatar ivvenevt avatar jwlawson avatar karolherbst avatar msriram avatar novermars avatar nsdhaman avatar ph0b avatar philck avatar ppabis-intel avatar tapplencourt avatar trbauer avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.