<?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-10122" CREATEDATE="2017-10-12T13:42:35" LASTMODDATE="2017-10-12T13:42:36">
  <mets:agent ROLE="CREATOR">
            <mets:name>Université de Rennes 1</mets:name>
        </mets:agent>
</mets:metsHdr>
    <mets:dmdSec ID="desc_expr" CREATED="2017-10-12T13:42:35">
  <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_desc_these">
            <mets:xmlData>
                <tef:thesisRecord>
     <dc:title xml:lang="en">Runtime optimization of binary through vectorization transformations</dc:title>
     <dcterms:alternative xml:lang="fr">Optimisation dynamique de code binaire par des transformations vectorielles</dcterms:alternative>
     <dc:subject xml:lang="fr">Performance</dc:subject><dc:subject xml:lang="fr">Optimisation dynamique de code binaire</dc:subject><dc:subject xml:lang="fr">Vectorisation</dc:subject><dc:subject xml:lang="fr">Modèle polyédrique</dc:subject>
     <dc:subject xml:lang="en">Performance</dc:subject><dc:subject xml:lang="en">Runtime optimization</dc:subject><dc:subject xml:lang="en">Dynamic binary optimization</dc:subject><dc:subject xml:lang="en">Vectorization</dc:subject><dc:subject xml:lang="en">Polyhedral model</dc:subject><tef:sujetRameau><tef:vedetteRameauNomCommun>
						<tef:elementdEntree autoriteSource="Sudoc" autoriteExterne="032167091">Arithmétique interne des ordinateurs</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="027234908">Traitement réparti</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="027842681">Polyèdres</tef:elementdEntree><tef:subdivision autoriteSource="Sudoc" type="subdivisionDeSujet" autoriteExterne="027234886">Informatique</tef:subdivision><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 applications ne sont pas toujours optimisées pour le matériel sur lequel elles s'exécutent, comme les logiciels distribués sous forme binaire, ou le déploiement des programmes dans des fermes de calcul. On se concentre sur la maximisation de l'efficacité du processeur pour les extensions SIMD. Nous montrons que de nombreuses boucles compilées pour x86 SSE peuvent être converties dynamiquement en versions AVX plus récentes et plus puissantes. Nous obtenons des accélérations conformes à celles d'un compilateur natif ciblant AVX. De plus, on vectorise en temps réel des boucles scalaires. Nous avons intégré des logiciels libres pour (1) transformer dynamiquement le binaire vers la forme de représentation intermédiaire, (2) abstraire et vectoriser les boucles fréquemment exécutées dans le modèle polyédrique (3)  enfin les compiler. Les accélérations obtenues sont proches du nombre d'éléments pouvant être traités simultanément par l'unité SIMD.</dcterms:abstract>
     <dcterms:abstract xml:lang="en">In many cases, applications are not optimized for the hardware on which they run. This is due to backward compatibility of ISA that guarantees the functionality but not the best exploitation of the hardware. Many reasons contribute to this unsatisfying situation such as legacy code, commercial code distributed in binary form, or deployment on compute farms. Our work focuses on maximizing the CPU efficiency for the SIMD extensions. The first contribution is a lightweight binary translation mechanism that does not include a vectorizer, but instead leverages what a static vectorizer previously did. We show that many loops compiled for x86 SSE can be dynamically converted to the more recent and more powerful AVX; as well as, how correctness is maintained with regards to challenges such as data dependencies and reductions. We obtain speedups in line with those of a native compiler targeting AVX. The second contribution is a runtime auto-vectorization of scalar loops. For this purpose, we use open source frame-works that we have tuned and integrated to (1) dynamically lift the x86 binary into the Intermediate Representation form of the LLVM compiler, (2) abstract hot loops in the polyhedral model, (3) use the power of this mathematical framework to vectorize them, and (4) finally compile them back into executable form using the LLVM Just-In-Time compiler. In most cases, the obtained speedups are close to the number of elements that can be simultaneously processed by the SIMD unit. The re-vectorizer and auto-vectorizer are implemented inside a dynamic optimization platform; it is completely transparent to the user, does not require any rewriting of the binaries, and operates during program execution.</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="2017-10-12T13:42:35">
  <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 : 1806 Ko</dcterms:extent><dc:identifier xsi:type="dcterms:URI">https://ecm.univ-rennes1.fr/nuxeo/site/esupversions/8dc05a1f-1d21-4b46-b764-0bb753fc396f</dc:identifier></tef:edition>
            </mets:xmlData>
        </mets:mdWrap>
</mets:dmdSec>
    <mets:amdSec>
        <mets:techMD ID="admin_expr" CREATED="">
            <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_admin_these">
                <mets:xmlData>
                    <tef:thesisAdmin>
                        <tef:auteur>
       <tef:nom>Hallou</tef:nom>
       <tef:prenom>Nabil</tef:prenom>
       
       <tef:dateNaissance>1985-03-14</tef:dateNaissance>
       <tef:nationalite scheme="ISO-3166-1">MA</tef:nationalite>
       <tef:autoriteExterne autoriteSource="Sudoc">227019636</tef:autoriteExterne>
       <tef:autoriteExterne autoriteSource="mailPerso">no.hallou@gmail.com</tef:autoriteExterne>
      </tef:auteur>
                        <dc:identifier xsi:type="tef:NNT">2017REN1S120</dc:identifier>
                        <dc:identifier xsi:type="tef:nationalThesisPID">http://www.theses.fr/2017REN1S120</dc:identifier>
                        <dcterms:dateAccepted xsi:type="dcterms:W3CDTF">2017-12-18</dcterms:dateAccepted>
                        <tef:thesis.degree>
                            <tef:thesis.degree.discipline xml:lang="fr">Informatique</tef:thesis.degree.discipline>
                            <tef:thesis.degree.grantor>
        <tef:nom>Universite 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.level>Doctorat</tef:thesis.degree.level>
                        </tef:thesis.degree>
                        <tef:theseSurTravaux>non</tef:theseSurTravaux>
                        <tef:avisJury>oui</tef:avisJury><tef:directeurThese><tef:nom>Rohou</tef:nom><tef:prenom>Erven</tef:prenom><tef:autoriteInterne>intervenant_1</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">135287065</tef:autoriteExterne></tef:directeurThese><tef:directeurThese><tef:nom>Clauss</tef:nom><tef:prenom>Philippe</tef:prenom><tef:autoriteInterne>intervenant_2</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">098478389</tef:autoriteExterne></tef:directeurThese>
      
      
      
      
      
      
      
      
      
      
                        
                        
                        <tef:ecoleDoctorale>
       <tef:nom>MATHSTIC</tef:nom><tef:autoriteInterne>ecoleDoctorale_1</tef:autoriteInterne>
       
       <tef:autoriteExterne autoriteSource="Sudoc">204770424</tef:autoriteExterne>
      </tef:ecoleDoctorale>
                        <tef:partenaireRecherche type="autreType" autreType="ComuE">
       <tef:nom>Universite Bretagne Loire</tef:nom><tef:autoriteInterne>partenaireRecherche_1</tef:autoriteInterne>
       
       <tef:autoriteExterne autoriteSource="Sudoc">191639044</tef:autoriteExterne>
      </tef:partenaireRecherche>
                        <tef:partenaireRecherche type="laboratoire">
       <tef:nom>
INRIA-RENNES
</tef:nom><tef:autoriteInterne>partenaireRecherche_2</tef:autoriteInterne>
       
       <tef:autoriteExterne autoriteSource="Sudoc">
133175863
</tef:autoriteExterne>
      </tef:partenaireRecherche>
                        <tef:oaiSetSpec>ddc:004</tef:oaiSetSpec>
                        
                        
                        
                        
                    <tef:MADSAuthority authorityID="intervenant_1" type="personal"><tef:personMADS><mads:namePart type="family">Rohou</mads:namePart><mads:namePart type="given">Erven</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="intervenant_2" type="personal"><tef:personMADS><mads:namePart type="family">Clauss</mads:namePart><mads:namePart type="given">Philippe</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="thesis.degree.grantor_1" type="corporate"><tef:personMADS><mads:namePart>Universite de Rennes 1</mads:namePart><mads:description>Sciences et technologie, medecine, pharmacie, odontologie, droit, economie, gestion, philosophie</mads:description></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="ecoleDoctorale_1" type="corporate"><tef:personMADS><mads:namePart>MATHSTIC</mads:namePart><mads:description>École doctorale Mathématiques et sciences et technologies de l'information et de la communication (Rennes)</mads:description></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="partenaireRecherche_1" type="corporate"><tef:personMADS><mads:namePart>Universite Bretagne Loire</mads:namePart><mads:description>
        
        
        
        
        
        Communaute des etablissements d enseignement superieur et de recherche (ComuE)
       
       
       
       
       
       </mads:description></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="partenaireRecherche_2" type="corporate"><tef:personMADS><mads:namePart>
INRIA-RENNES
</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>1848968</tef:taille>
    </tef:meta_fichier></mets:xmlData></mets:mdWrap></mets:techMD>
        
        <mets:rightsMD ID="dr_expr_thesard" CREATED="">
            <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" CREATED="">
            <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" CREATED="">
            <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="https://ecm.univ-rennes1.fr/nuxeo/site/esupversions/8dc05a1f-1d21-4b46-b764-0bb753fc396f"/></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-10122/oeuvre">
            <mets:div ADMID="dr_version" TYPE="VERSION_COMPLETE" CONTENTIDS="http://ori-oai-search.univ-rennes1.fr/uid/rennes1-ori-wf-1-10122/oeuvre/version">
                <mets:div DMDID="desc_edition" TYPE="EDITION" CONTENTIDS="http://ori-oai-search.univ-rennes1.fr/uid/rennes1-ori-wf-1-10122/oeuvre/version/edition">
                    <mets:fptr FILEID="FGrID1"/>
                </mets:div>
            </mets:div>
        </mets:div>
    </mets:structMap>
</mets:mets>