Iso C++ Sycl Implementation Internship
7 days ago
Codeplay is is a major contributor to the development of the SYCL open standard for heterogeneous programming with modern C++. As members of the Khronos group Codeplay help shape the future of the SYCL standard in order to bring support for the latest heterogeneous hardware and align SYCL closer to standard C++. Parallel to this the ISO C++ committee are in the process of introducing features to the C++ language and standard library for parallelism, concurrency, asynchronous tasking and support for heterogeneous compute, including both the Parallelism TS 2 and the Executors proposal, which Codeplay has also contributed the development of. The Executors proposal has been in the works for several years, the most recent form being ISO C++ paper P2300, which introduces the sender-receiver asynchronous programming model, which uses the composition of lazy tasks to execute on the CPU as well as heterogeneous accelerators such as GPUs.
We are looking for someone who has an interest in heterogeneous compute programming models and modern C++ who can help us implement these upcoming C++ features based on SYCL. You will be keen to learn about the SYCL programming model, the ComputeCpp and DPC++ implementations of SYCL and the ISO C++ Parallelism TS 2 and Executors proposals. During the internship you will be involved in reviewing the ISO C++ proposals, analyzing them for any gaps in their design in relation to a SYCL-based implementation, and the implement those proposals for SYCL, targeting ComputeCpp and DPC++.
**Please Note**: Due to COVID-19 we are following the Scottish Government Roadmap and, although we are operating normally, we have not yet returned to the office.
**Responsibilities**:
- Evaluate the current status of the Parallelism TS 2 and Executors proposal
- Assess the mapping of SYCL 2020 features to those proposals and identify any gaps
- Implement the Executors proposal on top of SYCL
- Implement the C++ parallel algorithms on top of executors
- Implement and propose extensions for any missing features which are required
**What We Offer**:
- A friendly and relaxed working environment where colleagues respect and support each other.
Great career prospects within a growing company
- Newstart mentoring scheme
- Flexible working hours
- Frequent company social events (social nights, pot luck lunches, gaming, karting, outdoor adventures, and more) (Post-COVID)
**Required Skills**:
- C++ development experience
- Good written English and communication skills
- Ability to work effectively in a remote environment
- Working knowledge of source control and configuration management tools
**Beneficial Skills**:
Knowledge and/or experience of any of the following would be useful for the role, but are not essential. You must be able to learn new skills, but will be given support from Codeplay's team to get you up to speed.
- Experience with heterogeneous programming models such as SYCL, OpenCL or CUDA
- Experience with asynchronous and parallel programming
- Experience with modern C++ (14/17/20)
**Application Guidance**:
-
Sycl-mlir Compiler Internship
1 week ago
Edinburgh, United Kingdom Codeplay Full timeSYCL is a C++-based heterogeneous programming standard for accelerator computing. Codeplay works on implementations of this standard and are investigating using the MLIR compiler framework to enable SYCL-aware optimizations at compile time. This includes allowing the creation of SYCL language extensions so that the programmer can provide more accurate...
-
R&d Sycl Libraries Internship
1 day ago
Edinburgh, United Kingdom Codeplay Full timeCodeplay is the main developer and maintainer of several SYCL-based libraries, targeting several common HPC workloads. SYCL-DNN is a pure SYCL library that aims to provide performance-portable implementations of frequently used Deep Neural Network (DNN) operators such as convolution, pooling, activation functions and batch normalization. During the...
-
Sycl Failure Taxonomy Internship
7 days ago
Edinburgh, United Kingdom Codeplay Full timeIn addition to educating users about how NOT to write SYCL code, these tests can be incorporated into the test suites for the runtime, to ensure that the implementation handles the errors gracefully as far as possible. Error handling is a very important feature of software in a safety-critical context and has to be extensively tested to ensure that errors...
-
Sycl Failure Taxonomy Internship
1 day ago
Edinburgh, United Kingdom Codeplay Full timeIn addition to educating users about how NOT to write SYCL code, these tests can be incorporated into the test suites for the runtime, to ensure that the implementation handles the errors gracefully as far as possible. Error handling is a very important feature of software in a safety-critical context and has to be extensively tested to ensure that errors...
-
Autoware Sycl/nvidia Port Internship
7 days ago
Edinburgh, United Kingdom Codeplay Full timeThe Autoware Foundation is developing open-source software for autonomous driving in the vehicles of tomorrow. Some algorithms in the reference implementation make use of CUDA to accelerate kernels on NVidia GPUs. In the automotive industry, however, there is interest in moving away from proprietary programming models and embrace open and portable standards....
-
Edinburgh, United Kingdom Codeplay Full timeCodeplay is known for implementing OpenCL and SYCL runtimes and compilers for their customers' acceleration platforms. Now we aim to target customers in the automotive sector, who want to run highly complex AI algorithms on their accelerators, which will provide advanced driving assistance (ADAS) and autonomous driving (AD) features to make our roads...
-
Kernel Timeout Proof of Concept Internship
7 days ago
Edinburgh, United Kingdom Codeplay Full timeCodeplay is known for implementing OpenCL and SYCL runtimes and compilers for their customers' acceleration platforms. Now we aim to target customers in the automotive sector, who want to run highly complex AI algorithms on their accelerators, which will provide advanced driving assistance (ADAS) and autonomous driving (AD) features to make our roads...
-
Risc
7 days ago
Edinburgh, United Kingdom Codeplay Full timeCodeplay has a software platform called Acoran, that is designed to support C++ programming on a wide-range of hardware devices. These devices include some RISC-V targets and simulators, in this project we would like to add support for an additional academic multi-core RISC-V simulator. This project should allow us to test higher RISC-V core counts on a...
-
Jira Data Mining Internship
7 days ago
Edinburgh, United Kingdom Codeplay Full timeCodeplay is known for implementing OpenCL and SYCL runtimes and compilers for their customers' acceleration platforms. Now we aim to target customers in the automotive sector, who want to run highly complex AI algorithms on their accelerators, which will provide advanced driving assistance (ADAS) and autonomous driving (AD) features to make our roads safer....
-
Software Engineering Internship or Placement
1 week ago
Edinburgh, United Kingdom Ciena Full timeAs the global leader in high-speed connectivity, Ciena is committed to a people-first approach. Our teams enjoy a culture focused on prioritizing a flexible work environment that empowers individual growth, well-being, and belonging. We're a technology company that leads with our humanity—driving our business priorities alongside meaningful social,...