About Me
I am a Ph.D. student at the IT University of Copenhagen, Denmark. My research focus is on Resource-Aware Data Systems, developing mechanisms for improving the utilization and efficiency of the underlying hardware infrastructures.
I obtained a Master's degree in Computer Architecture from the Sharif University of Technology, Tehran, Iran. During my Master's, I conducted extensive research on designing and implementing an energy efficient design for on-chip memories of GPUs, which resulted in two submissions.
My primary field of interest is Computer Architecture, particularly GPUs, parallel computing systems, energy-efficient designs, and heterogeneous systems. Also, I am perfectly eager to contribute to work on hardware accelerators, especially for Machine Learning and Deep Learning applications.
My resume can be downloaded from here.
Education
IT University of Copenhagen
Copenhagen, Denmark
November 2021 - Present
Doctor of Philosophy (Ph.D.)
Currently, I am a Ph.D. student working on Resource-Aware Data Systems under Prof. Pınar Tözün's supervison.
The focus is on developing mechanisms for higher utilization and efficiency of underlying hardware infrastructures for Data-Science, especially for Deep Learning applications.
Sharif University of Technology
Tehran, Iran
September 2016 - September 2018
Masters of Sciences (M.Sc.)
Working under supervision of Prof. Hamid Sarbazi-Azad. The focus of my research has been to introduce an energy efficeint on-chip memories design with negligible performance overhead for GPUs. I proposed and implemented an Unified on-chip memory for shared and global accesses that increases on-chip resources utilization by on-chip resources dynamic management. I implemented and analyzed proposed designs using simulators such as GPGPU-Sim, and self-written C and Python codes. This work resulted in two consecutive submissions. Also, I contributed to another work on developing a mechanism for providing higher utilization of GPUs on-chip resources.
GPA: 17.20/ 20
University of Tabriz
Tabriz, Iran
September 2012 - June 2016
Bachelor of Sciences (B.Sc.)
During my bachelor's, my main focus was on learning and understanding the basics of computer science through taking courses and conducting extensive self-study.
GPA: 18.42/ 20
Honors and Rewards
⬗ Ranked 1st in terms of cumulative GPA (18.42) among 50 Computer Hardware Engineering Students
⬗ Admitted to the M.Sc. program at Sharif University of Technology as an Exceptional Talented Student
Research Experience
IT University of Copenhagen
November 2021 - Present
Working under Prof. Pınar Tözün's supervison in Data-Intensive Systems and Applications (DASYA) research team.
I work on designing and developing mechanisms for higher utilization and efficiency of commodity hardware (CPU-GPU) for Data-Sciene applications, especially Deep Learning applications.
Sharif University of Technology
September 2016 - August 2019 | September 2020 - February 2021
Working under Prof. Hamid Sarbazi-Azad's supervision in High-Performance Computing Architectures & Networks (HPCAN) research team.
I worked on an energy efficeint on-chip memory design with negligible performance overhead for GPUs. The proposed and implemented mechanism was an Unified on-chip memory for shared and global accesses that increases on-chip resources utilization by on-chip resources dynamic management. I implemented and analyzed proposed designs using simulators such as GPGPU-Sim, and self-written C++ and Python codes. For studying the behavior of shared memory accesses, generated address by the simulator traced and fed to the self-written C++ and Python codes. Then, based on the observations, the source code of the GPGPU-Sim simulator manipulated to reflect the proposed architecture. This work resulted in two consecutive submissions. Also, I contributed to another work on developing a mechanism for providing higher utilization of GPUs on-chip resources.
Skills
Programming
Intel x86 and MIPS Assembly C/C++ CUDA Java Python MATLAB HTML CSS PHP
Frameworks
Keras PyTorch TensorFlow Laravel
Simulation
Altera Quartus II Mentor Modelsim Proteus Design Suite GPGPU-Sim Synopsys Hspice
HDLs
Verilog
Teaching and Supervision Experience
IT University of Copenhagen
Supervision
Project | Role | Co-Supervisor | Semester | Level | Student | Status |
---|---|---|---|---|---|---|
Intelligent GPU Utilization Prediction | Co-Supervisor | Prof. Pınar Tözün | Fall 2022/ Spring 2023 | M.Sc. | Hans Kristian Krogshede | In Progress |
Teaching and Teaching Assistant
Course | Role | Instructor | Semester |
---|---|---|---|
Advanced Data Intensive Systems | Teacher | Prof. Pınar Tözün | Fall 2022 |
Deep Learning: A Computational Efficiency Perspective | Teaching Assistant | Prof. Pınar Tözün | Spring 2022 |
Sharif University of Technology
Course | Role | Instructor | Semester |
---|---|---|---|
Microprocessor Laboratory | Head Teaching Assistant | Prof. Amir-Hossein Jahangir | Spring 2018, Summer 2018 |
Computer Architecture Laboratory | Head Teaching Assistant | Prof. Amir-Hossein Jahangir | Spring 2018, Summer 2018 |
Computer Architecture | Head Teaching Assistant | Prof. Amir-Hossein Jahangir | Spring 2018 |
Microprocessor Laboratory | Head Teaching Assistant | Prof. Hamid Sarbazi-Azad | Fall 2017 |
Computer Architecture Laboratory | Head Teaching Assistant | Prof. Hamid Sarbazi-Azad | Summer 2017 |
University of Tabriz
Course | Role | Instructor | Semester |
---|---|---|---|
Logic Circuit Design | Teaching Assistant | Prof. Mina Zolfy | Spring 2016 |
Fundamentals of Programming Tutor
Course | Role | Date |
---|---|---|
Fundamentals of Programming with C | Tutor | Spring 2018, Summer 2018 |
Projects
⬗ Unified On-chip Memory for Shared and L1 Cache Accesses for GPUs
– For my master's thesis, I implemented a unified on-chip memory to serve both the shared memory and level one data cache accesses. I logged the addresses generated by the GPGPUSim simulator, and then I fed them to my self-written Python script to study their locality, liveness, and read-after-write frequency charactersitics. Then, based on the observations, the proposed mechanism was implemented by manipulating the GPGPU-Sim simulator.
⬗ Cache with different Configs
– I implemented direct-mapped and set-associative cache for my advanced computer architecture course. Then, I did experiments on it to observe the effects of different policies on hit/ miss rate. It is accessible on my Github page with this link.
⬗ Morris Mano's Basic Computer
– During my bachelor's computer architecture course, I designed and implemented a basic computer (called Mano's basic computer) in the Quartus II Schematics. Then when I was doing my master's, and I was a computer architecture course's TA, I implemented this basic computer in Verilog HDL with more details once more, the GitHub link.
⬗ Python Basics, Data Structures and Algorithms, Parallel Programming with GPUs etc. Tutorials on Github
– In my free time,I work on preparing tutorials for those who want to learn fast and easily. You can check them out on my GitHub page.
⬗ Web Development Projects
– I worked as a back-end developer in several web development teams. I was preparing queries to the databases to get out the wanted data for the designed forms by the front-end team. Additionally, I was responsible for providing APIs to send the needed data to the mobile programmers. Also, I contributed to a URL Shortener on GitHub. I developed an API in Go programming language to ease the job of people who want to write API endpoints in Go, and they don't know how and where to start.
⬗ Design and Implementation of An Efficient Archiving System and some other automation systems in MS
– During my conscription, I designed, implemented, and organized an efficient archiving system in Excel with VBA regarding the documents type and their transactions. Before my system, most of the work was done manually, by automizing the processes, the working crew had more free time.
Talks
⬗ Overprovisioning GPUs in the age of AI
Courses: Large Scale Data Analysis - November 2022
– This talk is prepared for computer science master students at the ITU. It reviews machine learning, deep learning and GPUs as the mainstream processors for deep learning training, then the underuitlizatoin challenge of GPUs is discussed and three ways of workload collocation for Nvidia GPUs (multi-stream, MPS, MIG) are discussed.
⬗ Processors
Courses: Large Scale Data Analysis - April 2022/ Big Data Management - November 2022
– This talk is prepared for Data Science bachelor students at the ITU. It reviews computing, processor, transformation hierarchy, tradeoffs of different processors, CPU (simple in-order processor, cache hierarchy, pipelining), GPU, FPGA, Accelerator. A recorded version of the talk can be accessed by this link.
⬗ GPU Efficiency throguh Intelligent Collocation
6th International Summer School on Resource-Aware Machine Learning (REAML 2022) - September 2022
This poster was prepared for presenting the undergoing work in the students' corner of the TU Dortmund's summer school. It discusses the underutilization problem of GPUs, especially for deep learning training tasks, the causes of the problem, available collocation options and their performance comparison, and finally next steps. The link to the poster's file.
Language Skills
English
Fluent
Taken Test | Date | Reading | Listening | Speaking | Writing | Overall |
---|---|---|---|---|---|---|
TOEFL | July 10, 2021 | 26 | 26 | 24 | 24 | 100 |
Persian
Native
Azeri
Mother Tongue
Turkish
Fluent
Danish
Basic
My Interests
⬗ Self-Learning
– I enjoy learning through selfs-studying and earning new skills. This helps me to feel more confident and better about myself and my life. In my leisure times, I usually watch tutorial videos on Youtube, Udacity etc. What I know about programming, web development, Git, Linux etc. , I learned totally all of them through self-studying and googling.
⬗ Reading
– I cannot get enough of reading novels. My favorite authors are Anton Chekhov, Fyodor Dostoevsky, Mitch Albom, Orhan Pamuk, George Orwell, Albert Camus, and Abbas Maroufi. Some of the books that I liked them:
– The Red-Haired Woman, by Orhan Pamuk
– Nineteen Eighty-Four (1984), by George Orwell
– Animal Farms, by George Orwell
– The Duel, by Anton Chekhov
– Three Years, by Anton Chekhov
– The Huntsman, by Anton Chekhov
– The Gambler, by Fyodor Dostoevsky
– White Nights, by Fyodor Dostoevsky
– Symphony of the Dead, by Abbas Maroufi
– The Five People You meet in Heaven, by Mitch Albom
– Tuesdays with Morrie, by Mitch Albom
– For one day more, by Mitch Albom
– The Stranger, by Albert Camus
– The Comfort Book, by Matt Haig