GSoC 2025 Project #40 :: GPU CUDA :: Expanding GPU Acceleration in Neuroimaging Tools Beyond CUDA (350 h)

Several popular neuroimaging tools leverage graphics cards to accelerate image processing. However, many of these tools are restricted to NVidia GPUs that support CUDA, limiting accessibility to a broader range of hardware. Our goal is to extend hardware compatibility by porting FSL’s Bedpostx, Eddy, and Probtrackx from CUDA to oneAPI, enabling these tools to run on GPUs from multiple manufacturers. This transition will enhance flexibility and ensure that more researchers can benefit from GPU acceleration regardless of their hardware setup.

As a reach goal, we will explore expanding hardware support for popular Python-based AI neuroimaging models. We have already demonstrated that the nobrainer brainchop AI models can run on web technologies such as ONNX (WebGPU), TensorFlowJS (WebGL2), and TinyGrad (WebGPU). Building on this work, we will investigate whether command-line tools can support additional backends beyond CUDA, further democratizing access to high-performance neuroimaging computations.

Project repository: GPU_test evaluates GPU versus CPU performance for Bedpostx, Eddy and Probtrackx GitHub - neurolabusc/gpu_test: Test FSL GPU acceleration (bedpost, eddy, probtrackx)

Skill level: Advanced

Required skills: C++; familiarity with neuroimaging tools (FSL) and GPU languages (CUDA, OpenCL, oneAPI, SYCL would be beneficial

Time commitment: Full-time (350 h)

Lead mentors: Chris Rorden crorden6@gmail.com, John Melonakos (ArrayFire/Intel)

Tech keywords: CUDA, C++, oneAPI, GPU, FSL

Hmm… look interesting

@Anuj_tripathi if you are interested consider:

  • Our team is currently following the selecting-a-student guide, with an emphasis on Tips for finding the “right” GSoC contributor. Therefore, I would suggest each potential contributor provide a concrete plan for our project (what packages would you use) as well as details on their experience (e.g. a CV and GitLab/GitHub profile that allows us to evaluation prior contributions with distributed teams). Feel free to send me your plans and experience details to my instittutional email if you would rather not share your plan with other potential competitors. Atlernatively, if you want to ask questions publicly, this neurostars thread is the best location. Once we see your proposed solution for our problem we can provide you rapid feedback for and start a personalize chat to determine your match for this project.