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

Tim Armstrong tim.g.armstrong at gmail.com
Mon Jul 14 17:13:20 CDT 2014


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> 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>
> Date: Monday, July 14, 2014 at 2:08 PM
> To: Justin M Wozniak <wozniak at mcs.anl.gov>
> Cc: "exm-user at lists.mcs.anl.gov" <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>
> 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). 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 listExM-user at lists.mcs.anl.govhttps://lists.mcs.anl.gov/mailman/listinfo/exm-user
>>
>>
>> --
>> Justin M Wozniak
>>
>>
>> _______________________________________________
>> ExM-user mailing list
>> ExM-user at lists.mcs.anl.gov
>> https://lists.mcs.anl.gov/mailman/listinfo/exm-user
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/exm-user/attachments/20140714/aab70daf/attachment-0001.html>


More information about the ExM-user mailing list