
Hi Jerome,
-----Original Message----- From: numpy-discussion-bounces@scipy.org [mailto:numpy-discussion- bounces@scipy.org] On Behalf Of Jerome Kieffer Sent: Friday, March 27, 2015 8:41 PM To: numpy-discussion@scipy.org Subject: Re: [Numpy-discussion] ANN: pyMIC v0.5 released
Interesting project. How close is the C++ kernel needed from OpenCL kernels ?
That depends a bit on what the kernel does. If the kernel implements something really like a dgemm, it is just calling MKL's dgemm routine and passing the parameters into the routine. If the kernel does more, you would need regular C/C++ coding (with whatever is needed) plus a threading model such as OpenMP and TBB.
Is it directly portable ?
I would say no, just because OpenCL does a lot in terms of parallelization of the kernel whereas pyMIC only gives you control over data transfer and passing control over to the coprocessor. Threading and SIMD vectorization then is done by the compiler and/or the programmers.
I have tested my OpenCL code (via pyopencl) on the Phi and I did not get better performances than the dual-hexacore Xeon (i.e. ~2x slower than a GPU).
What type of code are you offloading? Cheers, -michael Intel GmbH Dornacher Strasse 1 85622 Feldkirchen/Muenchen, Deutschland Sitz der Gesellschaft: Feldkirchen bei Muenchen Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk Registergericht: Muenchen HRB 47456 Ust.-IdNr./VAT Registration No.: DE129385895 Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052