Sorry, I just see that I misread your question.
Yes, Vecmathlib would be compiled when pocl is built, creating bc files.
When kernels are compiled, these bc files are used.
-erik
On Tue, Mar 12, 2013 at 10:21 PM, Erik Schnetter <
[email protected]> wrote:
> On Mon, Feb 18, 2013 at 11:03 AM, Pekka Jääskeläinen <
> [email protected]> wrote:
>
>> On 02/18/2013 04:58 PM, Erik Schnetter wrote:
>> > What is missing is integrating this with pocl's build system, and
>> > autoconf'ing building C++ files.
>>
>> The plan is to have also the generated C++ implementations added to the
>> pocl, right? Similarly to the convert_type.py. That is, the developers
>> or the users of pocl are not going to need to have Vecmathlib available
>> to benefit from its fast implementations.
>>
>> Thus, the build system of pocl should compile the pregenerated
>> implementations if C++ is available (and use them over the "default
>> ones"),
>> and there should be a script or a makefile for easily regenerating the
>> implementations (e.g., after Vecmathlib is improved)?
>>
>
> The implementations are machine dependent, i.e. they depend on the CPU
> type that is available. Vecmatlib checks various preprocessor macros that
> indicate the availability of certain features (SSE2, SSE3, AVX, etc.) This
> also depends on the hardware architecture (Intel vs. others), although only
> Intel/AMD is currently supported in Vecmathlib.Thus, pre-compiling and
> storing doesn't currently work.
>
> It would be possible to pre-compile several versions, and then choose at
> link time which version of the library to use. For example, I think we can
> probably get most of the performance benefit with just four different
> configurations.
>
> I didn't think of shipping bc files, but it makes a lot of sense. People
> would get essentially the full benefit without having to deal with C++.
>
> This "choosing" could maybe also be embedded in the bc files themselves,
> if there is a way to either pass a constant or to access target properties
> e.g. in a switch statement. An optimisation step could then fold the switch
> statements since these values would be known when the kernel is compiled.
> On the other hand, just choosing between a set of libraries when pocl is
> configured may be easier and safer.
>
> -erik
>
> --
> Erik Schnetter <[email protected]>
>
> http://www.perimeterinstitute.ca/personal/eschnetter/
> AIM: eschnett247, Skype: eschnett, Google Talk: [email protected]
>
--
Erik Schnetter <[email protected]>
http://www.perimeterinstitute.ca/personal/eschnetter/
AIM: eschnett247, Skype: eschnett, Google Talk: [email protected]
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_mar
_______________________________________________
pocl-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pocl-devel