
<mods xmlns="http://www.loc.gov/mods/v3" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-4.xsd">
    
    <titleInfo>
        <title>Analysis of Clocks in X10 Programs (Extended)</title>
    </titleInfo>
    <name type="personal">
        <namePart type="family">Vasudevan</namePart>
        <namePart type="given">Nalini</namePart>
        <role>
            <roleTerm type="text">author</roleTerm>
        </role>
        <affiliation>Columbia University. Computer Science</affiliation>
    </name>
    <name type="personal">
        <namePart type="family">Tardieu</namePart>
        <namePart type="given">Olivier</namePart>
        <role>
            <roleTerm type="text">author</roleTerm>
        </role>
    </name>
    <name type="personal">
        <namePart type="family">Dolby</namePart>
        <namePart type="given">Julian</namePart>
        <role>
            <roleTerm type="text">author</roleTerm>
        </role>
    </name>
    <name type="personal" ID="se2007">
        <namePart type="family">Edwards</namePart>
        <namePart type="given">Stephen A.</namePart>
        <role>
            <roleTerm type="text">author</roleTerm>
        </role>
        <affiliation>Columbia University. Computer Science</affiliation>
    </name>
    <name type="corporate">
        <namePart>Columbia University. Computer Science</namePart>
        <role>
            <roleTerm type="text">originator</roleTerm>
        </role>
        <role>
            <roleTerm type="text">contributor</roleTerm>
        </role>
    </name>
    <typeOfResource>text</typeOfResource>
    <genre>Technical reports</genre>
    
    <originInfo>
        <place>
            <placeTerm type="text">New York</placeTerm>
        </place>
        <publisher>Department of Computer Science, Columbia University</publisher>
        <dateIssued encoding="w3cdtf" keyDate="yes">2008</dateIssued>
    </originInfo>
    <abstract>Clocks are a mechanism for providing synchronization barriers in concurrent programming languages. They are usually implemented using primitive communication mechanisms and thus spare the programmer from reasoning about low-level implementation details such as remote procedure calls and error conditions. Clocks provide flexibility, but programs often use them in specific ways that do not require their full implementation. In this paper, we describe a tool that mitigates the overhead of general-purpose clocks by statically analyzing how programs use them and choosing optimized implementations when available. We tackle the clock implementation in the standard library of the X10 programming language---a parallel, distributed object-oriented language. We report our findings for a small set of analyses and benchmarks. Our tool only adds a few seconds to analysis time, making it practical to use as part of a compilation chain.</abstract>
    <subject>
        <topic>Computer science</topic>
    </subject>
    <relatedItem type="series" ID="r.1">
        <titleInfo>
            <title>Columbia University Computer Science Technical Reports</title>
            <partNumber>CUCS-052-08</partNumber>
        </titleInfo>
    </relatedItem>
    <identifier type="hdl">http://hdl.handle.net/10022/AC:P:29608</identifier>

    <language>
        <languageTerm type="text">English</languageTerm>
    </language>
    
    <location>
        <physicalLocation authority="marcorg">NNC</physicalLocation>
    </location>
    
    <recordInfo>
        <recordContentSource authority="marcorg">NNC</recordContentSource>
        <recordCreationDate encoding="w3cdtf">2011-04-26 11:13:11 -0400</recordCreationDate>
        <recordChangeDate encoding="w3cdtf">2011-08-01 12:42:28 -0400</recordChangeDate>
        <recordIdentifier>3904</recordIdentifier>
        <languageOfCataloging>
            <languageTerm authority="iso639-2b">eng</languageTerm>
        </languageOfCataloging>
    </recordInfo>
    
</mods>

