primitive-simd: SIMD data types and functions
This package provides a lifted version of the SIMD data types and instructions from ghc-prim.
The implementation is based on type families to provide a
uniform interface to all different vector types. Instances
for numeric operations, Prim
, Storable
and unboxed vector
instances are provided.
Although not all processors support 256 or 512-bit vectors this package provides a uniform interface. Vectors which are bigger than supported are modeled by combining smaller vectors. If the same code is compiled on a computer supporting larger vectors the smaller vectors are replaced by larger vectors.
Note: This package needs to be compiled with LLVM as the NCG does not know how to deal with SIMD-instructions. If LLVM is not available, use -f no-vec to disable the use of SIMD instructions. While this will give you no speedup, it will work with plain Haskell (and should even work with GHCJS).
Flags
Manual Flags
Name | Description | Default |
---|---|---|
no-vec | Disable all vector hardware instructions. Your code will run on all hardware but also be a lot slower. | Disabled |
vec256 | Enable 256-bit vector hardware instructions. Your code will only run if your CPU supports 256-bit vector instructions. | Disabled |
vec512 | Enable 512-bit vector hardware instructions. Your code will only run if your CPU supports 512-bit vector instructions. | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- primitive-simd-0.1.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.1.0.0 |
---|---|
Dependencies | base (>=4.7 && <5), ghc-prim (>=0.3.1), primitive (>=0.5), vector (>=0.10) [details] |
License | BSD-3-Clause |
Copyright | (c) 2015 Anselm Jonas Scholl |
Author | Anselm Jonas Scholl |
Maintainer | anselm.scholl@tu-harburg.de |
Category | Data |
Source repo | head: git clone git://github.com/ajscholl/primitive-simd.git |
Uploaded | by JonasScholl at 2016-02-01T22:37:38Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Downloads | 966 total (1 in the last 30 days) |
Rating | 2.0 (votes: 1) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user Build status unknown [no reports yet] |