Nima Mahmoudi

Nima Mahmoudi

PhD Student, Research Assistant, and Instructor

University of Alberta

York University

Seneca College


Nima Mahmoudi received the BS degrees in Electronics and Telecommunications and the MS degree in Digital Electronics from Amirkabir University of Technology, Tehran, Iran in 2014, 2016, and 2017 respectively. He is currently working towards the PhD degree in software engineering and intelligent systems at the University of Alberta, Edmonton, AB, Canada.

He is a Research Assistant at the University of Alberta and a visiting Research Assistant in the Performant and Available Computing Systems (PACS) lab at York University, Toronto, ON, Canada. His research interests include serverless computing, cloud computing, performance modelling, applied machine learning, and distributed systems. He is a student member of the IEEE.


  • Serverless Computing
  • Cloud Computing
  • Performance Modelling
  • Applied Machine Learning
  • Distributed Systems


  • MSc in Digital Electronics, 2017

    Amirkabir University of Technology

  • BSc in Telecommunications, 2016

    Amirkabir University of Technology

  • BSc in Electronics, 2014

    Amirkabir University of Technology

Current Research

In our current research in Performance and Available Computing Systems (PACS) Lab at York University, we are using Queuing Theory and Semi-Markov Processes to build a performance model for serverless computing platforms, with adequate fidelity and tractability to be used for modelling large-scale deployments.

Our paper in this research called “Performance Modeling of Serverless Computing Platforms’’ is still under review. In that paper, we were able to successfully model the performance metrics of AWS Lambda. We were also able to identify a key configuration in serverless computing platforms that can be used to optimize the overall performance of the system.

Serverless Computing

In our Serverless Computing research, our goal is to characterise and optimize the serverless computing platforms, making them adaptive and improving their performance.

In a previous study in Dependable and Distributed Systems Lab (DDSL) at the University of Alberta, we used workload profiling and machine learning to build an adaptive function placement algorithm for serverless computing platforms. The resulting algorithm was able to achieve a better performance than the state of the art using similar hardware to perform the computing tasks.

Computer Vision

My latest research in Computer Vision in Signal and Speech Processing Research Lab (SPRL) was on Multi-Target Object Tracking to produce high-quality object trajectories while maintaining low computational costs in order to be applicable for live implementation (e.g., autonomous vehicles). This research led to my master’s thesis and a journal paper titled “Multi-target tracking using CNN-based features: CNNMTT’’ published in Multimedia Tools and Applications. In this work we used the mid-layer output of custom-made Convolutional Neural Networks (CNN) as visual queues which combined with formal tracjectory models created smooth and stable tracking results. The resulting method was one of the top 4 methods in MOT Challenge Benchmark at the time.

In a previous research we used computer vision in Control of Multi-Vehicle Systems (CMVS) Lab in the field of robotics. Some of the projects completed between 2012-2017 included using computer vision for controlling Unmanned Ground Vehicles (UGVs) and Quadcopters and robust hand tracking using LBP features and Kalman Filters.

Recent Publications

Optimizing Serverless Computing: Introducing an Adaptive Function Placement Algorithm

In this paper, using statistical machine learning, we design and evaluate an adaptive function placement algorithm which can be used by serverless computing platforms to optimize the performance of running functions while minimizing the operational cost.

Executability of Python Snippets in Stack Overflow

Online resources today contain an abundant amount of code snippets for documentation, collaboration, learning, and problem-solving …

Multi-target tracking using CNN-based features: CNNMTT

In this paper, we focus mainly on designing a Multi-Target Object Tracking algorithm that would produce high-quality trajectories while …