Coder Social home page Coder Social logo

taihulight / computecpp-sdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from codeplaysoftware/computecpp-sdk

0.0 1.0 0.0 12.29 MB

Collection of samples, documentation and utilities for using ComputeCpp, Codeplay's beta SYCL implementation

License: Other

Shell 1.59% CMake 21.51% Cuda 1.44% C++ 74.22% Makefile 1.23%

computecpp-sdk's Introduction

ComputeCpp SDK Readme

ComputeCpp™

Introduction

Build Status

This is the README for the ComputeCpp SDK, a collection of sample code, utilities and documentation for Codeplay’s ComputeCpp, an implementation of the SYCL programming standard. You can find more information at:

Contents

  • LICENSE.txt

    • The license this package is available under: Apache 2.0

  • README.adoc

    • This readme file

  • cmake/

    • Contains useful files for integrating ComputeCpp with existing projects. See later in this document for a description of the CMake modules provided.

  • samples/

    • A collection of sample SYCL code, tested on ComputeCpp, provided as a learning resource and starting point for new SYCL software. CMake files are also provided for most samples.

  • tools/

    • Useful tools for working with SYCL code and ComputeCpp. Includes a simple driver script for compiling SYCL code with ComputeCpp, an example Makefile and other utilities.

  • util/

    • Example utility code that we expect will be useful for other projects as either a starting point or helper to achieve common tasks.

Setup

CMake files are provided as a build system for this software. CMake version 3.2.2 is required at minimum, though later versions of CMake should continue to be compatible.

The CMakeLists.txt file is located in the samples/ directory.

At minimum, one CMake variable is required to get the sample code building - COMPUTECPP_PACKAGE_ROOT_DIR. This variable should be the root directory of the ComputeCpp install (i.e. the directory with the the folders bin, include, lib and so on).

You can additionally specify CMAKE_BUILD_TYPE and CMAKE_INSTALL_PREFIX to choose a Debug or Release build and the location you’d like to be used when the "install" target is built.

On the Codeplay website there is a getting started guide that serves as an introduction to SYCL and ComputeCpp. Additionally, there is an Integration guide should you wish to add ComputeCpp to existing projects.

Requirements

  • The samples should work with any SYCL 1.2 implementation, though have only been tested with the ComputeCpp CE Public Beta

  • OpenCL 1.2-capable hardware and drivers with SPIR 1.2 support

  • C++11-compliant compiler and libstdc++ on GNU/Linux (GCC 4.9+, Clang 3.6+)

  • CMake 3.2.2 and newer

Troubleshooting

The sample code should compile without error on our supported platforms. If you run into trouble, or think you have found a bug, we have a JIRA Service Desk available through the ComputeCpp website.

Frequently Asked Questions

We have a FAQ document available online.

Maintainers

This SDK is maintained by Codeplay Software Ltd. If you have any problems, please contact [email protected].

Acknowledgements

This repository contains code written by Sean Barrett (stb_image code in the Gaussian blur sample) and Charles Salvia (the stack allocator used in the smart pointer sample). Please see the files for their respective licences.

Contributions

This SDK is licensed under the Apache 2.0 license. Patches are very welcome! If you have an idea for a new sample, different build system integration or even a fix for something that is broken, please get in contact.

computecpp-sdk's People

Contributors

aerialmantis avatar chriscummins avatar duncanmcbain avatar graham-codeplay avatar keryell avatar marcelsheeny avatar maria-ro avatar mathiasmagnus avatar mcopik avatar neuralsandwich avatar progtx avatar rodburns avatar ruyk avatar vtec234 avatar wyaneva avatar

Watchers

 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.