[Scons-users] CudaTool

William Blevins wblevins001 at gmail.com
Tue Jun 16 16:57:54 EDT 2015


Bill,

Or is the SConsWiki the original source, so we are the developers?

V/R,
William

On Tue, Jun 16, 2015 at 4:55 PM, William Blevins <wblevins001 at gmail.com>
wrote:

> David,
>
> All in all, it seems that may have been a question more appropriate for
> the SCons CUDA tool developer, but looking at
> https://bitbucket.org/scons/scons/wiki/CudaTool notes section, it appears
> that those files are only added to the Emitter so that scons -c works for
> those files.
>
> Bill,
>
> Can the CUDA emitter simply call Clean( 'item.linkinfo' ) in the emitter
> to explicitly without needing to return the item itself?  I assume this
> would work, and it would simply that Builder if no one uses the
> "*.linkinfo" file.  If you think this will, I will contact the developer.
>
> V/R,
> William
>
>
> On Tue, Jun 16, 2015 at 11:00 AM, Bill Deegan <bill at baddogconsulting.com>
> wrote:
>
>> William,
>>
>> Thanks for the assist, you are correct in your corrections.
>>
>> Good question about the purpose of the .linkinfo. (They are added in the
>> cuda tool..)
>> I did take a course on cuda programming a while back and I"m thinking
>> these are used to link the native code to code which will run on the GPU
>> hardware.
>> So while they (I believe) aren't needed in the .a they are used by other
>> tools in the tool chain.
>>
>> -Bill
>>
>> On Tue, Jun 16, 2015 at 7:56 AM, William Blevins <wblevins001 at gmail.com>
>> wrote:
>>
>>>
>>> On Tue, Jun 16, 2015 at 10:29 AM, Bill Deegan <bill at baddogconsulting.com
>>> > wrote:
>>>
>>>> David,
>>>>
>>>> How about:
>>>>
>>>> foo = env.StaticObject(“foo.cu”,<foo-options>)
>>>> bar = env.StaticObject(“bar.cu”,<bar-options>)
>>>>
>>>> foo_objects = [ x for x in foo if x.str().endswith('.o') ]
>>>> bar_objects = [ x for x in bar if x.str().endswith('.o') ]
>>>>
>>>>
>>>> env.StaticLibrary(libname, [foo, bar]
>>>>
>>>
>>> I think the about line needs to be env.StaticLibrary(libname,
>>> [foo_objects, bar_objects] though right?
>>>
>>>
>>>> [Also note your example you added bar-options to env1 instead of env2]
>>>> I didn't try the code above but that's the general way I'd go about it.
>>>> Remember that all builders return list of nodes.
>>>>
>>>> -Bill
>>>>
>>>
>>> Thanks Bill.
>>>
>>> I wasn't 100% sure I understood his question, but even though we have
>>> given him a workaround I think we have sidestepped a more important
>>> question.
>>>
>>> What are *.linkinfo used for, and if they aren't being used why are they
>>> being created?  Are linkinfo specific to certain toolchains?
>>>
>>> V/R,
>>> William
>>>
>>>
>>>>
>>>> On Tue, Jun 16, 2015 at 5:31 AM, David Wade <DAWAD at statoil.com> wrote:
>>>>
>>>>>  Hi,
>>>>>
>>>>>
>>>>>
>>>>> I have been using this nifty bit of python for some time:
>>>>> https://bitbucket.org/scons/scons/wiki/CudaTool
>>>>>
>>>>> Just ran into an issue of finding scons was trying to run “ar rc foo.o
>>>>> foo.linkinfo bar.o bar.linkinfo” when I tried this:
>>>>>
>>>>>
>>>>>
>>>>> env1 = env.Clone()
>>>>>
>>>>> env2 = env.Clone()
>>>>>
>>>>>
>>>>>
>>>>> env1.Append(<foo-options>)
>>>>>
>>>>> foo = env1.StaticObject(“foo.cu”)
>>>>>
>>>>> env1.Append(<bar-options>)
>>>>>
>>>>> bar = env2.StaticObject(“bar.cu”)
>>>>>
>>>>>
>>>>>
>>>>> env.StaticLibrary(libname, [foo, bar])
>>>>>
>>>>>
>>>>>
>>>>> My workaround has been to comment out references to the “Emitter”
>>>>> functions in cuda.py … but is this the best thing to do?
>>>>>
>>>>>
>>>>>
>>>>> Many thanks!
>>>>>
>>>>>
>>>>> *David Wade*
>>>>> Senior Analyst, Seismic Imaging Development
>>>>> *ITV SUB RH / HPC Development Team, *Statoil ASA
>>>>>
>>>>> *Phone*: +47 97572157
>>>>> *Email*: *dawad at statoil.com <dawad at statoil.com>*
>>>>> *Visitor address*: Vassbotnen 23, Forus, Norway
>>>>>
>>>>>
>>>>> Incorporation number: NO 923 609 016 MVA
>>>>> *www.statoil.com <http://www.statoil.com/>*
>>>>> Please consider the environment before printing this e-mail.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -------------------------------------------------------------------
>>>>> The information contained in this message may be CONFIDENTIAL and is
>>>>> intended for the addressee only. Any unauthorised use, dissemination
>>>>> of the
>>>>> information or copying of this message is prohibited. If you are not
>>>>> the
>>>>> addressee, please notify the sender immediately by return e-mail and
>>>>> delete
>>>>> this message.
>>>>> Thank you
>>>>>
>>>>> _______________________________________________
>>>>> Scons-users mailing list
>>>>> Scons-users at scons.org
>>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Scons-users mailing list
>>>> Scons-users at scons.org
>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Scons-users mailing list
>>> Scons-users at scons.org
>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>
>>>
>>
>> _______________________________________________
>> Scons-users mailing list
>> Scons-users at scons.org
>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20150616/b24f9951/attachment-0001.html>


More information about the Scons-users mailing list