NOTE: this position listing has expired and may no longer be relevant!
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
asset.
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
experience.
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].
Footnotes
─────────
[1] [http://www.eclipse.org/omr/]
[2] [http://www.pgas.org/]
[3] [http://www.unb.ca/research/casatlantic/]
[4]
[http://www.unb.ca/fredericton/studentservices/international/new_international_student/moneymatters.html]