If you are interested in any of these projects and are a current MIT student looking for a UROP or MEng please reach out to the mentor listed next to project.
A large list of projects in scientific machine learning can be found here. Take that list as a set of ideas from which larger projects cna be chosen.
Mentor: Valentin Churavy
We have many projects for working on compiler or runtimes in the context of scientific computing, the topics below can serve as inspiration.
Caching for GPU kernel compilation
KernelAbstractions.jl provides a common interface for writing GPU kernels in Julia and executing them on multiple platforms.
Mentor: Julian Samaroo
Implement support for various ROCm libraries: rocSOLVER, rocSPARSE, MIOpen, etc.
Build ROCm libraries as JLLs
Explore integration with ROCm debugging and profiling tooling
Enzyme.jl is the Julia frontend to the Enzyme automatic-differentiation engine.
Improved JIT compilation for Enzyme
Compile on Demand / Parallel JIT
Caching of Enzyme AD results
Caching of inference results for reducing inital latency
Improvements to Julia integration with native debuggers and profilers
Better native debug-information (DWARF)
Pretty-printers for GDB
Debug-information on demand
Exploring profile-guided optimization
Feasibility study on reducing the size of an a-HfO2 dataset using a parallel method based on HDBSCAN and ACE. A parallel Julia implementation of a state of the art method will be required as well as the proposal of an improved version aligned to CESMIX objectives. Description here. Contact: Emmanuel Lujan (eljn AT mit DOT edu)