World Library  
Flag as Inappropriate
Email this Article


Article Id: WHEBN0023155451
Reproduction Date:

Title: Codeplay  
Author: World Heritage Encyclopedia
Language: English
Subject: GPGPU
Publisher: World Heritage Encyclopedia


Codeplay Software Ltd.
Type Private
Industry Technology
Founded 2000
Founders Andrew Richards
Headquarters Edinburgh, Lothian, UK
Key people Andrew Richards
Jens-Uwe Dolinsky
Products Compilers
Testing tools
Services Compiler development
Debugger development
Runtime development
Employees 35 (2014)
Website .com.codeplaywww

Codeplay Software Limited is a privately owned software tools developer based in Edinburgh, Scotland. Codeplay produces compilers, debuggers, runtimes, testing systems, and other specialized tools to aid software development for heterogeneous systems and special purpose processor architectures, including GPUs and DSPs. Codeplay is a contributing member of the Multicore Association, the Khronos Group,[1] and the HSA Foundation.[2]


Codeplay was founded in 2000 by Andrew Richards, an experienced games developer, and formerly head of Software Development at Eutechnyx. Initial funding for the company was provided by Jez San OBE, founder of Argonaut Games and ARC International, who remains the majority shareholder. Codeplay began its business developing compilers aimed at games programmers, releasing its VectorC compiler for PlayStation 2 and x86 Windows PC in 2001. In 2005, Codeplay shifted focus to developing bespoke C/C++ compilers for processor designers, and has since expanded its services to include development of debuggers, runtimes, and testing tools.

In 2011, Codeplay announced that it had provided the real-time car damage system for NASCAR The Game: 2011, utilising its Offload technology[3]

In 2013, Codeplay formed an R&D division,[4] and received Investors in People accreditation.[5]

In 2014, Codeplay announced that it was working on an implementation of the Khronos Group's new provisional standard for heterogeneous computing, SYCL.[6] Codeplay's CEO, Andrew Richards, currently chairs the working group for this standard within the Khronos Group.


Sieve C++ Multicore Programming System

The Sieve C++ Multicore Programming System is a toolset that allows programmers to quickly and easily adapt existing C and C++ software, or write new software, to take advantage of new multi-core processor architectures.


VectorC is a Retargetable C/C++ compiler engine used to create C and C++ compilers for custom-built processor architectures.[7] Codeplay describes VectorC as being optimized for SIMD processors, DSP's, vector units and multi core processors.

VectorC, as its name suggests, was designed from the outset to exploit vectorization. It can automatically take advantage of advanced CPU 'vector' units via SIMD instruction such as MMX, SSE/SSE2, 3D Now and Altivec. VectorC is based around a common optimization core so that all appropriate existing optimizations can be used on the new target architecture it is being customized for. The Optimizer can query the back-end to see what optimizations are possible or suitable on the target.

VectorC also supports C++ to C compilation through an ANSI C compliant back-end. This enables the compilation of C++ code, with or without additional language extensions, to any architecture where a C compiler already exists. This feature is used in Codeplay's Sieve C++ Parallel Programming System to generate parallelized code that can be ported to any multicore architecture with a native C compiler.

Codeplay state that VectorC performs all the standard non-vector optimizations expected from high-performance compilers.

The VectorC engine has been designed to cope with multiple memory spaces, distributed latencies and an optimize data-movement using double-buffered streaming DMA when required, in addition to standard write combining and prefetching functions. There is support for Software pipelining, automatically parallelizing loops on pipelined architectures.

VectorC has extensive support for portable intrinsic functions, letting users write complex vector operations as built in functions. These are converted into the best combination of instructions on each architecture that the source code is compiled for.

Codeplay continues to offer VectorC-based custom compilers to clients. VectorC is also described by Codeplay as being the basis of Sieve C++ Multicore Programming System.


Codeplay has contributed to the following EU-funded research projects:

  • CARP: Correct and Efficient Accelerator Programming[8]
  • LPGPU: Low-power GPU[9][10]
  • PEPPHER: Performance Portability and Programmability for Heterogeneous Many-core Architectures[11]


  1. ^ "Khronos Contributing Members". Retrieved 10 April 2014.
  2. ^ "HSA Foundation Members". Retrieved 10 April 2014
  3. ^ "Codeplay Teams With Eutechnyx For Whole New World Of Damage". Scottish Games Network. 27 April 2011. Retrieved 3 April 2014.
  4. ^ "Codeplay Software Form New R&D Division". Scottish Games Network. 26 June 2013. Retrieved 3 April 2014.
  5. ^ "February 2013 -- Investors in People Scotland". Retrieved 3 April 2014.
  6. ^ "SYCL 1.2 Provisional Specification Announced". Retrieved 10 April 2014.
  7. ^ "VectorC Retargetable Compiler Platform". Retrieved 3 April 2014.
  8. ^ "CARP: Correct and Efficient Accelerator Programming". Retrieved 3 April 2014
  9. ^ "Consortium |". Retrieved 3 April 2014
  10. ^ "European Consortium Awarded 2.8M€ Grant For Research Into Low Energy Graphics Processing". 9 November 2011. Retrieved 3 April 2014.
  11. ^ "PEPPHER Partners". Retrieved 3 April 2014
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.