Erik Schnetter <[email protected]> writes:
> Thanks! We already have several external test cases in pocl's build
> mechanism, and adding PyOpenCL seems like a worthwhile goal, requiring only
> a bit of autoconf magic. Your instructions above indicate that the head in
> the git repository is a good version to try?

Yeah, 'master' is the right branch for this. My policy is that the code
in there must be working on at least one implementation, and I have a CI
system that tells me about breakage on others relatively quickly.

> In pocl, development is mostly focussed on code generation, in
> particular automatic vectorization, parallel correctness, and
> efficiency. The OpenCL API is secondary, and is mostly improved or
> implemented as necessary. Are there any functions that are currently
> either missing or are not working correctly that would be particularly
> important to you? Is e.g.  clCreateProgramWithBinary important?

That makes perfect sense. Two comments:

- Partial implementation is totally fine, but if I can crash the
  implementation through a CL call, I'd call that a bug. I found a couple
  of those. I'll report them.

- Of the things that aren't implemented, clCreateProgramWithBinary would
  likely be my next most pressing wish. I find the pocl compiler a bit
  slow. (compared to e.g. Intel and AMD) There's nothing wrong with
  that, but developing a program with 30-ish kernels that all need to be
  recompiled for every test run ends up being a pretty miserable
  experience.  The idea is that PyOpenCL uses caching with
  clCreateProgramWithBinary and thereby can dramatically cut the wait
  time to rerun stuff you've already run and only incurs compile waits
  for stuff that's new.

> Do you also have feedback about pocl's performance? Do you maybe have
> a set of benchmarks?

Haven't measured yet, but I'll get back to you when I do.

> Since you tested pocl, it seems to be working for you at least in a
> rudimentary manner. We are currently preparing a new release, pocl 0.8, to
> coincide with the upcoming LLVM 3.3 release. Did you use LLVM 3.3?

Yep.

> Do you
> want to test the pocl 0.8 release branch with LLVM 3.3 on your machine, and
> add a table entry to <
> https://sourceforge.net/apps/mediawiki/pocl/index.php?title=ReleaseTestLog>?
> I am trying to cover a wide range of architectures there, but an additional
> data point for one of the mainline architectures (assuming you are using
> x86_64) is always good.

I couldn't edit that page.

Thanks for getting back to me!

Andreas


------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
pocl-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pocl-devel

Reply via email to