📁
Software Engineering
📅
153768 Requisition #
Apply for Job
Recommend to a Friend
Sign Up for Job Alerts
Xilinx, the world's leading company specialized in FPGA, is looking for some interns to work on C++-based high-level programming tools to ease FPGA programming with improved productivity.

FPGA are reconfigurable MPSoC including CPU, GPU, reprogrammable logic and various specific accelerators (video CODEC...) and I/O subsystems (100 GigE, PCIe, memory buses...). This complexity makes them versatile systems that can be used as accelerators but this also makes their use difficult compared to simpler CPU-only environments.

Fortunately, at the same time there are various open standards for heterogeneous computing, such as OpenCL or OpenMP 5, being developed to ease the programming of accelerators. Xilinx is pushing these standards as a way to simplify FPGA programming.

The Domain Specific Languages (DSL) are an interesting high-level approach to simplify programming by specializing on the problems to be solved. OpenCL SYCL is a DSL based on pure modern C++ to represent the concepts used to program accelerators directly as C++ class without any extension or compiler to avoid portability issues.

The goal of this internship is to develop a SYCL open source environment targeted FPGA and CPU for emulation:
  • a first part is to extend the runtime implementation https://github.com/triSYCL/triSYCL based on OpenCL and OpenMP API;
  • a second part is to adapt the open source compiler Clang/LLVM by adding an outliner to extract the code of the computational kernels and improve the compiler flow to generate the SPIR 2.0 or SPIR-V portable intermediate representation to address the existing Vivado HLS and SDAccel tools from Xilinx. Khronos provides open source components to deal with OpenCL C++ and SPIR-V to help in this task;
  • the test infrastructure is to be extended at the same time with the development of some small applications;
  • in parallel to the implementation, a prospective research to define the standards themselves will be done.
The positions are based in Dublin (Ireland) and suited typically for master students, but of course other profiles can apply (PhD students...).

The candidate will have the opportunity to get involved into advanced technologies through the standardization committees of Khronos OpenCL & SYCL, Vulkan, OpenMP and C++, and meet all the leading companies and laboratories behind these technologies.

The areas and subjects of the internship are:

  • implementing parallel languages and run-times (OpenCL SYCL 2.2 https://www.khronos.org/sycl and OpenMP 5 http://openmp.org);
  • compilation (Clang/LLVM http://llvm.org/ and SPIR-V https://www.khronos.org/spir );
  • FPGA & accelerators;
  • C++17, STL, Boost;
  • DSL & DSeL;
  • HPC & real-time applications and libraries;
  • https://github.com/triSYCL/triSYCL
  • https://github.com/KhronosGroup/SyclParallelSTL
  • http://portablecl.org
  • open source software used for C++ development;
  • git;
  • Linux.

Education Requirements 
BSc/MSc/PhD in domains related to computer science.
Passion for compilation and modern C++.

Years of Experience
The more the better.

Previous Job Searches

Activity Feed

36427
Job shares through Xilinx
Someone referred the Senior Design Engineer position. About a minute ago
Someone applied to the Design Engineer Manager position. 10 minutes ago
Someone applied to the Technical intern position as a result of a referral. 15 minutes ago
Someone referred the Design Engineer 1 position. 21 minutes ago
Someone applied to the SIlicon Validation Intern position as a result of a referral. 22 minutes ago

Similar Listings

Ireland, Ireland, Saggart, DUBLIN, IRELAND

📁 Software Engineering

Requisition #: 153477

United States, California, San Jose, HQ

📁 Software Engineering

Requisition #: 153611

India, India, Hyderabad, XITS, Hyderabad, India

📁 Software Engineering

Requisition #: 153770

Equal Employment Statements

UNITED STATES: Xilinx is an equal opportunity and affirmative action employer. Applicants and employees are treated throughout the employment process without regard to race, color, religion, national origin, citizenship, age, sex, marital status, ancestry, physical or mental disability, veteran status or sexual orientation. The information requested here is used only in compliance with US Federal laws and is not gathered for employment decisions. Responses are strictly voluntary, and any information provided will remain confidential. If you choose not to "self-identify", you will not be subject to any adverse treatment.

CANADA and EUROPE: Xilinx is an equal opportunities employer.

SINGAPORE and AUSTRALIA: Xilinx is an equal opportunity and affirmative action employer. Applicants and employees are treated throughout the employment process without regard to age, race, gender, religion, marital status and family responsibilities, disability or sexual orientation.

CHINA, HONG KONG, KOREA, PHILIPPINES and TAIWAN: Xilinx is an equal opportunity and affirmative action employer. Applicants and employees are treated throughout the employment process without regard to race, color, religion, national origin, citizenship, age, sex, marital status, ancestry, physical or mental disability, veteran status or sexual orientation.