[ExM Users] [EXTERNAL] Re: Generating Blobs in Swift/T

Justin M Wozniak wozniak at mcs.anl.gov
Tue Jul 15 12:19:10 CDT 2014


Also, Samuel, if you are still having trouble with blobs you can send us 
a C function prototype and we can help with the blob management.

On 07/14/2014 05:13 PM, Tim Armstrong wrote:
> Hi Samuel,
>
> 1. We have floor, ceil and round in the math library depending on what 
> rounding mode you want.
> 2. I think that having a single reference point for those is a good 
> idea.  LEAF and WORKER are actually synonyms.  You should use WORKER, 
> we're deprecating LEAF going forward because it wasn't a particularly 
> appropriate name.  Thanks for catching the reference in the docs, I 
> was able to fix that.
> 3. The 0.6.0 release will happen this week with many improvements.  A 
> lot of the work focused on major improvements in performance and 
> scalability, but there are a number of user-facing improvement, such 
> as more and easier ways to integrate user code into the scripts.  We 
> don't have a public roadmap at this stage: we're working on an 
> improved web presence for Swift/T at the moment.  Maybe we can get in 
> touch with you off-list to talk a bit more?
>
> - Tim
>
>
> On Mon, Jul 14, 2014 at 4:42 PM, Knight, Samuel <sknigh at sandia.gov 
> <mailto:sknigh at sandia.gov>> wrote:
>
>     Thanks for the speedy response.
>     We are currently building 0.5.0 from source.
>
>     I have three additional questions;
>
>      1. Is there a float -> int function? I crating a workaround by
>         casting float -> string -> (parse on decimal) string -> int.
>         It is wasteful, and it only works when there is no exponential
>         component.
>      2. Is there a single, comprehensive place to read about the '@'
>         directives? For example, I cannot determine the difference
>         between '@dispatch=WORKER' and '@dispatch=LEAF' from the
>         documentation I have found.
>      3. Is a roadmap posted online? It is relevant to my project to
>         know about this programming-model's direction. It would be
>         particularly helpful to know when 0.6.0 and 1.0 are planned
>         for release and what will be added to the implementation.
>
>     Thank You,
>     Samuel Knight
>
>     From: Tim Armstrong <tim.g.armstrong at gmail.com
>     <mailto:tim.g.armstrong at gmail.com>>
>     Date: Monday, July 14, 2014 at 2:08 PM
>     To: Justin M Wozniak <wozniak at mcs.anl.gov
>     <mailto:wozniak at mcs.anl.gov>>
>     Cc: "exm-user at lists.mcs.anl.gov
>     <mailto:exm-user at lists.mcs.anl.gov>" <exm-user at lists.mcs.anl.gov
>     <mailto:exm-user at lists.mcs.anl.gov>>
>     Subject: [EXTERNAL] Re: [ExM Users] Generating Blobs in Swift/T
>
>     I just wanted to add that if you built the release from source you
>     can safely comment out the offending line (line 2178 of
>     tcl-adlb.c, I believe, if you are using the exm-0.5.0 release). 
>     As Justin said, this made it into the release on accident and
>     doesn't have any useful purpose.
>
>     Regards,
>     Tim
>
>
>     On Mon, Jul 14, 2014 at 4:05 PM, Justin M Wozniak
>     <wozniak at mcs.anl.gov <mailto:wozniak at mcs.anl.gov>> wrote:
>
>         Hi
>
>         Sorry- that message is a debugging line that unfortunately
>         made it into the release.  It is already removed from our
>         trunk and will not be in the next release- you can just remove
>         it from your source.
>
>         I will fix the blob doc issue now but feel free to post any
>         additional questions here in the meantime...
>
>             Justin
>
>
>         On 07/14/2014 03:52 PM, Knight, Samuel wrote:
>>         Hello,
>>
>>         I am writing a program in Swift/T that generates blob objects
>>         inside a leaf function. Binary data is generated with a
>>         Swig-wrapped C function, and the blob construct is produced
>>         by making a list out of the pointer and length in the Tcl
>>         wrapper.
>>
>>         Here is a sample from my Tcl script:
>>
>>         proc c_initVect { s o } {
>>         set len [ expr $s * [blobutils_sizeof_int32] ]
>>                 set ptr [ blobutils_malloc $len ]
>>                 initVect [blobutils_cast_to_int_ptr $ptr] $s $o # C
>>         leaf function
>>
>>                 return [ list [ blobutils_cast_to_int  $ptr] $len ] #
>>         creating the blob
>>         }
>>
>>         When I run the program with this snippet, my output fills
>>         with 'uncache_blob' messages.
>>
>>         Here is an example:
>>         uncache_blob: 67376368 4000 3uncache_blob: 67380384 4000 4
>>         Which is the output from a program that generates 2 blobs
>>         with the function above.
>>
>>         The output is automatically generated by the runtime, and I
>>         have no control over when blobs are uncached.
>>
>>         I've traced that output to ADLB_Local_Blob_Free_Cmd function
>>         in src/tcl/adlb/tcl-adlb.c
>>
>>         For programs that allocate a large number of blobs, the
>>         output from the runtime becomes overwhelming, and I am
>>         starting to think my snippet is generating blobs incorrectly.
>>         So far, the only example I can find that generates blobs that
>>         are returned to Swift/T is a the fortran example from the
>>         leaf functions guide (Section 3.4
>>         www.mcs.anl.gov/exm/local/guides/leaf.html
>>         <http://www.mcs.anl.gov/exm/local/guides/leaf.html>). There
>>         is a promising link in Section 3.3.3 of the leaf guide that
>>         explains blobs, but when I click on it I get a 403 error.
>>
>>         Is anyone aware of additional examples or tutorials that
>>         explain how to generate and manage blobs in Swift/T.
>>
>>         Thank you,
>>         Samuel Knight
>>
>>
>>         _______________________________________________
>>         ExM-user mailing list
>>         ExM-user at lists.mcs.anl.gov  <mailto:ExM-user at lists.mcs.anl.gov>https://lists.mcs.anl.gov/mailman/listinfo/exm-user
>
>         -- 
>         Justin M Wozniak
>
>
>         _______________________________________________
>         ExM-user mailing list
>         ExM-user at lists.mcs.anl.gov <mailto:ExM-user at lists.mcs.anl.gov>
>         https://lists.mcs.anl.gov/mailman/listinfo/exm-user
>
>
>


-- 
Justin M Wozniak

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/exm-user/attachments/20140715/6337a48b/attachment.html>


More information about the ExM-user mailing list