Unable to use CUDA context for automatic unit testing

190 views
Skip to first unread message

Chikhare

unread,
Mar 26, 2015, 5:14:48 AM3/26/15
to jenkins...@googlegroups.com
Hi,

I have a jenkins server under windows 7 64 bits and a CUDA capable device.

I set up a job to perform a google test who execute unit tests on CUDA device. When running under Jenkins, the google test fails saying "insufficient version of CUDA ..." which means that the unit tests can't use the CUDA device.

Jekins is launched as a service with a specific user account. If I execute manually this test (command line) under the same user account, the unit test performs successfully.

I have the same problem if Jenkins is a slave.

Someone has any clue ?

Regards.

Arezki.

Richard Bywater

unread,
Mar 26, 2015, 5:35:44 AM3/26/15
to jenkins...@googlegroups.com
Don't even know what CUDA is but I would check the %PATH% variable that is set at the time the Jenkins job runs. Doing a "echo %PATH%" step in your build job should give you something to compare with when you have a manual command line.

Richard.

--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/ac6a80df-a64f-4835-8362-e52a827ed3a9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

James Nord

unread,
Mar 26, 2015, 6:01:04 AM3/26/15
to jenkins...@googlegroups.com
CUDA being related to using graphics card to run code I would suggest that if what Richard suggested doesn't work that you look at the option to run service with "allow interaction with the desktop" enabled.
Otherwise you may need to change the slave launch method so that windows auto-logs in then run the JNLP slave launcher rather than running as a service.
If you are only using a single master and no slave (which is not recommended) then you can acheive similar by running jenkins form the command line (a combination of auto-logon and startup script will surfice).

/James

Chikhare

unread,
Apr 2, 2015, 4:46:54 AM4/2/15
to jenkins...@googlegroups.com
Thanks for both of you.

I finally acheived to run my CUDA unit tests on a slave machine. Launching Jenkins as a service even if you specify a user account (who can interact with desktop) does not allow to use the graphic card as a CUDA device.

What I did is to run Jenkins manually via the command line opened with current user. Then it works, the unit tests are executed but only in a freestyle project. If I used a matrix configuration project the unit tests don't work.

Regards.

Reply all
Reply to author
Forward
0 new messages