Date Posted
19 May 2024

Visit website

PhD Project
IBM Center for Advanced Studies (Atlantic)

PhD Positions in Programming Language Runtimes

19 May 2024

NOTE: this position listing has expired and may no longer be relevant!

Position Description

1 Position I: Python on OMR

The candidate will explore the benefits and challenges of using OMR[1]
components (e.g. JIT, GC) in Python runtimes. This may involve
extending OMR in novel ways to better support Python, or vice-versa.
If questions like how to balance fast startup time for scripting
applications against good performance for compute-intensive workloads
sound interesting, this might an opportunity for you.

2 Position II: Python and PGAS

The candidate will implement support for parallel programming with
Python, using the PGAS[2] (parallel global address space) model. The
PGAS model can significantly simplify the implementation of parallel
algorithms on distributed and shared memory computers. Challenges
include enabling parallelism while dealing with Python’s Global
Interpreter Lock (GIL), and implementing distributed garbage
collection efficiently.

3 Qualifications

Normally applicants to the Computer Science PhD program at UNB require
a Master’s degree in computer science or a closely related area. This
project will require substantial hands-on and experimental work, and
being comfortable with Python and C++. Familiarity with Linux and
Open Source Software development would be a plus. For position I,
exposure to programming language concepts like GC, JIT, and bytecode
would be helpful. For position II, experience with parallel
programming frameworks and/or languages such as MPI, OpenMP, X10 is an

4 Environment

This project is supported by the IBM Centre for Advanced Studies
(Atlantic) at the University of New Brunswick [3]. We have a lively
group of students, postdocs, and research assistants working on
related problems. Students work closely with both UNB researchers and
technical experts from IBM, gaining valuable perspective and

5 Support

These positions are “fully funded”; the exact funding package is
subject to finalization but will be consistent with other fully funded
students in Computer Science at UNB. You can find some information
about expenses on the UNB web site[4].


[1] []

[2] []

[3] []


How to Apply

Send your resumé and unofficial transcripts by email to Stephen MacKay Please specify which position(s) you are interested in.

Position Category: Mathematical & Physical Sciences. Position Type: PhD Project. Position Tags: python, jit, gc, omr, and pgas. Salary: €10'000 - €20'000.