Liam F

  •        0

Basic mathematical functions implemented using AVX



Related Projects

klee-avx - avx support branch for klee

avx support branch for klee


Provides sse/avx implementation for matrix storage, access and basic operations, probability distributions and fast ziggurat random number generators.


Gibbs Ensemble Monte-Carlo with Variational Gaussian Wave-packets and SSE4/AVX/FMA4 acceleration.

flops - FLOPs counter for x86 SSE and AVX based on awesome code of Mystical:

FLOPs counter for x86 SSE and AVX based on awesome code of Mystical:

assembly.tmbundle - Assembly (x86+SSE+AVX) bundle for TextMate

Assembly (x86+SSE+AVX) bundle for TextMate


Fork of the VODie codebase by kitesurfingie from to keep patches in a single place and allow collaboration

flat assembler

Fast and efficient self-assembling 80x86 assembler for DOS/Win32/Linux; with 8086-80486/Pentium/MMX/SSE/AVX/XOP instructions support, 16-bit/32-bit/64-bit code, binary/MZ/PE/COFF/ELF output formats.

veles.simd - Distributed machine learning platform

Various mathematical routines with SIMD acceleration (SSE/AVX/NEON) in the form of a compact C library. Designed without any OS portability in mind, tested only on Linux. Can work on BSD/Darwin after some potentially minor adaptation. Supports Android build / bionic.

qemu-avx - Experimental AVX1 version of qemu

Experimental AVX1 version of qemu


JWasm is a Masm-compatible assembler. It supports 16-, 32- and 64-bit code, instructions up to AVX and various output formats. It's written in C.


a JIT assembler for x86(IA-32)/x64(AMD64, x86-64) MMX/SSE/SSE2/SSE3/SSSE3/SSE4/FPU/AVX/AVX2 by C++ header


A test code for avx instructions


a JIT assembler for x86(IA-32)/x64(AMD64, x86-64) MMX/SSE/SSE2/SSE3/SSSE3/SSE4/FPU/AVX by C++ header

despacer - C library to remove white space from strings as fast as possible

We want to remove the space (' ') and the line feeds characters ('\n', '\r') from a string as fast as possible. To avoid unnecessary allocations, we wish to do the processing in-place.Note that clang seems to give better results than gcc.

simdprune - Pruning elements in SIMD vectors (i.e., packing left elements)

Suppose that you are given an vector like 0,1,1,0,3,1,1,4 and you want to remove all 1s to get 0,0,3,4,... One way to do this is to compare the original vector with the vector 1,1,1,1,1,1,1,1 to get the mask 0b01100110 (where a 1 appears if and only if the corresponding elements are equal). We then want to pass the mask 0b01100110 and the vector 0,1,1,0,3,1,1,4 to some function that will produce a vector that begins with 0,0,3,4, skipping the 1s.The AVX-512 instruction sets offer vcompress instructions for this purpose, but other instructions sets like SSSE3 or AVX2 provide no help.