Ticket #39 (new defect)
./Data/Array/Accelerate/CUDA.hs:48 (unhandled): CUDA Exception: invalid argument
| Reported by: | j.waldmann | Owned by: | tmcdonell |
|---|---|---|---|
| Priority: | major | Milestone: | |
| Component: | CUDA backend | Version: | 0.8.1.0 |
| Keywords: | Cc: |
Description
Hello.
I was trying to build/use the current accelerate version, and run into some problems.
I am using ghc-6.12.3 on Linux 2.6.32-bpo.5-amd64 (debian 5.0.6) with cudatoolkit_3.2.16_linux_64_ubuntu10.04 and gcc-4.5.1 and my hardware is GTX295
* cabal install accelerate is trying to build accelerate-0.8.1.0 and it starts with building the dependency cuda-0.2.2 which fails with
c2hs: Errors during expansion of binding hooks: ./Foreign/CUDA/Driver/Context.chs:76: (column 15) [ERROR] >>> Unknown identifier! Cannot find a definition for `cuCtxCreate' in the header file.
* cabal install cuda builds cuda-0.3.2 and the installation runs through.
* cabal unpack accelerate and manually remove the "cuda < 0.3" dependency then cabal install runs through.
* cd accelerate-0.8.1.0/examples/simple ; make ; ./test looks OK
* cd accelerate-0.8.1.0/examples/rasterize ; ghc --make rasterize
[1 of 2] Compiling RasterizeAcc ( RasterizeAcc.hs, RasterizeAcc.o )
RasterizeAcc.hs:26:9:
Not in scope: type constructor or class `NFData'
I manually add "import Control.DeepSeq?" to RasterizeAcc?.hs then "ghc --make" succeeds
./rasterize prints 4 * Haskell (pass), 4 * (Accelerate interpreted) pass
So I figure this isn't using cuda at all. I change Data.Array.Accelerate.Interpreter to Data.Array.Accelerate.CUDA in both RasterizeAcc?.hs and rasterize.hs
Then "ghc --make rasterize" is OK, but running ./rasterize gives
rasterize-test1.txt (Haskell) - pass rasterize-test2.txt (Haskell) - pass rasterize-test3.txt (Haskell) - pass rasterize-test4.txt (Haskell) - pass rasterize: *** Internal error in package accelerate *** *** Please submit a bug report at http://trac.haskell.org/accelerate ./Data/Array/Accelerate/CUDA.hs:48 (unhandled): CUDA Exception: invalid argument
