Sycl-mlir Compiler Internship
1 week ago
SYCL 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 descriptions of their program to enable compiler optimizations. The advantage of MLIR for the implementation of such extensions is that compiler information for both the "host" code, that runs on the CPU, and the "device" code, that runs on the accelerator, can be considered together more easily allowing for optimizations that would not be possible based on knowledge of either side of the program alone. The matrix extension allows user to target tensor hardware (AMX, XMX, tensor core etc.) with SYCL in a portable manner. However, plain DPC++ cannot optimize such code as it is too low level for LLVM to efficiently capture the semantic. The goal of this internship is to develop a support for the matrix extension into our MLIR compiler and explore efficient optimizations and lowering. **Responsibilities**: During this internship, you will be working with a small team of compiler developers investigating options for the future design of SYCL compilers and you will: - Learn about Clang, LLVM, MLIR. - Learn about heterogeneous programming and language design, particularly for SYCL. - Learn about hardware extensions of modern GPUs (AMX, Tensorcores). - Develop a representation for the matrix extension in MLIR with the help of the compiler team and libraries developers (users of the extension). - Develop MLIR passes and lowering with the help of the team to target SPIR-V. - If time allows - Study and develop optimizations for the matrix extension. - Develop support for CUDA. **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) **Required Skills**: - C++ development experience. - Some level of compiler experience, e.g. coursework or research project. - Good written English and communication skills. - 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. - Knowledge of Clang or LLVM. - Knowledge of MLIR. - Knowledge of parallel IRs such as SPIR-V or PTX.Knowledge of heterogeneous programming, e.g. CUDA, SYCL, OpenCL, etc. - Knowledge of parallel architectures, such as GPUs. - Knowledge of build systems (e.g. CMake) and compiler tool-chains. - Experience working in a team. - Solid compiler design experience (SSA, CFG etc.) **Application Guidance**:
-
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...
-
Iso C++ Sycl Implementation Internship
7 days ago
Edinburgh, United Kingdom Codeplay Full timeCodeplay 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...
-
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...
-
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...
-
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...
-
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...
-
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....
-
Warehouse Operative
1 week ago
City of Edinburgh, United Kingdom Scottish Apprenticeships Full timeJoin to apply for the Warehouse Operative role at Scottish Apprenticeships. Job Overview The warehouse operative will gain experience in warehouse operations and stock control, working directly with the operations team to fulfil tasks, ensuring company policies and health and safety standards are adhered to, maintaining accuracy and timeliness, and checking...