Skip to content

Instantly share code, notes, and snippets.

View itzmeanjan's full-sized avatar
😎
Working ...

Anjan Roy itzmeanjan

😎
Working ...
View GitHub Profile
@itzmeanjan
itzmeanjan / fft.cpp
Last active October 1, 2021 02:10
🤞 Parallel (inv)FFT on GPGPU, using SYCL DPC++ 🚀
#include <CL/sycl.hpp>
#include <chrono>
#include <complex>
#include <iostream>
using namespace sycl;
typedef std::complex<double> cmplx;
constexpr uint N = 1024;
constexpr uint B = 32;
@itzmeanjan
itzmeanjan / dft.cpp
Last active November 17, 2021 14:34
⭐️ Parallel DFT on GPGPU, using SYCL DPC++ 🔥
#include <CL/sycl.hpp>
#include <chrono>
#include <complex>
#include <iostream>
using namespace sycl;
typedef std::complex<double> cmplx;
constexpr uint N = 1 << 10;
constexpr uint B = 1 << 5;
@itzmeanjan
itzmeanjan / gauss_jordan.cpp
Created September 27, 2021 11:13
🔥 Solving System of Linear Equations on GPGPU, using SYCL DPC++ ( GAUSS-JORDAN Method ) 👌
#include <CL/sycl.hpp>
#include <chrono>
#include <iostream>
#include <random>
using namespace sycl;
constexpr uint N = 1024;
constexpr uint B = 32;
@itzmeanjan
itzmeanjan / mat_mul.cpp
Created September 23, 2021 11:41
✅ Large Scale Parallel Matrix Multiplication, in multiple ways, using SYCL DPC++ 😎
#include <CL/sycl.hpp>
#include <chrono>
#include <iostream>
using namespace sycl;
constexpr uint N = 1024;
constexpr uint B = 32;
int64_t multiply_matrix_matrix_v0(queue &q, const float *matrix_a,
@itzmeanjan
itzmeanjan / newton_fractal.cpp
Last active February 27, 2025 17:31
🤖 Computing Newton Fractal on GPGPU + CPU, using SYCL DPC++ 🔥
#include <CL/sycl.hpp>
#include <chrono>
#include <complex>
#include <iostream>
using namespace sycl;
typedef std::complex<double> cmplx;
constexpr uint Y = 1 << 11;
@itzmeanjan
itzmeanjan / julia_set.cpp
Last active September 19, 2021 09:45
😎 Computing Julia Set on CPU + GPGPU, using SYCL DPC++ 🚀
#include <CL/sycl.hpp>
#include <chrono>
#include <iostream>
using namespace sycl;
namespace ts = std::chrono;
constexpr uint N = 512;
constexpr uint B = 4;
@itzmeanjan
itzmeanjan / lib.rs
Last active September 17, 2021 10:50
🤖 PoC of Polygon Avail Application Client, powered by IPFS-embed ✌️
extern crate anyhow;
extern crate async_std;
extern crate ed25519_dalek;
extern crate ipfs_embed;
extern crate libipld;
extern crate rand;
extern crate spmc;
extern crate tempdir;
use anyhow::Result;
@itzmeanjan
itzmeanjan / bisection.parallel.cpp
Last active September 13, 2021 14:55
Sequential + Parallel Root Finding using Bisection Method, powered by SYCL DPC++
#include <CL/sycl.hpp>
#include <array>
#include <chrono>
#include <cmath>
#include <iostream>
using namespace sycl;
constexpr uint N = 32;
float C = powf(10.0, -5.0);
@itzmeanjan
itzmeanjan / Cargo.toml
Last active March 19, 2025 11:29
😎 Parallel Matrix Multiplication on GPU, using Rust Vulkan Compute API of `vulkano` 🚴🏼
[package]
name = "gpu-matrix-multiplication"
version = "0.1.0"
edition = "2024"
rust-version = "1.85.0"
[dependencies]
vulkano = "=0.35.1"
vulkano-shaders = "=0.35.0"
rand = "=0.8.4"
@itzmeanjan
itzmeanjan / matrix_transpose.glsl
Created August 29, 2021 07:06
😎 Computing Matrix Transpose in Parallel on GPGPU, using Vulkan Compute API 🔥
#version 450
#pragma shader_stage(compute)
layout(local_size_x = 32, local_size_y = 1, local_size_z = 1) in;
layout(set = 0, binding = 0) buffer matrix_block {
int[1024][1024] matrix;
};
void main() {