[C2hs] Request to C2HS users

Ian Ross ian at skybluetrades.net
Tue May 20 09:08:39 UTC 2014


That's right.  I do install the CUDA SDK on Travis, so I end up with a CUDA
installation with a working nvcc that the cuda Haskell package can use, but
I don't install any drivers, so I don't think I'd be able to actually run
any CUDA code (since nVIDIA seem to have removed the emulator that used to
be in the SDK -- from a quick search, it seems that Ocelot is the only
emulator for Linux now).

Here's what I do in the regression suite:

wget
http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1204/x86_64/cuda-repo-ubuntu1204_5.5-0_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1204_5.5-0_amd64.deb
sudo apt-get update
sudo apt-get install cuda-5.5

That seems to be enough to convince the config scripts for the cuda package
that there's a real CUDA installation there, and it's enough to build the
package.

When I have time, I'll play with getting Ocelot working.  Then we'll be
able to run the package tests for all of these things as well.



On 20 May 2014 02:49, Manuel M T Chakravarty <chak at cse.unsw.edu.au> wrote:

> I think, Ryan is wondering about the compilation environment (and I’m,
> too, to be honest), because the ’cuda’ package depends on the NVIDIA CUDA
> SDK. In particular, the configure script of the package tries to determine
> the location of the NVIDIA compiler tools as well as the headers of the
> various CUDA-related APIs. Hence, even building the package requires a
> machine with a somewhat working CUDA installation.
>
> Manuel
>
> Ian Ross <ian at skybluetrades.net>:
>
> No, nothing as clever as that.  I took the strictly low-rent route of only
> testing that the regression suite packages successfully build.  I don't run
> the package test suites, so I don't need to run any CUDA code.  What I'd
> been finding was that most of the problems I'd been seeing with C2HS were
> things that would be picked up just by trying to build the packages -- out
> of all the problems I've seen recently, all of them were either related to
> problems parsing C headers or the CHS files themselves, or to generating
> invalid Haskell code.  I've yet to see a single problem where C2HS
> generates Haskell code that compiles but doesn't work.  Also, I didn't even
> know that such a thing as a CUDA emulator existed!  Now that I do, maybe
> I'll experiment a bit when I have time and see if I can run the regression
> suite package test cases as well...
>
>
> On 19 May 2014 17:15, Ryan Newton <rrnewton at gmail.com> wrote:
>
>> Oh, did you use a CUDA emulator on Travis?  (What is the best one these
>> days?)
>>
>>
>>
>> On Sat, May 17, 2014 at 12:55 AM, Ian Ross <ian at skybluetrades.net> wrote:
>>
>>> Thanks Ryan,
>>>
>>> I got the cuda package (and cufft and OpenCL) building on Travis without
>>> too much trouble, after a bit of experimentation on an EC2 instance with
>>> the same Linux build as Travis uses.  It was easier than I thought it would
>>> be, and the CUDA installation process seems to be getting easier over time,
>>> so supporting this sort of thing for newer versions of CUDA should be easy.
>>>
>>> Cheers,
>>>
>>> Ian.
>>>
>>>
>>>
>>> On 16 May 2014 07:59, Ryan Newton <rrnewton at gmail.com> wrote:
>>>
>>>> Hi all,
>>>>
>>>> Sorry for long-delayed response.
>>>>
>>>> Yes, some of our jobs do happen to install accelerate-cuda (like this
>>>> one<http://tester-lin.soic.indiana.edu:8080/job/accelerate-multidev/229/>,
>>>> and this one<http://tester-lin.soic.indiana.edu:8080/job/HackageReleased_meta-par-accelerate_CUDA/501/JENKINS_GHC=7.6.3,label=linux-cuda/console>).
>>>>  We don't have a dedicated set of tests for accelerate-cuda itself.  (But
>>>> we should soon.  I hope to test all backend ends uniformly.)
>>>>
>>>> We have a pretty heterogeneous config in terms of cuda installs.  Most
>>>> of our tests run on a set of machines that still have CUDA 4.2, but my own
>>>> work-station and laptop have 5.5.
>>>>
>>>>  Cheers,
>>>>   -Ryan
>>>>
>>>>
>>>>
>>>> On Tue, Apr 15, 2014 at 12:22 AM, Manuel M T Chakravarty <
>>>> chak at cse.unsw.edu.au> wrote:
>>>>
>>>>> Hi Ian,
>>>>>
>>>>> We haven’t build the cuda package in a CI environment, but Ryan Newton
>>>>> has Accelerate in on a CI server.
>>>>>
>>>>> Ryan, are you building with the CUDA backend?
>>>>>
>>>>> Ian, I’m not sure what you mean by CUDA version 6. I believe the
>>>>> latest CUDA release from NVIDIA is 5.5.
>>>>>
>>>>> Cheers,
>>>>> Manuel
>>>>>
>>>>> Ian Ross <ian at skybluetrades.net>:
>>>>>
>>>>> Hi Manuel (and/or Trevor!),
>>>>>
>>>>> Have you had any luck in building CUDA on Travis or any other CI
>>>>> environment?  I've not managed to build it on my desktop machine, but
>>>>> that's mostly due to not having an NVIDIA card and to being on Arch Linux,
>>>>> where the current CUDA install is version 6 instead of 5...  This C2HS
>>>>> regression suite idea has already turned out to be useful, catching a
>>>>> couple of silly little bugs I'd introduced, and I'd really like to include
>>>>> as many packages as possible, and to have it run as a CI test.
>>>>>
>>>>> I'll have a try on Travis myself, but it would be useful to know if
>>>>> you've already figured out what's needed.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Ian.
>>>>>
>>>>>
>>>>>
>>>>> On 2 April 2014 06:43, Manuel M T Chakravarty <chak at cse.unsw.edu.au>wrote:
>>>>>
>>>>>> Good plan! Please include
>>>>>>
>>>>>>   http://hackage.haskell.org/package/cuda
>>>>>>
>>>>>> Manuel
>>>>>>
>>>>>> Ian Ross <ian at skybluetrades.net>:
>>>>>>
>>>>>> Dear All,
>>>>>>
>>>>>> I'm trying to make a list of packages that depend on C2HS, in order
>>>>>> to make a regression suite to test new releases.  I slightly broke things
>>>>>> in the last release and only found out about it when people started
>>>>>> reporting regressions when trying to build packages that use C2HS.  The
>>>>>> number of moving parts involved make it difficult to write a test suite
>>>>>> with full coverage, so the best approach seems to be to make a list of
>>>>>> packages and make sure that these all build before doing a release.
>>>>>>
>>>>>> I've not been able to figure out a way to do reverse dependency
>>>>>> searches on Hackage for build tools, hence the email.
>>>>>>
>>>>>> If you have a package that uses C2HS that you'd like added to the
>>>>>> regression suite, let me know.
>>>>>>
>>>>>> Cheers,
>>>>>>
>>>>>> Ian.
>>>>>>
>>>>>> --
>>>>>> Ian Ross   Tel: +43(0)6804451378   ian at skybluetrades.net
>>>>>> www.skybluetrades.net
>>>>>> _______________________________________________
>>>>>> C2hs mailing list
>>>>>> C2hs at haskell.org
>>>>>> http://www.haskell.org/mailman/listinfo/c2hs
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Ian Ross   Tel: +43(0)6804451378   ian at skybluetrades.net
>>>>> www.skybluetrades.net
>>>>> _______________________________________________
>>>>> C2hs mailing list
>>>>> C2hs at haskell.org
>>>>> http://www.haskell.org/mailman/listinfo/c2hs
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>> Ian Ross   Tel: +43(0)6804451378   ian at skybluetrades.net
>>> www.skybluetrades.net
>>>
>>
>>
>
>
> --
> Ian Ross   Tel: +43(0)6804451378   ian at skybluetrades.net
> www.skybluetrades.net
>
>
>


-- 
Ian Ross   Tel: +43(0)6804451378   ian at skybluetrades.net
www.skybluetrades.net
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/c2hs/attachments/20140520/44da0490/attachment.html>


More information about the C2hs mailing list