Accéder au contenu.
Menu Sympa

starpu-devel - Re: [Starpu-devel] SOCL and ICD

Objet : Developers list for StarPU

Archives de la liste

Re: [Starpu-devel] SOCL and ICD


Chronologique Discussions 
  • From: Sylvain HENRY <sylvain.henry@inria.fr>
  • To: Nathalie Furmento <nathalie.furmento@labri.fr>
  • Cc: starpu-devel@lists.gforge.inria.fr, vincent.danjean@imag.fr, brice.videau@imag.fr
  • Subject: Re: [Starpu-devel] SOCL and ICD
  • Date: Wed, 03 Oct 2012 10:29:33 +0200
  • List-archive: <http://lists.gforge.inria.fr/pipermail/starpu-devel>
  • List-id: "Developers list. For discussion of new features, code changes, etc." <starpu-devel.lists.gforge.inria.fr>

Hi,

I don't think it is the right solution to the problem. We would disable "make check" SOCL tests on platforms where ocl-icd is not found (i.e. most of them) while we could run them fine if we link them with an ocl-icd lib we could provide with StarPU.

++
Sylvain

Le 02/10/2012 15:36, Nathalie Furmento a écrit :
Even if SOCL does not have to be disabled, then we should at least
disable the execution of the examples when running make check.

Hence the question remains to know how to detect the ICD
implementation which is installed.

Cheers,

Nathalie

On Oct 02, 15:19, Sylvain HENRY wrote:
Hi,

Note that SOCL should work with any ICD loader (at least it works
with NVidia's one). The ICD specification says that ICD clients have
to be referenced in /etc/OpenCL/vendors. Consequently, SOCL and
StarPU have to be installed by an admin to be used through the ICD.

The problem is that we would like users to test SOCL without having
to make a system-wide installation. The ICD loader developed in
Grenoble support an environment variable OCL_ICD_VENDORS that can be
set to override the /etc/OpenCL/vendors path. It can be used to test
a SOCL without being root.

A custom test session would look like:
export OCL_ICD_VENDORS=/path/to/my/own/icds/
export LD_PRELOAD=/path/to/ocl-icd/libOpenCL.so
./soclProgramToTest
There must be a file /path/to/my/own/icds/socl.icd containing
/path/to/socl/libsocl-1.0.so. StarPU library you want to use must be
in the LD_LIBRARY_PATH.

We don't want to disable SOCL if the ICD Loader installed is not the
OCL's one. libsocl would work fine with it once installed.

++
Sylvain


Le 02/10/2012 14:24, Nathalie Furmento a écrit :
All,

SOCL uses now ICD to enable multiple OpenCL implementations. For
reasons I cannot explain (ask Sylvain if you want more details), it
only works with the ICD implementation developed in Grenoble
(https://forge.imag.fr/projects/ocl-icd/).

The problem is how we make sure that implementation is installed on
the machine when running SOCL. Is there a way to detect the ICD
implementation installed on the machine is that specific one? (and
depending on the result, enable or disable SOCL).

A solution would be to compile OCL when we compile StarPU. OCL's
sources are available from a GIT repository (i do not know it that can
be easily integrated with StarPU's subversion server --- is there a
similar solution to svn:externals for git?). The license is BSD-2.

Any comments are welcomed.

Cheers,

Nathalie



--
Sylvain Henry
CS PhD Student at INRIA/LaBRI
University of Bordeaux (France)
sylvain.henry@inria.fr






Archives gérées par MHonArc 2.6.19+.

Haut de le page