Mini Projects
Each mini project has a clear set of goals. Explore and understand different concepts practically while working towards achieving those goals.
GPU Accelerated Matrix Multiplication
GitHub - tgautam03/xGeMM: Accelerated General (FP32) Matrix Multiplication
Accelerated General (FP32) Matrix Multiplication. Contribute to tgautam03/xGeMM development by creating an account on GitHub.
Goal: Code matrix multiplication from scratch and (try to) match the performance of cuBLAS SGeMM.
Read more
Mini Project: GPU Accelerated Matrix Multiplication (almost) like cuBLAS
Learn CUDA C/C++ basics by working on a single application: matrix multiplication. To make things interesting, let us try to match the performance of NVIDIA cuBLAS.
GPU Accelerated Image Filters
GitHub - tgautam03/xFilters: GPU accelerated filters for high resolution images.
GPU accelerated filters for high resolution images. - tgautam03/xFilters
Goal: Code 2D convolution from scratch in CUDA C/C++ and use that to apply filters to high-resolution images.
Read more
Mini Project: GPU Accelerated Image Filters using Convolution
Apply filters to high-resolution images using 2D convolution on a GPU. Along the way, learn about caches and using constant, shared, and pinned memory.

Earthquake Simulation
GitHub - tgautam03/earthquake.cpp: 3D earthquake wave simulation
3D earthquake wave simulation. Contribute to tgautam03/earthquake.cpp development by creating an account on GitHub.
Goal: Generate 3D earthquake wave simulation by solving the wave equation using finite difference methods from scratch in C++.
Read more
Mini Project: 3D Earthquake Simulation
GitHub - tgautam03/earthquake.cpp: 3D earthquake wave simulation3D earthquake wave simulation. Contribute to tgautam03/earthquake.cpp development by creating an account on GitHub.GitHubtgautam03 Earthquakes are unpredictable and can be extremely dangerous. Knowing how the surface will respond in an earthquake is extremely important if we want to protect