<?xml version="1.0" encoding="UTF-8"?><mets:mets xmlns:mads="http://www.loc.gov/mads/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:tef="http://www.abes.fr/abes/documents/tef" xmlns:metsRights="http://cosimo.stanford.edu/sdr/metsrights/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mets="http://www.loc.gov/METS/">
 <mets:metsHdr ID="rennes1-ori-wf-1-5312" CREATEDATE="2013-02-11T17:45:51" LASTMODDATE="2013-02-11T17:45:51">
  <mets:agent ROLE="CREATOR">
            <mets:name>Université de Rennes 1</mets:name>
        </mets:agent>
</mets:metsHdr>
 <mets:dmdSec ID="desc_expr" CREATED="2013-02-11T17:45:51">
  <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_desc_these">
            <mets:xmlData>
                <tef:thesisRecord>
     <dc:title xml:lang="en">On improving the ease of use of the software transactional memory abstraction</dc:title>
     <dcterms:alternative xml:lang="fr">Faciliter l'utilisation des mémoires transactionnelles logicielles</dcterms:alternative>
     <dc:subject xml:lang="fr">mémoire transactionnelle logicielle</dc:subject><dc:subject xml:lang="fr">STM</dc:subject><dc:subject xml:lang="fr">programmation concurrente</dc:subject><dc:subject xml:lang="fr">structures de données</dc:subject>
     <dc:subject xml:lang="en">software transactional memory</dc:subject><dc:subject xml:lang="en">STM</dc:subject><dc:subject xml:lang="en">concurrent programming</dc:subject><dc:subject xml:lang="en">data structures</dc:subject>
     <tef:sujetRameau><tef:vedetteRameauNomCommun>
						<tef:elementdEntree autoriteSource="Sudoc" autoriteExterne="050230816">Mémoire partagée répartie</tef:elementdEntree>
      <tef:subdivision autoriteSource="Sudoc" type="subdivisionDeForme" autoriteExterne="027253139">Thèses et écrits académiques</tef:subdivision>
					</tef:vedetteRameauNomCommun><tef:vedetteRameauNomCommun>
						<tef:elementdEntree autoriteSource="Sudoc" autoriteExterne="02722502X">Structures de données (informatique)</tef:elementdEntree>
      <tef:subdivision autoriteSource="Sudoc" type="subdivisionDeForme" autoriteExterne="027253139">Thèses et écrits académiques</tef:subdivision>
					</tef:vedetteRameauNomCommun></tef:sujetRameau>
     
     <dcterms:abstract xml:lang="fr">Les architectures multicœurs changent notre façon d'écrire des programmes. L'écriture de programmes concurrents est bien connue pour être difficile. Traditionnellement, l'utilisation de verrous (locks) permettant au code de s'exécuter en exclusion mutuelle, a été l'abstraction la plus largement utilisée pour l'écriture des programmes concurrents. Malheureusement, il est difficile d'écrire des programmes concurrents efficaces et corrects reposant sur des verrous. En outre, les verrous présentent d'autres problèmes, notamment celui du passage à l'échelle. Le concept de mémoire transactionnelle a été proposé comme une solution à ces difficultés. Les transactions peuvent être considérées comme une abstraction de haut niveau, ou une méthodologie pour l'écriture de programmes concurrents, ce qui permet au programmeur de pouvoir déclarer des sections de code devant être exécutés de façon atomique, sans avoir à se soucier des détails de synchronisation. Malheureusement, bien qu'assurément plus facile à utiliser que les verrous, la mémoire transactionnelle souffre encore de problèmes de performance et de facilité d'utilisation. En fait, de nombreux concepts relatifs à l'utilisation et à la sémantique des transactions n'ont pas encore des normes convenues. Cette thèse propose de nouvelles solutions permettant de faciliter l'utilisation des mémoires transactionellles. La thèse débute par un chapitre qui donne un bref aperçu de la mémoire transactionnelle logicielle (STM) ainsi qu'une discussion sur le problème de la facilité d'utilisation. Les contributions à la recherche sont ensuite divisées en quatre chapitres principaux, chacun proposant une approche différente afin de rendre les STMs plus facile à utiliser.</dcterms:abstract>
     <dcterms:abstract xml:lang="en">Multicore architectures are changing the way we write programs. Writing concurrent programs is well known to be difficult task. Traditionally, the use of locks allowing code to execute in mutual exclusion has been the most widely used abstraction to write concurrent programs. Unfortunately, using locks it is difficult to write correct concurrent programs that perform efficiently. Additionally, locks present other problems such as scalability issues. Transactional memory has been proposed as a possible promising solution to these difficulties of writing concurrent programs. Transactions can be viewed as a high level abstraction or methodology for writing concurrent programs, allowing the programmer to be able to declare what sections of his code should be executed atomically, without having to worry about synchronization details. Unfortunately, although arguably easier to use then locks, transactional memory still suffers from performance and ease of use problems. In fact many concepts surrounding the usage and semantics of transactions have no widely agreed upon standards. This thesis specifically focuses on these ease of use problems by discussing how previous research has dealt with them and proposing new solutions putting ease of use first. The thesis starts with a chapter giving a brief overview of software transactional memory (STM) as well as a discussion of the problem of ease of use that is focused on in the later chapters. The research contributions are then divided into four main chapters, each looking at different approaches working towards making transactional memory easier to use.</dcterms:abstract>
     <dc:type>Electronic Thesis or Dissertation</dc:type><dc:type xsi:type="dcterms:DCMIType">Text</dc:type>
     <dc:language xsi:type="dcterms:RFC3066">en</dc:language>
    </tef:thesisRecord>
            </mets:xmlData>
        </mets:mdWrap>
</mets:dmdSec>
 <mets:dmdSec ID="desc_edition" CREATED="2013-02-11T17:45:51">
  <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_desc_edition">
            <mets:xmlData>
                <tef:edition><dcterms:medium xsi:type="dcterms:IMT">application/pdf</dcterms:medium><dcterms:extent>1 : 1429 Ko</dcterms:extent><dc:identifier xsi:type="dcterms:URI">http://ecm.univ-rennes1.fr/nuxeo/site/esupversions/d8dc686b-b58f-473e-aa2a-39724cc74ba8</dc:identifier></tef:edition>
            </mets:xmlData>
        </mets:mdWrap>
</mets:dmdSec>
 <mets:amdSec>
        <mets:techMD ID="admin_expr">
            <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_admin_these">
                <mets:xmlData>
                    <tef:thesisAdmin>
                        <tef:auteur>
       <tef:nom>Crain</tef:nom>
       <tef:prenom>Tyler</tef:prenom>
       
       <tef:dateNaissance>1984-11-10</tef:dateNaissance>
       <tef:nationalite scheme="ISO-3166-1">US</tef:nationalite>
       <tef:autoriteExterne autoriteSource="Sudoc">150725884</tef:autoriteExterne>
       <tef:autoriteExterne autoriteSource="LDAP">10047579</tef:autoriteExterne>
       <tef:autoriteExterne autoriteSource="mailPerso">tycrain@gmail.com</tef:autoriteExterne>
      </tef:auteur>
                        <dc:identifier xsi:type="tef:NNT">2013REN1S022</dc:identifier>
                        <dc:identifier xsi:type="tef:nationalThesisPID">http://www.theses.fr/2013REN1S022</dc:identifier>
                        <dcterms:dateAccepted xsi:type="dcterms:W3CDTF">2013-03-06</dcterms:dateAccepted>
                        <tef:thesis.degree>
                            <tef:thesis.degree.discipline xml:lang="fr">Informatique</tef:thesis.degree.discipline>
                            <tef:thesis.degree.grantor>
        <tef:nom>Université de Rennes 1</tef:nom><tef:autoriteInterne>thesis.degree.grantor_1</tef:autoriteInterne>
        
        <tef:autoriteExterne autoriteSource="Sudoc">02778715X</tef:autoriteExterne>
       </tef:thesis.degree.grantor>
                            <tef:thesis.degree.grantor>
        <tef:nom>Université européenne de Bretagne</tef:nom><tef:autoriteInterne>thesis.degree.grantor_2</tef:autoriteInterne>
        
        <tef:autoriteExterne autoriteSource="Sudoc">139075119</tef:autoriteExterne>
       </tef:thesis.degree.grantor>
                            <tef:thesis.degree.level>Doctorat</tef:thesis.degree.level>
                        </tef:thesis.degree>
                        <tef:theseSurTravaux>non</tef:theseSurTravaux>
                        <tef:avisJury>oui</tef:avisJury><tef:directeurThese><tef:nom>Raynal</tef:nom><tef:prenom>Michel</tef:prenom><tef:autoriteInterne>intervenant_1</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">02859181X</tef:autoriteExterne></tef:directeurThese>
      
      
      
      
      
      
      
      <tef:ecoleDoctorale>
       <tef:nom>Mathématiques, informatique, signal, électronique et télécommunications</tef:nom><tef:autoriteInterne>ecoleDoctorale_1</tef:autoriteInterne>
       
       <tef:autoriteExterne autoriteSource="Sudoc">139007164</tef:autoriteExterne>
      </tef:ecoleDoctorale>
      
      
      
                        
                        
                        <tef:partenaireRecherche type="laboratoire">
       <tef:nom>
IRISA
</tef:nom><tef:autoriteInterne>partenaireRecherche_1</tef:autoriteInterne>
       
       <tef:autoriteExterne autoriteSource="Sudoc">
026386909
</tef:autoriteExterne>
      </tef:partenaireRecherche>
                        <tef:oaiSetSpec>ddc:004</tef:oaiSetSpec>
                        
                        
                    <tef:MADSAuthority authorityID="intervenant_1" type="personal"><tef:personMADS><mads:namePart type="family">Raynal</mads:namePart><mads:namePart type="given">Michel</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="thesis.degree.grantor_1" type="corporate"><tef:personMADS><mads:namePart>Université de Rennes 1</mads:namePart><mads:description>Sciences et technologie, médecine, pharmacie, odontologie, droit, économie, gestion, philosophie</mads:description></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="thesis.degree.grantor_2" type="corporate"><tef:personMADS><mads:namePart>Université européenne de Bretagne</mads:namePart><mads:description>Pôle de recherche et d'enseignement supérieur de Bretagne</mads:description></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="ecoleDoctorale_1" type="corporate"><tef:personMADS><mads:namePart>Mathématiques, informatique, signal, électronique et télécommunications</mads:namePart><mads:description>École doctorale Mathématiques, informatique, signal, électronique et télécommunications (Rennes)</mads:description></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="partenaireRecherche_1" type="corporate"><tef:personMADS><mads:namePart>
IRISA
</mads:namePart></tef:personMADS></tef:MADSAuthority></tef:thesisAdmin>
                </mets:xmlData>
            </mets:mdWrap>
        </mets:techMD><mets:techMD ID="file_1"><mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_tech_fichier"><mets:xmlData><tef:meta_fichier>
     <tef:encodage>ASCII</tef:encodage>
     <tef:formatFichier>PDF</tef:formatFichier>
     
     
     
     <tef:taille>1462868</tef:taille>
    </tef:meta_fichier></mets:xmlData></mets:mdWrap></mets:techMD>
        
        <mets:rightsMD ID="dr_expr_thesard">
            <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_auteur_these">
                <mets:xmlData>
                    <metsRights:RightsDeclarationMD>
                        <metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
                            <metsRights:Permissions DISCOVER="true" DISPLAY="true" COPY="true" DUPLICATE="true" MODIFY="false" DELETE="false" PRINT="true"/>
                        </metsRights:Context>
                    </metsRights:RightsDeclarationMD>
                </mets:xmlData>
            </mets:mdWrap>
        </mets:rightsMD>
        <mets:rightsMD ID="dr_expr_univ">
            <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_etablissement_these">
                <mets:xmlData>
                    <metsRights:RightsDeclarationMD>
                        <metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
                            <metsRights:Permissions DISCOVER="true" DISPLAY="true" COPY="true" DUPLICATE="true" MODIFY="false" DELETE="false" PRINT="true"/>
                        </metsRights:Context>
                    </metsRights:RightsDeclarationMD>
                </mets:xmlData>
            </mets:mdWrap>
        </mets:rightsMD>
        <mets:rightsMD ID="dr_version">
            <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_version">
                <mets:xmlData>
                    <metsRights:RightsDeclarationMD>
                        <metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
                            <metsRights:Permissions DISCOVER="true" DISPLAY="true" COPY="true" DUPLICATE="true" MODIFY="false" DELETE="false" PRINT="true"/>
                        </metsRights:Context>
                    </metsRights:RightsDeclarationMD>
                </mets:xmlData>
            </mets:mdWrap>
        </mets:rightsMD>
    </mets:amdSec>
 <mets:fileSec>
  <mets:fileGrp ID="FGrID1" USE="archive"><mets:file ID="FID1" ADMID="file_1" MIMETYPE="application/pdf" USE="maitre"><mets:FLocat LOCTYPE="URL" xlink:href="http://ecm.univ-rennes1.fr/nuxeo/site/esupversions/d8dc686b-b58f-473e-aa2a-39724cc74ba8"/></mets:file></mets:fileGrp>
 </mets:fileSec>
 <mets:structMap TYPE="logical">
        <mets:div DMDID="desc_expr" ADMID="dr_expr_thesard dr_expr_univ admin_expr" TYPE="THESE" CONTENTIDS="http://ori-oai-search.univ-rennes1.fr/uid/rennes1-ori-wf-1-5312/oeuvre">
            <mets:div ADMID="dr_version" TYPE="VERSION_COMPLETE" CONTENTIDS="http://ori-oai-search.univ-rennes1.fr/uid/rennes1-ori-wf-1-5312/oeuvre/version">
                <mets:div DMDID="desc_edition" TYPE="EDITION" CONTENTIDS="http://ori-oai-search.univ-rennes1.fr/uid/rennes1-ori-wf-1-5312/oeuvre/version/edition">
                    <mets:fptr FILEID="FGrID1"/>
                </mets:div>
            </mets:div>
        </mets:div>
    </mets:structMap>
</mets:mets>