This is your work, valued

Santa Monica, CA

Kareem Omar

Elite
@komrad36

Speaks assembly, will travel.

CRC. Fastest CRC32 for x86, Intel and AMD, + comprehensive derivation and discussion of various approaches

353

RGB2Y. Fastest CPU (AVX/SSE) RGB to grayscale: 2-4x faster than OpenCV. For image processing/computer vision.

92

KFAST. Implementation of FAST feature detector for computer vision (Rosten 2006) using AVX2 to outperform canonical implementation by up to 600%.

84

SortingNetworks. Fastest CPU SIMD (SSE4) sorting networks for small integer arrays (2-6 elements), also optimal amd64 assembly and notes on getting compilers to generate optimal sorting networks.

52

FastArrayOps. Extremely fast x86 / AVX2 assembly implementations of common operations for linear arrays: checking whether array contains element, finding index of element, finding min/max element, finding index of min/max element.

42

KORAL. Novel extreme-performance CPU-GPU cooperative feature detector-descriptor for computer vision.

39

LATCH. Fastest CPU implementation of the LATCH 512-bit binary feature descriptor; fully scale- and rotation-invariant

36

CLATCH. Insanely fast CUDA LATCH: fully scale- and rotation-invariant 512-bit binary descriptor for computer vision

34

FastDivide. Divide 64-bit integers faster than hardware. Or precompute for a given denom and quickly divide repeatedly.

32

CUDAKfNN. Fastest CUDA SIFT or other 128-float vector matcher for computer vision

28

KPS. Infrastructure for simultaneous orbital and attitude propagation, with attitude-based real-time analytical aerodynamics simulation

24

KLERP. Fastest CPU (AVX2) Bilinear and Nearest-Neighbor Interpolation: 25-100% faster than OpenCV. For computer vision / image processing.

23

KNES. Complete, lightweight NES emulator in C++, speedcoded in 3 days.

17

CUDAK2NN. Insanely fast CUDA 2NN 512-bit binary descriptor matcher for computer vision

16

CUDARGB2Y. Fastest CUDA RGB to grayscale: 5-30x faster than OpenCV. For image processing/computer vision.

16

KfNN. Fastest CPU (AVX/SSE) SIFT or other 128-float vector matcher for computer vision

14

CUDALERP. Fast CUDA (GPU) Bilinear and Nearest-Neighbor Interpolation at high accuracy - uint8_t data

14

CUDAHammingMean. Fastest GPU implementation of a brute-force Hamming-weight matrix sum/mean for 512-bit binary descriptors.

13

FastIntegerSqrt. Fastest implementations of 32-bit and 64-bit integer square roots for x86-64

12

BoxBlur. Fastest CPU (AVX/SSE) Horizontal Box Blur for image processing and computer vision

12

CUDAFLERP. Fast CUDA (GPU) Bilinear and Nearest-Neighbor Interpolation at high accuracy - float32 data

11

popcount. Fastest possible x86 implementation of popcount/population count/Hamming weight/counting set bits

11

K2NN. Fast bruteforce and Multi-Index Hash (MIH) accelerated 2NN matchers for 512-bit binary descriptors for computer vision

11

FastThreadPool. Fast lock-free thread pool

10

BitOps. Basic, efficient, header-only bit ops and bit array primitives for modern x86. Tests provided.

10

ULATCH. Fastest CPU implementation of the LATCH 512-bit binary feature descriptor for computer vision (upright)

10

EllipticCurveFactorization. Fast, single-file, MIT-licensed large integer factorization using ECM combined with other techniques.

9

FeatureAngle. Extremely fast SSE gradient (angle of rotation) computation of grayscale features in an image, for image processing and computer vision.

9

UCLATCH. Insanely fast CUDA LATCH 512-bit binary descriptor for computer vision (upright)

9

ModularSqrt. Fast modular square root of primes and prime powers, including 2. Interface uses GMP bigints.

8

PrimeSieve. Super fast, dynamically expanding prime sieve for primality queries, forward or backward iteration

8

ArduinoPhysics. Realtime 2D physics and collision detection on an Arduino with 60 fps output to a Sharp memory LCD.

7

MemoryOrder. Demos of 3 ways even the strong memory model of x86 can exhibit architectural memory reordering, leading to bugs

7

UnsignedIntegralToFloatingPoint. Notes on fast standards-compliant conversion of U32/U64 to and from float/double, which compilers do not get right.

7

MATLAB-KDrag. Orbital and attitude propagator with B-dot and *dynamic* aerodynamic drag simulation, including torque computation for aero-stabilized bodies.

7

CUDAKfNN_packed. Fastest CUDA SIFT or other 128-float *packed as uint8_t* vector matcher for computer vision

6

Factorization-Primality. Extremely fast, single-file factorization and primality testing for 32-bit and 64-bit integers on x86.

6

PyCruiseControl. Modified divorced PID controller applied to car cruise control and accompanying physics simulation and visualizations

5

SolveModularQuadratic. Generate all solutions to a modular quadratic equation. Supports any modulus. Interface uses GMP bigints.

5

CudaBoids. Numerical simulation of flocking behavior using CUDA and OpenGL

4

U128. Fast unsigned 128-bit integer class for MSVC since it doesn't natively support __uint128_t yet

4

Leftpack. Fast AVX2 leftpack/compress implementations (keep and contiguously pack a subset of elements)

4

Sudoku. Fast sudoku solver with detection of no solution/single solution/multiple solutions/invalid initial board

4

KFAST_OpenMVG. Custom version of KFAST for integration into OpenMVG

4

FastDivide128. Getting __udivti3 or __umodti3 errors? Just want faster division/modulo for 128-bit ints on Clang? Look no further.

4

MATLABCruiseControl. Modified divorced PID controller applied to car cruise control and accompanying physics simulation and visualizations - MATLAB port

3

SMC-Demo. Minimal demo of self-modifying code on Windows. Still doable, still useful.

3

Bheap. Lightweight binary heap that greatly outperforms std::priority_queue and other commonly available heap implementations

3

KHALF. Optimized special-case bilinear interpolation, halving the width and not changing the height, for computer vision dual-frame display.

3

smart_tm. a smart, leap-second- and leap-day-aware, fast, 64-bit-capable replacement for the ctime 'tm' struct

3

SingleLinePythonSudoku. Single-line Python Sudoku solver

2

Boids_SDL. Numerical simulation of flocking behavior using pure CPU and SDL.

2

Schematic. Basic toy Lisp interpreter in a few hundred lines of C++.

2

SimpleOrbitalPropagator. Super super simple MATLAB orbital propagator in just a few lines. Experiment with orbits!

1