nvvm: FFI bindings to NVVM

[ bsd3, foreign, library ] [ Propose Tags ]

The NVVM library compiles NVVM IR (a subset of LLVM IR) into PTX code which can then be executed on NVIDIA GPUs. In contrast to the standard NVPTX target built in to the LLVM toolchain, NVVM includes a set of proprietary optimisations which are otherwise only available by compiling CUDA code with the nvcc compiler.

The resulting PTX code can be loaded onto the GPU and executed using the cuda package:

https://hackage.haskell.org/package/cuda

The NVVM library is a compiler component available a part of the CUDA toolkit:

https://developer.nvidia.com/cuda-toolkit

The configure step will look for your CUDA installation in the standard places, and if the nvcc compiler is found in your PATH, relative to that.

This package tested with version 7.5 of the CUDA toolkit.


[Skip to Readme]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.7.5.0, 0.7.5.1, 0.7.5.2, 0.8.0.0, 0.8.0.1, 0.8.0.2, 0.8.0.3, 0.9.0.0, 0.10.0.0, 0.10.0.1
Change log CHANGELOG.md
Dependencies base (>=4.6 && <5), bytestring, cuda (>=0.7), template-haskell [details]
License BSD-3-Clause
Copyright [2016] Trevor L. McDonell
Author Trevor L. McDonell
Maintainer Trevor L. McDonell <tmcdonell@cse.unsw.edu.au>
Revised Revision 1 made by TrevorMcDonell at 2017-04-10T06:02:41Z
Category Foreign
Home page https://github.com/tmcdonell/nvvm
Source repo this: git clone https://github.com/tmcdonell/nvvm(tag 0.7.5.1)
Uploaded by TrevorMcDonell at 2016-11-08T04:04:02Z
Distributions LTSHaskell:0.10.0.1, Stackage:0.10.0.1
Reverse Dependencies 2 direct, 6 indirect [details]
Downloads 6207 total (39 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for nvvm-0.7.5.1

[back to package description]

Haskell FFI Bindings to NVVM

Build status

The NVVM library compiles NVVM IR (a subset of LLVM IR) into PTX code which can then be executed on NVIDIA GPUs.

In contrast to the standard NVPTX target built in to the LLVM toolchain, NVVM includes a set of proprietary optimisations which are otherwise only available by compiling CUDA code with the nvcc compiler. On the other hand, the version of LLVM that NVVM is internally based on typically lags the public release by several generations (years), so these secret optimisations may or may not be worthwhile to your application.

The resulting PTX code can be loaded onto the GPU and executed using the cuda package.

The NVVM library is a compiler component available a part of the CUDA toolkit:

https://developer.nvidia.com/cuda-toolkit

The configure step will look for your CUDA installation in the standard places, and if the nvcc compiler is found in your PATH, relative to that.