[ExM Users] Generating Blobs in Swift/T

Knight, Samuel sknigh at sandia.gov
Mon Jul 14 15:52:17 CDT 2014


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/exm-user/attachments/20140714/23a65c61/attachment.html>


More information about the ExM-user mailing list