Are you interested in building the next-generation of efficient and fast computing systems using cutting-edge storage and networking technologies? Do you like building real distributed systems and evaluate them at scale? Do you want to work with ambitious colleagues working at the intersection of storage technologies, machine learning, and high-performance distributed systems in the exciting city of Amsterdam? Then we are eager to get to know you. Please apply for this PhD position at Vrije Universiteit Amsterdam (VU).
FTE: 0,8 – 1
Research ThemesStorage systems are a critical part of the computing systems and services. Historically, disk capacity and packaging densities have improved rapidly over time, while bandwidths and access latencies lagged behind. Since the mid-2000s, we have witnessed the rise of storage based on Non-Volatile Memory (NVM). NVM storage technologies such as Flash or Optane can nowadays support commodity, mass-storage computing with up to 10s of GB/s of bandwidth, single digit microseconds of access latencies, and millions of operations/s, rivalling DRAM speeds. These innovations represent a fundamental shift in the computing hardware and storage architecture, towards the development of a unified memory and storage technology. Not only has the performance improved significantly, but the devices themselves have gained capabilities to support multiple higher-level software features such as new hardware interfaces, programmability, scheduling, virtualization, security, and efficient data management. The rise of Non-Volatile Memory (NVM) storage devices is one of the most fundamental changes in the storage systems since the advent of Hard-disk drives (HDDs) back in the 1960s.
Looking forward, the grand challenge in storage systems is to combine heterogeneous storage layers, leveraging their programmability and capabilities to deliver a new class of cost, data, and performance efficiency for all kinds of applications. In this context, this PhD position is funded to explore how to design and implement application-specific distributed storage services using modern storage and networking devices. The application-specific customization can be in the context of underlying data structures, policies, scheduling mechanisms, and/or custom code execution in the storage stack. In this work you are to explore questions like how to capture workload customization requirements, can we do storage stack specialization to support specific workloads and access patterns, how do you deliver predictable performance with shared network and storage devices, how to do automatically synthesize placement and scheduling policies, what are the performance, cost, and energy advantages and disadvantages of using NVM storage for a distributed workloads, etc. In the process of answering these questions you will design and implement an application-customizable, specialized distributed storage service. We will use open storage interfaces like OpenChannel and Zoned SSD devices and modern high-performance networks like RDMA.
We are a part of the Computer Systems (CompSys) group, https://www.vucompsys.net/, at the Computer Science Department at VU Amsterdam which has a long history of doing world-class systems research. We have an on-going collaboration with many industrial and academic partners.
- Analyze the literature on storage systems, distributed systems and systems support for application-specific storage stacks with fast NVM storage and high-speed network APIs
- Design and implementation of a distributed, shared storage service to efficiently support workloads like large-model ML training and its integration with a distributed ML framework
- Distributed systems building, implementation, and conducting reproducible research following state-of-the-art reproducibility guidelines (additional help available)
- Teaching responsibilities include support running pertinent courses (e.g., storage systems and advanced computer programing courses, see here: https://animeshtrivedi.github.io/2020-anp-slides and https://animeshtrivedi.github.io/2020-stosys-slides/) and supervising Bsc and MSc thesis works in the scope of these ideas
- A Master’s degree in Computer Science, Computational Science or related field
- Excellent programming skills (e.g., C/C++, Python, Rust, Go)
- Strong collaboration and communication skills. The principal language of the group is English (fluent written and spoken English skills are required)
- [Optional Plus] Background in low-level systems programming and projects related to operating systems, kernel programming, file systems, networks, storage, GPU programming, etc.
- [Optional Plus] Experience with machine learning frameworks like PyTorch and TensorFlow
WHAT ARE WE OFFERING?
A challenging position in a socially involved organization. The salary will be in accordance with university regulations for academic personnel and amounts €2,395 (PhD) per month during the first year and increases to €3,061 (PhD) per month during the fourth year, based on a full-time employment. The job profile: promovendus: is based on the university job ranking system and is vacant for at least 0.8 FTE.
We especially encourage female applicants. In the case of equal suitability of candidates, preference will be given to a female candidate.
The appointment will initially be for 1 year. After a satisfactory evaluation of the initial appointment, the contract will be extended for a duration of 3 years. The starting date is flexible, but preferred date is December 1st, 2021.
Additionally, Vrije Universiteit Amsterdam offers excellent fringe benefits and various schemes and regulations to promote a good work/life balance, such as:
- a maximum of 41 days of annual leave based on full-time employment
- 8% holiday allowance and
- 8.3% end-of-year bonus
- solid pension scheme (ABP)
- contribution to commuting expenses
- optional model for designing a personalized benefits package
ABOUT VRIJE UNIVERSITEIT AMSTERDAM
The ambition of Vrije Universiteit Amsterdam is clear: to contribute to a better world through outstanding education and ground-breaking research. We strive to be a university where personal development and commitment to society play a leading role. A university where people from different disciplines and backgrounds collaborate to achieve innovations and to generate new knowledge. Our teaching and research encompass the entire spectrum of academic endeavor – from the humanities, the social sciences and the natural sciences through to the life sciences and the medical sciences.
Vrije Universiteit Amsterdam is home to more than 26,000 students. We employ over 4,600 individuals. The VU campus is easily accessible and located in the heart of Amsterdam’s Zuidas district, a truly inspiring environment for teaching and research.