AMD OpenCL Coding Competition

AMD is proud to present the OpenCL Coding Competition to the TopCoder Community. With a combined total of $50,000 on the line!

There are two main components of this competition:

  • Innovation Challenge
  • Performance Challenge

For the innovation challenge, AMD is asking you to use OpenCL™ and the AMD APP SDK to build something that will demonstrate the power of Fusion APUs. Whether it’s an app, game, widget, benchmark or demo, the most stellar submission will receive a $20,000 grand prize! How would you demonstrate the capabilities of AMD Fusion Family of APUs?

The performance challenge is where you can go head to head with other programmers to optimize an OpenCL algorithm to see who can get the fastest results.

To enter the innovation challenge, register as a TopCoder member, register for the contest, download the SDK at and build your demo.  Submit your application in Online Review and it will be reviewed by our panel of judges according to the criteria below. For full contest rules and details read more here. Details on entering the performance challenge will be made available 1 month prior to the start of that phase of the competition. Good luck, and have fun!

What is AMD APP Technology?

AMD APP technology is a set of advanced hardware and software technologies that enable AMD graphics processing cores (GPU), working in concert with the system’s x86 cores (CPU), to accelerate many applications beyond just graphics. This enables better balanced platforms capable of running demanding computing tasks faster than ever, and sets software developers on the path to optimize for AMD Accelerated Processing Units (APUs).

What is the AMD APP Software Development Kit?

The AMD APP Software Development Kit (SDK) is a complete development platform created by AMD to allow you to quickly and easily develop applications accelerated by AMD APP technology. The SDK allows you to develop your applications in a high-level language, OpenCL™ (Open Computing Language).

What is OpenCL™?

OpenCL™ is the first truly open and royalty-free programming standard for general-purpose computations on heterogeneous systems. OpenCL™ allows programmers to preserve their expensive source code investment and easily target both multi-core CPUs and the latest GPUs and APUs such as those from AMD.

What is AMD Fusion™ Family of APUs?

APU stands for Accelerated Processing Unit because takes the GPU (graphics processing unit) and the CPU (central processing unit) and puts them on a single chip.  This design enables amazing experiences in any form factor and removes the north bridge interconnect bottlenecks in heterogeneous computing.  See the short APU video for a high level introduction to AMD Fusion APUs

What is this competition?

This competition is to create the best demo apps using the AMD APP SDK and OpenCL™. Your apps can be anything!

  • Gaming Physics
    • Fluids, cloth, rigid bodies, character animation
  • Image, video and signal processing
    • Facial recognition, speech recognition, video stabilization, video search
  • Collision detection
    • Rigid body collision for games
  • Simulations
    • Crowd simulation, computational fluid dynamics, finite element simulations
  • Artificial Intelligence
    • Path finding
  • Bioinformatics
    • DNA sequence matching
  • Computer security
    • Intrusion monitoring and detection
  • Computer Vision
  • Financial Modeling
    • Black-Scholes computation
  • Machine earning
    • Apply neural networks or other algorithms to a practical problem
  • Numerical linear algebra
    • Linear and nonlinear systems solvers, eigenvalue solvers
  • Optimization
    • Circuit layout
  • Ray Tracing
    • Ray tracing on GPUs
  • Other

Innovation Challenge

Registration Opens June 15th at 9:00 AM EST
Problem Statement Deadline….. June 30th at 9:00 AM EST
Submission Deadline August 29th at 9:00 AM EST

Performance Challenge

Performance Challenge 1….. September 28th at 9:00 AM EST - October 18th at 11:59 PM EST
Performance Challenge 2 October 19th at 9:00 AM EST – November 8th at 11:59 PM EST
Entry Details

In order to qualify for the innovation challenge you are required to submit both a problem statement and a code submission.

Your problem statement should be a 1 to 2 page document describing the application(s) you intend to build including:

  • Definition of the problem being solved
  • Description of the approach you intend to use to solve it
  • Definition of the criteria for evaluating the proposed solution

Problem statements must be submitted no later than June 30th at 9:00 AM EST.

Your code submission should be a zip file or archive containing:

  • Problem statement (updated, if applicable)
  • Source code and build scripts for your demo app solutions
  • Deployment guide including instructions on how to run and verify your app
  • If applicable, any analysis of algorithm efficiency and processor utilization (an example of such analysis will be provided in the contest forum)

Final submissions must be submitted no later than August 15th at 9:00 AM EST.

Prizes and Winners

Innovation Challenge

1st place $20,000
2nd place $10,000
3rd place $5,000
4th place $2,500
5 honorable mention prizes….. $250

AMD will judge on these submissions on the following criteria in order of importance:

  • Benefits derived from utilization specifically from AMD Fusion architecture
  • Novelty and creativity
  • Algorithm and implementation efficiency and processor utilization
  • Quality of software engineer, including usage of advanced features such as local data store, images, buffer flags, etc.
  • Commercial potential
  • Open source potential
  • Magnitude of effort

Performance Challenge

1st place $2,500
2nd place….. $1,700
3rd place $900
4th place $450
5th place $225

More details to come one month prior to the start of the Performance Challenge.

Where do I start?

Submissions are required to build and run using the AMD APP SDK and to use OpenCL™, so the best place to start is to learn what is offered by the SDK. Feel free to ask for help in the competition forums too.

Where do I submit?

To submit your problem statement and final submission, you will first need to become a member of TopCoder. Once a member, register for the competition. You will be able to submit your solutions using the Online Review tool.

Do I need an AMD GPU to participate?

No. use of an AMD GPU is not required; the application can run using the CPU only. You will need to download the special version of the Catalyst driver that contains the stand alone OpenCL runtime compiler.

Does the performance of my application matter?

Yes. While you don’t have to optimize every algorithm and aspect of your demo, the purpose of the competition is to demonstrate the AMD Fusion capabilities. Applications that perform and respond well will be favored over submissions that are slow or inefficient.

What are the target platforms for this contest?

Applications may be targeted to Windows or Linux only; MacOS submissions will not be accepted.

Licensing Note

Winning submissions will be licensed to TopCoder and AMD as set forth in the official rules.

Official Rules

For official contest rules please see the contest rules page here.

©2011 Advanced Micro Devices, Inc. All rights reserved. AMD, the AMD arrow logo, and
combinations thereof are trademarks of Advanced Micro Devices, Inc. Microsoft is a
registered trademark of Microsoft Corporation in the United States and/or jurisdictions.
OpenCL is a trademark of Apple Inc. used with permission by Khronos.
APP Forums