Michal Babej <[email protected]> writes:

> Hi,
>
> That's great to hear. 
>
>> long-standing bugs that we encountered with 0.14:
>
> One seems like a cache issue, the other like math precision
> issue, yes ?

Both of them struck me as cache issues, though I might be wrong. AFAIR,
there isn't much in the way of special functions in these kernels.

> Unfortunately i still see some occasional problems with the cache, but
> i'll try to resolve them before release. It should be better than 0.14
> still.

That'd be fantastic. For what it's worth, PyOpenCL caches OpenCL
binaries (which seems faster than relying entirely on pocl's from-source
cache, which seems to do a full preprocessor run on the code before
hashing).

> As for math, the precision is mandated by OpenCL - and pocl even
> documents the actual ULPs, scroll down in this document:
> https://github.com/pocl/pocl/blob/master/doc/sphinx/source/conformance.rst
> previously (with VML) pocl was very non-conformant.

We did see a few things that could conceivably be traced back to loss of
FP digits. I'm excited to hear that improvements have been made, and I'm
looking forward to seeing whether that translates to improvements in our
results.

>> I've also started this here:
>> https://github.com/conda-forge/pocl-feedstock/pull/11
>
> I'm unfamiliar with conda, but i forgot to mention there are now Docker
> files in tools/docker, which might be useful even if one's not using
> Docker, to see the exact steps required to setup Pocl.

Conda is a user-level package manager. Install anywhere in your home
directory, no root required. It originated within the scientific python
community but has expanded far beyond that, to Julia, R, and many
others. I've packages pocl, ocl-icd, and pyopencl for it, with the goal
of making the process of installing a working OpenCL environment a
question of copy-pasting three shell commands.

Among other things, it takes care of making binaries with baked-in paths
relocatable (by compiling with a very long path and then hacking the
binary). Here's the patch that makes that work with pocl:

https://github.com/inducer/pocl-feedstock/blob/b7f3702df3d7888ee13a51cc2a93adf31489d771/recipe/paths-in-separate-compilation-unit.patch

Let me know if that's something you could see accepting upstream.

Andreas

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
pocl-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pocl-devel

Reply via email to