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 | 990 total (4 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] |