Projects
Here are some of my projects. You can click on the 'GitHub' button to view the code, or click on the 'YouTube' button to watch a video related to the project.
Projects under Special Problem (ECE 8903)
Approximate Computing
February 2015 - April 2015
Programming Language: HTML, CSS, JavaScript, Python, Java
Description:
Currently working on a semester long research project under Prof. Hadi Esmaeilzadeh which involves designing a web
based interactive game
Consensus-oriented game system which is designed using 'HTML, CSS and JavaScript' collects general public's opinions
regarding how much error is acceptable for a given application
Sobel-filtered images are generated using 'Java' and database is maintained in 'Heroku', a cloud platform using 'Python'
Play Game
GitHub
Project Report
Projects under Advanced Programming Techniques (ECE 8893)
VIDEO
MandelBrot Set Display
November 2014 - December 2014
Programming Language: C++
Application Software: CUDA, OpenGL
Description:
Computed and displayed a visual image of the Mandelbrot Set
Used OpenGL graphics API, and the CUDA GPU programming environment
YouTube
Project Statement
VIDEO
OpenGL Jet
November 2014
Programming Language: C++
Application Software: OpenGL
Description:
Used the OpenGL graphics API to create and display a three-dimensional image of a jet aircraft
Used keyboard input to control rotation, scaling, and lighting of the jet
YouTube
Project Statement
RSA Algorithm
October 2014
Programming Language: C++
Description:
Implemented the RSA public-key encryption algorithm using the GNU multi-precision arithmetic library
Generated public/private key pairs, random messages, encrypted the random message with the public key, decrypted the
random message with the private key
Verified that the decrypted message matches the original message
Cracked the RSA algorithm by Factorization method
Project Statement
Templated Vector
October 2014
Programming Language: C++
Description:
Implemented a templated class called Vector, which is a variable length array
Implemented an iterator called VectorIterator, which is used to point to an existing element in the Vector
Project Statement
2D DFT using POSIX Threads
September 2014
Programming Language: C++
Description:
Computes a 2D Discrete Fourier Transform of a given input image, by computing 1D transforms on eacy row, followed by the 1D transforms on each column
Implemented much efficient Danielson-Lanczos approach for the 1D transforms
Used 16 threads to perform 1D transforms
Project Statement
2D DFT using MPI
September 2014
Programming Language: C++
Description:
Reduced computation time of 2D DFT by using multiple CPUs in a cluster
Implemented distributed computing by using Message Passing Interface (MPI)
Project Statement
Projects under Advanced Computer Architecture (ECE 6100)
Cache Coherence
November 2014 - December 2014
Programming Language: C++
Description:
Designed a simulator that maintains coherent caches for 4, 8 and 16 core CMP
Implemented MSI, MESI, MOSI, MOESI and MOESIF protocols for a bus-based broadcast system
Project Report
Superscalar Processor using Tomasulo Algorithm
November 2014
Programming Language: C++, Python
Description:
Designed a simulator for an out-of-order Superscalar processor that uses Tomasulo Algorithm
Wrote a Python script to vary parameters like Fetch Rate, number of Result Buses, number of Function Units to find the optimum combination that processes maximum IPC against minimum hardware cost
Project Report
Cache Simulator
September 2014 - October 2014
Programming Language: C++, Python
Description:
Designed a parametric cache simulator with Write-Back Write-Allocate policy and LRU eviction
Implemented victim cache and stride prefetching
Wrote a Python script to vary and optimize Cache parameters to obtain a suitable minimal Average Access Time
Project Report
Projects under University of Mumbai
VIDEO
Wireless Diagnostic System
April 2014
Programming Language: Android, Embedded C
Application Software: Eclipse IDE, MikroC Pro
Course: Final Year Project
Description:
Measured patient's body temperature and heart pulse using appropriate sensors
Developed Android App to enter, store and send health parameters
YouTube
Project Report
Wireless Display using ZigBee
Wireless Display using ZigBee
January 2013
Programming Language: C, Embedded C
Application Software: MATLAB
Course: Tech Expo
Description:
Developed a Wireless notice board which displays messages when sent from the PC
Used XBee explorer to receive data from the PC and send it to ATMEGA16
Display the messages on the Graphic LCD
Intelligent Transhosp Medibot
Intelligent Transhosp Medibot
October 2012
Programming Language: C
Application Software:
Course: Electronic Hardware Workshop
Description:
Improvised line follower robot so that it can meet the needs of a hospital
Implemented line following, obstacle avoiding, and automated transporting
Line follower robot can be used in hospital to transport medicines, linens and to dispose waste