Khronos Finalizes OpenCL 2.0 Specification for Heterogeneous Computing

Indus짯try feed짯back dri짯ves new gene짯ra짯ti짯on open stan짯dard for cross-plat짯form par짯al짯lel pro짯gramming with increased fle짯xi짯bi짯li짯ty, func짯tion짯a짯li짯ty and performance

Novem짯ber 18th 2013 SC13 Den짯ver, CO The Khro짯nos꽓 Group today announ짯ced the rati짯fi짯ca짯ti짯on and public release of the fina짯li짯zed Open짯CL꽓 2.0 spe짯ci짯fi짯ca짯ti짯on.  Open짯CL 2.0 is a signi짯fi짯cant evo짯lu짯ti짯on of the open, royal짯ty-free stan짯dard that sim짯pli짯fies cross-plat짯form, par짯al짯lel pro짯gramming.  With an enhan짯ced exe짯cu짯ti짯on model and a sub짯set of the C11 and C++11 memo짯ry model, syn짯chro짯niza짯ti짯on and ato짯mic ope짯ra짯ti짯ons, Open짯CL now enables a signi짯fi짯cant짯ly richer ran짯ge of algo짯rith짯ms and pro짯gramming pat짯terns to be easi짯ly acce짯le짯ra짯ted with impro짯ved per짯for짯mance.  Signi짯fi짯cant feed짯back from the deve짯lo짯per com짯mu짯ni짯ty was incor짯po짯ra짯ted into the final spe짯ci짯fi짯ca짯ti짯on, fol짯lo짯wing its pro짯vi짯sio짯nal release in July.  The Open짯CL 2.0 spe짯ci짯fi짯ca짯ti짯ons are available at www.khronos.org/opencl/.

Khro짯nos recei짯ved signi짯fi짯cant and thoughtful deve짯lo짯per feed짯back from the pro짯vi짯sio짯nal release of Open짯CL 2.0, much of which has been adopted, or will be mer짯ged with emer짯ging hard짯ware capa짯bi짯li짯ties as this state-of뱓he-art par짯al짯lel pro짯gramming plat짯form con짯ti짯nues to evol짯ve, said Neil Tre짯vett, chair of the Open짯CL working group, pre짯si짯dent of the Khro짯nos Group and vice pre짯si짯dent of mobi짯le con짯tent at NVIDIA.  쏰pen짯CL con짯ti짯nues to gather momen짯tum on desk짯top, mobi짯le and embedded devices, inclu짯ding pro짯vi짯ding a uni짯fied pro짯gramming envi짯ron짯ment for dyna짯mi짯cal짯ly balan짯cing diver짯se CPU, GPU, DSP and hard짯ware resour짯ces in mobi짯le SOCs for advan짯ced use cases ran짯ging from visi짯on pro짯ces짯sing for Aug짯men짯ted Rea짯li짯ty to phy짯sics simu짯la짯ti짯on for mobi짯le gaming.

OpenCL 2.0 updates and additions include:

Shared Vir짯tu짯al Memory
Host and device ker짯nels can direct짯ly share com짯plex, poin짯ter-con짯tai짯ning data struc짯tures such as trees and lin짯ked lists, pro짯vi짯ding signi짯fi짯cant pro짯gramming fle짯xi짯bi짯li짯ty and eli짯mi짯na짯ting cos짯t짯ly data trans짯fers bet짯ween host and devices.

Nes짯ted Parallelism
Device ker짯nels can enqueue ker짯nels to the same device with no host inter짯ac짯tion, enab짯ling fle짯xi짯ble work sche짯du짯ling para짯digms and avo짯i짯ding the need to trans짯fer exe짯cu짯ti짯on con짯trol and data bet짯ween the device and host, often signi짯fi짯cant짯ly off짯loa짯ding host pro짯ces짯sor bottlenecks.

Gene짯ric Address Space
Func짯tions can be writ짯ten wit짯hout spe짯ci짯fy짯ing a named address space for argu짯ments, espe짯ci짯al짯ly useful for tho짯se argu짯ments that are declared to be a poin짯ter to a type, eli짯mi짯na짯ting the need for mul짯ti짯ple func짯tions to be writ짯ten for each named address space used in an application.

Images
Impro짯ved image sup짯port inclu짯ding sRGB images and 3D image wri짯tes, the abili짯ty for ker짯nels to read from and wri짯te to the same image, and the crea짯ti짯on of Open짯CL images from a mip-map짯ped or a mul짯ti-sam짯pled OpenGL짰 tex짯tu짯re for impro짯ved OpenGL interop.

C11 Ato짯mics
A sub짯set of C11 ato짯mics and syn짯chro짯niza짯ti짯on ope짯ra짯ti짯ons to enable assign짯ments in one work-item to be visi짯ble to other work-items in a work-group, across work-groups exe짯cu짯ting on a device or for sha짯ring data bet짯ween the Open짯CL device and host.

Pipes
Pipes are memo짯ry objects that store data orga짯ni짯zed as a FIFO and Open짯CL 2.0 pro짯vi짯des built-in func짯tions for ker짯nels to read from or wri짯te to a pipe, pro짯vi짯ding straight짯for짯ward pro짯gramming of pipe data struc짯tures that can be high짯ly opti짯mi짯zed by Open짯CL implementers.

Android Installable Cli짯ent Dri짯ver Extension
Enables Open짯CL imple짯men짯ta짯ti짯ons to be dis짯co짯ver짯ed and loa짯ded as a shared object on Android systems.

Indus짯try Support 
쏱re짯mie짯re Pro셲 sup짯port for Open짯CL has pro짯ved to be a mas짯si짯ve hit with our cus짯to짯mers; pro짯vi짯ding dra짯ma짯tic per짯for짯mance impro짯ve짯ments while allo짯wing for real-time editing and crea짯ti짯vi짯ty. We셱e exci짯ted about the tech짯no짯lo짯gi짯cal deve짯lo짯p짯ments in Open짯CL 2.0 and look for짯ward to dis짯co짯ve짯ring how it will enable us to push the per짯for짯mance enve짯lo짯pe even fur짯ther, said Al Moo짯ney, seni짯or pro짯duct mana짯ger, editing work짯flows at Adobe.

AMD has play짯ed a signi짯fi짯cant role in the evo짯lu짯ti짯on of Open짯CL and in the deve짯lo짯p짯ment of Open짯CL 2.0. Open짯CL 2.0 has made signi짯fi짯cant impro짯ve짯ments in pro짯gramma짯bi짯li짯ty and is also very well ali짯gned with the hard짯ware fea짯tures that rela짯ted indus짯try stan짯dards bodies such as the HSA Foun짯da짯ti짯on are deve짯lo짯ping said Man짯ju Heg짯de, CVP HAS Group AMD. AMD stron짯gly belie짯ves in and pro짯mo짯tes Open짯CL as one of the stan짯dards for pro짯gramming com짯pu짯te on its GPUs and APUs and looks for짯ward to increased adop짯ti짯on becau짯se of Open짯CL 2.0

The Khro짯nos Group셲 Open짯CL 2.0 is the first key, foun짯da짯tio짯nal, pro짯gramming lan짯guage to tru짯ly sup짯port the core capa짯bi짯li짯ties of HSA enab짯led hard짯ware.  It is going to be exci짯ting to see whe짯re deve짯lo짯pers take this much richer pro짯gramming plat짯form, said Gre짯go짯ry Stoner, mana짯ging direc짯tor and vice pre짯si짯dent of HSA Foundation.

It is impres짯si짯ve that Open짯CL is sup짯port짯ing an incre짯asing짯ly diver짯se ran짯ge of hete짯ro짯ge짯neous com짯pu짯ting units and acce짯le짯ra짯tors, said Zhe짯nya Li, vice pre짯si짯dent of 2012 Lab, Hua짯wei Tech짯no짯lo짯gies.  We expect the Open짯CL stan짯dard to be wide짯ly adopted by the infor짯ma짯ti짯on and com짯mu짯ni짯ca짯ti짯ons tech짯no짯lo짯gy (ICT) sec짯tor, and to be a key soft짯ware stan짯dard used in Net짯work Func짯tion Vir짯tua짯liza짯ti짯on (NFV) acce짯le짯ra짯tors. Hua짯wei will actively par짯ti짯ci짯pa짯te in and con짯tri짯bu짯te to Open짯CL, and help it to pro짯vi짯de an easy-to-use deve짯lo짯p짯ment plat짯form for future ICT vir짯tua짯li짯zed appli짯ca짯ti짯ons.

As a long-time mem짯ber of Khro짯nos and a lea짯ding con짯tri짯bu짯tor to Open짯CL stan짯dards efforts, Ima짯gi짯na짯ti짯on is deligh짯ted that Khro짯nos con짯ti짯nues to crea짯te stan짯dards which make GPU com짯pu짯te pro짯gramming easier for deve짯lo짯pers. With our broad ran짯ge of IP inclu짯ding Power짯VR pro짯ces짯sors and MIPS CPUs, our cus짯to짯mers are crea짯ting inno짯va짯ti짯ve designs for mobi짯le, con짯su짯mer, auto짯mo짯ti짯ve and more. GPU com짯pu짯te is key to crea짯ting new appli짯ca짯ti짯ons within the power enve짯lo짯pe of the짯se next gene짯ra짯ti짯on devices, said Peter McGuin짯ness, direc짯tor of mul짯ti짯me짯dia tech짯no짯lo짯gy mar짯ke짯ting, Ima짯gi짯na짯ti짯on Technologies.

We are very exci짯ted about the user bene짯fits of Open짯CL 2.0셲 new fea짯tures, said Simon McIn짯tosh-Smith, Head of the Microelec짯tro짯nics Rese짯arch Group at the Uni짯ver짯si짯ty of Bris짯tol. The짯se latest evo짯lu짯ti짯ons in Open짯CL will enable us to effi짯ci짯ent짯ly sol짯ve a much wider ran짯ge of par짯al짯lel pro짯ces짯sing pro짯blems than ever befo짯re, and across a gro짯wing ran짯ge of embedded and HPC hard짯ware plat짯forms. The new shared vir짯tu짯al memo짯ry (SVM) fea짯ture will make it easier for pro짯gramm짯ers to deve짯lop hete짯ro짯ge짯neous par짯al짯lel pro짯grams, while sup짯port for dyna짯mic par짯al짯le짯lism will enable more effi짯ci짯ent solu짯ti짯ons for a much wider ran짯ge of appli짯ca짯ti짯ons.

Vivan짯te is plea짯sed to sup짯port and con짯tri짯bu짯te to the Open짯CL 2.0 spe짯ci짯fi짯ca짯ti짯on. The latest indus짯try stan짯dard will expand adop짯ti짯on of the tech짯no짯lo짯gy in mobi짯le, home enter짯tain짯ment, and auto짯mo짯ti짯ve pro짯ducts, crea짯ting the next wave of inno짯va짯ti짯ve com짯pu짯te use cases and con짯su짯mer expe짯ri짯en짯ces, said Wei-Jin Dai, Pre짯si짯dent and CEO of Vivan짯te. As the Open짯CL eco짯sys짯tem rapidly grows and more appli짯ca짯ti짯ons come to mar짯ket, SoCs using our latest Vega GPUs will be rea짯dy to sup짯port the latest 2.0 spe짯ci짯fi짯ca짯ti짯on and take advan짯ta짯ge of plat짯form level opti짯miza짯ti짯ons built into our archi짯tec짯tu짯re.

See OpenCL at SC13, Denver, CO

Visit the Khro짯nos Booth #4137 to meet with Open짯CL experts and get a free Open짯CL refe짯rence card.

Open짯CL: A Hands-On Introduction
Mon짯day, Novem짯ber 18th, 8:30 17:00, Room 403
Tim Matt짯son, Ali짯ce Koni짯ges, Simon McIntosh-Smith

Open짯CL BOF: Ver짯si짯on 2.0 and Beyond
Inclu짯ding announce짯ment of IWOCL 2014 (2nd Inter짯na짯tio짯nal Work짯shop on OpenCL)
Wed짯nes짯day, Novem짯ber 20th, 17:30 19:00, Room 405/406/407
Tim Matt짯son, Ben Ber짯gen, Simon McIntosh-Smith

Exhi짯bi짯tor Forum Open짯CL 2.0: Unlo짯cking the Power of Your Hete짯ro짯ge짯neous Platform
Thurs짯day, Novem짯ber 21st, 11:30 12:00, Room 501/502, Tim Mattson

Struc짯tu짯red Par짯al짯lel Pro짯gramming with Patterns
Sun짯day, Nov. 17, 8:30am-5pm, Room 302
Micha짯el McCool, James Reinders, Arch Robi짯son, Micha짯el Hebenstreit

See OpenCL at SIGGRAPH Asia, Hong Kong 

Visit the Khro짯nos Booth #F07 to meet with Open짯CL experts and get a free Open짯CL refe짯rence card.

Khro짯nos DevU, Wed짯nes짯day Novem짯ber 20th, Room S226
13:3013:45 Neil Tre짯vett, NVIDIA Intro짯duc짯tion to OpenCL
13:4514:30 Allen Hux, Intel Open짯CL 2.0 Overview
14:3014:50 Tomasz Bednarz, CSIRO Acce짯le짯ra짯ted Sci짯ence use of Open짯CL in Land Down Under

OpenCL 2.0 Reference Cards

Lami짯na짯ted Open짯CL 2.0 Refe짯rence cards are now available at www.amazon.com.

About The Khro짯nos Group
  The Khro짯nos Group is an indus짯try con짯sor짯ti짯um crea짯ting open stan짯dards to enable the aut짯ho짯ring and acce짯le짯ra짯ti짯on of par짯al짯lel com짯pu짯ting, gra짯phics, visi짯on, sen짯sor pro짯ces짯sing and dyna짯mic media on a wide varie짯ty of plat짯forms and devices.  Khro짯nos stan짯dards include OpenGL짰, OpenGL짰 ES, Web짯GL꽓, Open짯CL꽓, Web짯CL꽓, Open짯VX꽓, Open짯MAX꽓, OpenVG꽓, Open짯SL ES꽓, Strea짯mIn짯put꽓 and COLLADA꽓.  All Khro짯nos mem짯bers are enab짯led to con짯tri짯bu짯te to the deve짯lo짯p짯ment of Khro짯nos spe짯ci짯fi짯ca짯ti짯ons, are empowered to vote at various stages befo짯re public deploy짯ment, and are able to acce짯le짯ra짯te the deli짯very of their cut짯ting-edge media plat짯forms and appli짯ca짯ti짯ons through ear짯ly access to spe짯ci짯fi짯ca짯ti짯on drafts and con짯for짯mance tests.  More infor짯ma짯ti짯on is available at www.khronos.org.

###

Khro짯nos, DevU, Strea짯mIn짯put, Web짯GL, Web짯CL, COLLADA, Open짯KO짯DE, OpenVG, Open짯VX, Open짯SL ES and Open짯MAX are trade짯marks of the Khro짯nos Group Inc. ASTC is a trade짯mark of ARM Hol짯dings PLC, Open짯CL is a trade짯mark of Apple Inc. and OpenGL is a regis짯tered trade짯mark and the OpenGL ES and OpenGL SC logos are trade짯marks of Sili짯con Gra짯phics Inter짯na짯tio짯nal used under licen짯se by Khro짯nos. All other pro짯duct names, trade짯marks, and/or com짯pa짯ny names are used sole짯ly for iden짯ti짯fi짯ca짯ti짯on and belong to their respec짯ti짯ve owners.