Internship BPF Linux Schedulers bij Oracle Labs



Oracle, a global provider of enterprise cloud computing, is empowering businesses of all sizes on their journey of digital transformation. Oracle Cloud provides leading-edge capabilities in software as a service, platform as a service, infrastructure as a service, and data as a service.

Oracle’s application suites, platforms, and infrastructure leverage both the latest technologies and emerging ones – including artificial intelligence, machine learning, blockchain, and Internet of Things – in ways that create business differentiation and advantage for customers. Continued technological advances are always on the horizon.

Oracle Labs
Oracle Labs is the advanced research and development arm of Oracle. We focus on the development of technologies that keep Oracle at the forefront of the computer industry. Oracle Labs researchers look for novel approaches and methodologies, often taking on projects with high risk or uncertainty, or that are difficult to tackle within a product- development organization. Oracle Labs’ research is focused on real-world outcomes: our researchers aim to develop technologies that will someday play a significant role in the evolution of technology and society. For example, chip multithreading and the Java programming language grew out of work done in Oracle Labs.

BPF Linux Schedulers
OS schedulers aim to solve the following problem: finding efficient placements for tasks on a (possibly large) number of cores, at a very high frequency. Oracle Labs is interested in investigating practical techniques to improve the performance of the Linux scheduler. This exploratory project is a unique opportunity to contribute to a hot research topic while gaining experience in hacking the Linux kernel.

Internship Details
Directly hacking into the code of the Linux scheduler to improve it is an impractical approach: it results in kernel patches that are hard to maintain or merge in the mainline Linux kernel. Instead, a preferable approach would be to make the Linux scheduler expose a safe way of writing external schedulers.

BPF has made it possible to inject safe user code into the kernel. We would like to investigate whether BPF could be used, or extended, to allow for writing safe and efficient external schedulers that can be loaded inside the kernel. As an intern, you will investigate the potential benefits of this idea, by proposing designs, prototyping code, benchmarking tradeoffs and reporting your findings.

The successful candidate is expected to complete the internship using a wide and diverse set of skills.
Required Skills

  • Thorough understanding of computer science fundamentals including data structures, algorithms and complexity analysis
  • Good problem-solving skills
  • Advanced C programming

Preferred Skills

  • Knowledge and/or experience in systems/low-level programming
  • Familiarity with version control systems

Desired Skills

  • Notions of OS design
  • Previous experience with development in a large system

For more information about the internship, contact Jean-Pierre Lozi.

Related Topics
Our group at Oracle Labs further offers various internship topics in the following areas:

  • Automated Machine Learning with Explainability (AutoMLx)
  • Automating OCA Verification of GitHub Pull Requests
  • Extending a Distributed Graph Engine (Oracle Labs PGX)
  • Extending a Web-Based Enterprise Data Science Platform
  • Graph Machine Learning at Oracle
  • Graph Support in the Oracle Database
  • Machine Learning and Data Analysis Techniques for Domain Global Graphs
  • Machine Learning for Optimizing Oracle Database Performance
  • Machine Learning Processing in DB Systems
  • Oracle Database Multilingual Engine - Modern Programming Languages in the Database

If you are interested in more than one of these areas, it is sufficient to apply once. In our interview process, we are going to take all your areas of interest into account