Developer Central
China  |  India
  • Home
  • Tools & SDKs
  • Resources
  • Community
  • Partners
  • Support
  • Home
  • Tools & SDKs
  • Resources
  • Community
  • Partners
  • Support
  • Home
  • Tools & SDKs
  • Resources
  • Community
  • Partners
  • Support
  • Home
  • Tools & SDKs
  • Resources
  • Community
  • Partners
  • Support

Tools & SDKs

  • Heterogeneous Computing
    • Aparapi
    • APP Kernel Analyzer
    • APP Profiler
      • Getting Started
        • System Requirements
        • Installation
        • Successful Installation
        • Using The Visual Studio Plugin
        • Using the Command Line Interface
        • Known Issues
        • Support
      • User Guide
        • APP Profiler Session Explorer
        • APP Profiler Session
        • APP Profiler Timeline
        • APP Profiler Summary Pages
        • APP Profiler Code Viewer
        • APP Profiler Kernel Occupancy Viewer
        • APP Profiler Settings
        • APP Profiler Session Parameters
        • Description of Configuration Files
        • APP Profiler Kernel Occupancy
        • CLPerfMarkerAMD Library
    • Accelerated Parallel Processing (APP) SDK
      • Downloads
        • Download Archive
      • System Requirements & Driver Compatibility
      • Documentation
      • Bolt C++ Template Library
        • AMD Bolt Sample Code Contest Official Rules
      • Samples & Demos
      • Compute System Recommendations
      • Intro OpenCL Tutorial
      • Open Source Libraries
      • Support
    • Accelerated Parallel Processing Math Libraries (APPML)
    • CodeAnalyst Performance Analyzer
      • CodeAnalyst for Linux®
      • CodeAnalyst for Windows®
      • PMU Extension Driver
      • CodeAnalyst Archive
    • CodeXL
    • gDEBugger
      • gDEBugger User Guide
        • Getting started with gDEBugger
        • Toolbars
        • Views
        • Dialogs
        • How Do I…
        • FAQ
        • Supported Extensions
        • System Requirements & Installation
        • Legal Information
        • Contact Information
  • CPU Development
    • Advanced Platform Management Link (APML)
    • Core Math Library (ACML)
      • Downloads & Resources
        • Building with ACML
        • How to use ACML with different versions of GCC/GFORTRAN
      • Archive Downloads
      • Product Features
      • Redistribution Agreements
    • LibM
      • ACML_MV
      • LibM Functions
    • Open64 SDK
      • Building with ACML
    • SimNow™ Simulator
    • Tools for DMTF DASH
    • x86 Open64 Compiler Suite
      • Developer Guide
      • Apps & Libraries Built by x86 Open64
      • Inactive Files
  • Graphics Development
    • Display Library (ADL) SDK
    • ATI GPU Services (AGS) Library
    • GPU PerfStudio 2
      • API Trace
      • Frame Debugger
      • Frame Profiler
      • Shader Debugger
      • Shader Editor
      • Previous versions
    • GPU ShaderAnalyzer
    • GPUPerfAPI
    • OpenGL ES SDK
    • Quad-Buffer SDK
    • FirePro SDK
      • FirePro News & Events
    • Radeon™ SDK
  • Open Source
    • GCC & GNU Toolchains
    • OpenCL™ Emulator-Debugger
    • Tapper

Home > Tools & SDKs > Heterogeneous Computing > Accelerated Parallel Processing (APP) SDK > Bolt C++ Template Library

Bolt C++ Template Library

BoltBanner

Blog describes a Bolt sample using a Monte Carlo algorithm to compute PI – library and sample provided below!

Bolt provides an STL compatible library of high level constructs for creating accelerated data parallel applications.  Code written using STL or other STL compatible libraries (example: TBB) can be converted to Bolt in minutes.  In its open-source debut, Bolt supports C++ AMP in addition to OpenCL™ as underlying supported compute technologies.  With Bolt, kernel code to be accelerated is written in-line in the C++ source file.  No OpenCL™ or C++ AMP API calls are required since all initialization of and communication with the OpenCL™ or C++ AMP device is handled by the library.  Bolt requires significantly fewer lines-of-code and less developer effort Bolt is straightforward to use and includes comprehensive documentation for the library routines, memory management, control interfaces, and host/device code sharing.

In addition to adding support for C++ AMP and CPU-only systems, the Bolt Beta also includes an array of Bolt capabilities by including support for common compute-optimized routines including sort, scan, transform, and reduce operations.  Additionally you will find performance improvements, and we will continue to improve performance throughout the Beta phase.

AMD is committed to open standards and open software, and as promised back in our developer summit last year (AFDS 2012), we have made Bolt available as an open source community project.  We did this as soon as possible at a Beta stage to promote early usage, invite developer feedback and motivate contributions to the project.  We feel this will accelerate Bolt’s evolution by keeping it tightly aligned with developer needs and actual usage thus helping achieve its full value.  Of course AMD will continue to actively drive contributions and manage the project.  The source to Bolt is now available on the open source social programming platform GitHub:  https://github.com/HSA-Libraries/Bolt

We welcome the community to help build the Bolt ecosystem by becoming a contributor to the Bolt project.  We also invite you to help promote Bolt by submitting Bolt sample application code to the samples repository on GitHub.  We’re looking for well written example code that highlights Bolt’s ability to deliver high performance with ease of programming.  As a special thank-you for contributing compelling samples, AMD will be evaluating contributions to identify samples that can be used in developer SDKs and promotional campaigns.    If your contribution is selected, you will receive a gift (a laptop computer with an AMD APU) and have an opportunity to showcase your work to the Heterogeneous Compute developer community.   See here for rules and additional details.

To learn more about Bolt please take a look at Ben Sander’s Webinar (@ Dr. Dobbs – Watch the Heterogeneous Computing Webinar)

See Kent Knox’s webinar on re-implementing an OpenCL Black-Scholes example, using Bolt .   There are additional details about how to use Bolt in Kent’s blog.

Register for the Bolt forum  to gain early access to the Bolt beta once it is available, access to the Bolt private forum to share your experience with your peers, and to learn more about our Bolt sample competition.

Bolt is released under an Apache 2.0 license and in coming months is planned to be made available on a public repository.

Monte-Carlo π sample

Please find a new Bolt sample for computing π using a Monte-Carlo algorithm in the table below.  For further details on the sample, and how it is created with a few simple modifications from a sample using the C++ Standard Template Library, please refer to Siu Chi’s blog.

Latest Bolt Library

An update to the Bolt library preview is available which fixes some minor issues.  Please install this updated version of the Bolt library on your development system in order to use the new Bolt sample that illustrates use of Bolt to compute π using a monte-carlo type algorithm.

 

File Name Version Size Launch Date OS Bitness Description
Bolt C++ Template Library Beta
Bolt 1.0-Beta_VS2010.zip 1.0 10.86MB 04/23/13 Windows 7/8 32/64-Bit Bolt library Beta v1.0 for Visual Studio 2010
Bolt C++ Template Library Beta
Bolt 1.0-Beta_VS2012.zip 1.0 12.86MB 04/23/13 Windows 7/8 32/64-Bit Bolt library Beta v1.0 for Visual Studio 2012
Samples
BoltMonteCarloPI.7z N/A 7KB 4/23/13 Windows 7/8 64-bit Bolt sample demonstrating computation of Pi using a Monte-Carlo based algorithm

Get the hcNewsFlash.

Your email address:

No SPAM.
Easy unsubscribe.

HSA is going to rock your world.

Learn more about Heterogeneous System Architecture.

Got Questions?

Ask the Developer Forums Community. They’ve got answers.

Tools & SDKs

  • Heterogeneous Computing
    • Aparapi
    • APP Kernel Analyzer
    • APP Profiler
      • Getting Started
        • System Requirements
        • Installation
        • Successful Installation
        • Using The Visual Studio Plugin
        • Using the Command Line Interface
        • Known Issues
        • Support
      • User Guide
        • APP Profiler Session Explorer
        • APP Profiler Session
        • APP Profiler Timeline
        • APP Profiler Summary Pages
        • APP Profiler Code Viewer
        • APP Profiler Kernel Occupancy Viewer
        • APP Profiler Settings
        • APP Profiler Session Parameters
        • Description of Configuration Files
        • APP Profiler Kernel Occupancy
        • CLPerfMarkerAMD Library
    • Accelerated Parallel Processing (APP) SDK
      • Downloads
        • Download Archive
      • System Requirements & Driver Compatibility
      • Documentation
      • Bolt C++ Template Library
        • AMD Bolt Sample Code Contest Official Rules
      • Samples & Demos
      • Compute System Recommendations
      • Intro OpenCL Tutorial
      • Open Source Libraries
      • Support
    • Accelerated Parallel Processing Math Libraries (APPML)
    • CodeAnalyst Performance Analyzer
      • CodeAnalyst for Linux®
      • CodeAnalyst for Windows®
      • PMU Extension Driver
      • CodeAnalyst Archive
    • CodeXL
    • gDEBugger
      • gDEBugger User Guide
        • Getting started with gDEBugger
        • Toolbars
        • Views
        • Dialogs
        • How Do I…
        • FAQ
        • Supported Extensions
        • System Requirements & Installation
        • Legal Information
        • Contact Information
  • CPU Development
    • Advanced Platform Management Link (APML)
    • Core Math Library (ACML)
      • Downloads & Resources
        • Building with ACML
        • How to use ACML with different versions of GCC/GFORTRAN
      • Archive Downloads
      • Product Features
      • Redistribution Agreements
    • LibM
      • ACML_MV
      • LibM Functions
    • Open64 SDK
      • Building with ACML
    • SimNow™ Simulator
    • Tools for DMTF DASH
    • x86 Open64 Compiler Suite
      • Developer Guide
      • Apps & Libraries Built by x86 Open64
      • Inactive Files
  • Graphics Development
    • Display Library (ADL) SDK
    • ATI GPU Services (AGS) Library
    • GPU PerfStudio 2
      • API Trace
      • Frame Debugger
      • Frame Profiler
      • Shader Debugger
      • Shader Editor
      • Previous versions
    • GPU ShaderAnalyzer
    • GPUPerfAPI
    • OpenGL ES SDK
    • Quad-Buffer SDK
    • FirePro SDK
      • FirePro News & Events
    • Radeon™ SDK
  • Open Source
    • GCC & GNU Toolchains
    • OpenCL™ Emulator-Debugger
    • Tapper

©2013 Advanced Micro Devices, Inc. OpenCL and the OpenCL logo are trademarks of Apple, Inc., used with permission by Khronos.

  • Contact Us
  • |
  • Careers
  • |
  • Site Map
  • |
  • Terms and Conditions
  • |
  • Privacy
  • |
  • Trademarks