<?xml version="1.0" encoding="UTF-8"?><mets:mets xmlns:mets="http://www.loc.gov/METS/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:mads="http://www.loc.gov/mads/" xmlns:metsRights="http://cosimo.stanford.edu/sdr/metsrights/" xmlns:suj="http://www.theses.fr/namespace/sujets" xmlns:tef="http://www.abes.fr/abes/documents/tef" xmlns:tefextension="http://www.abes.fr/abes/documents/tefextension" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/METS/ http://www.abes.fr/abes/documents/tef/recommandation/tef_schemas.xsd">
<mets:metsHdr CREATEDATE="2018-10-15T17:17:05" ID="ABES.STAR.THESE_111360.METS_HEADER" LASTMODDATE="2024-04-17T03:42:16Z" RECORDSTATUS="valide">
<mets:agent ROLE="CREATOR">
<mets:name/>
<mets:note>Note</mets:note>
</mets:agent>
<mets:agent ROLE="DISSEMINATOR">
<mets:name>ABES</mets:name>
</mets:agent>
<mets:altRecordID ID="ABES.STAR.THESE_111360.METS_HEADER.ALTERNATE" TYPE=""/>
</mets:metsHdr>
<mets:dmdSec ID="ABES.STAR.THESE_111360.DESCRIPTION_BIBLIOGRAPHIQUE">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_desc_these">
<mets:xmlData>
<tef:thesisRecord>
<dc:title xml:lang="en">Automatic code generation and optimization of multi-dimensional stencil computations on distributed-memory architectures</dc:title>
<dcterms:alternative xml:lang="fr">Génération automatique de code et optimisation de calculs stencils sur des architectures à mémoire distribuée</dcterms:alternative>
<dc:subject xml:lang="fr">Langage dédié</dc:subject>
<dc:subject xml:lang="fr">Verroux ordonnés de lecture/écriture</dc:subject>
<dc:subject xml:lang="fr">Calculs stencils</dc:subject>
<dc:subject xml:lang="fr">Modèle polyédrique</dc:subject>
<dc:subject xml:lang="fr">Mémoire distribuée</dc:subject>
<dc:subject xml:lang="en">Domain-specific language</dc:subject>
<dc:subject xml:lang="en">Ordered read write locks</dc:subject>
<dc:subject xml:lang="en">Stencil computations</dc:subject>
<dc:subject xml:lang="en">Polyhedral model</dc:subject>
<dc:subject xml:lang="en">Distributed memory</dc:subject>
<dc:subject xsi:type="dcterms:DDC">004</dc:subject>
<tef:sujetRameau xml:lang="fr">
<tef:vedetteRameauNomCommun>
<tef:elementdEntree autoriteExterne="02787656X" autoriteSource="Sudoc">Parallélisme (informatique)</tef:elementdEntree>
</tef:vedetteRameauNomCommun>
<tef:vedetteRameauNomCommun>
<tef:elementdEntree autoriteExterne="050230816" autoriteSource="Sudoc">Mémoire partagée répartie</tef:elementdEntree>
</tef:vedetteRameauNomCommun>
<tef:vedetteRameauNomCommun>
<tef:elementdEntree autoriteExterne="147552435" autoriteSource="Sudoc">Microprocesseurs multi-coeurs</tef:elementdEntree>
</tef:vedetteRameauNomCommun>
<tef:vedetteRameauNomCommun>
<tef:elementdEntree autoriteExterne="229785298" autoriteSource="Sudoc">Langages dédiés (informatique)</tef:elementdEntree>
</tef:vedetteRameauNomCommun>
</tef:sujetRameau>
<dcterms:abstract xml:lang="fr">Nous proposons Dido, un langage dédié (DSL) implicitement parallèle qui capture les spécifications de haut niveau des stencils et génère automatiquement du code parallèle de haute performance pour les architectures à mémoire distribuée. Le code généré utilise ORWL en tant que interface de communication et runtime. Nous montrons que Dido réalise un grand progrès en termes de productivité sans sacrifier les performances. Dido prend en charge une large gamme de calculs stencils ainsi que des applications réelles à base de stencils. Nous montrons que le code généré par Dido est bien structuré et se prête à de différentes optimisations possibles. Nous combinons également la technique de génération de code de Dido avec Pluto l'optimiseur polyédrique de boucles pour améliorer la localité des données. Nous présentons des expériences qui prouvent l'efficacité et la scalabilité du code généré qui atteint de meilleures performances que les implémentations ORWL et MPI écrites à la main.</dcterms:abstract>
<dcterms:abstract xml:lang="en">In this work, we present Dido, an implicitly parallel domain-specific language (DSL) that captures high-level stencil abstractions and automatically generates high-performance parallel stencil code for distributed-memory architectures. The generated code uses ORWL as a communication and synchronization backend. We show that Dido achieves a huge progress in terms of programmer productivity without sacrificing the performance. Dido supports a wide range of stencil computations and real-world stencil-based applications. We show that the well-structured code generated by Dido lends itself to different possible optimizations and study the performance of two of them. We also combine Dido's code generation technique with the polyhedral loop optimizer Pluto to increase data locality and improve intra-node data reuse. We present experiments that prove the efficiency and scalability of the generated code that outperforms both ORWL and MPI hand-crafted implementations.</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="ABES.STAR.THESE_111360.VERSION_COMPLETE.DESCRIPTION.EDITION_ARCHIVAGE">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_desc_edition">
<mets:xmlData>
<tef:edition>
<dcterms:medium xsi:type="dcterms:IMT">PDF</dcterms:medium>
<dcterms:extent>2486039</dcterms:extent>
<tef:editeur>
<tef:nom>Université de Strasbourg</tef:nom>
<tef:place>Strasbourg</tef:place>
</tef:editeur>
<dcterms:issued xsi:type="dcterms:W3CDTF">2019-12-31</dcterms:issued>
<dc:identifier xsi:type="dcterms:URI">https://theses.hal.science/tel-02166980</dc:identifier>
</tef:edition>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
<mets:dmdSec ID="ABES.STAR.THESE_111360.VERSION_COMPLETE.DESCRIPTION.EDITION_1">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_desc_edition">
<mets:xmlData>
<tef:edition>
<dcterms:medium xsi:type="dcterms:IMT">application/pdf</dcterms:medium>
<dcterms:extent>2168516</dcterms:extent>
<dc:identifier xsi:type="dcterms:URI">https://publication-theses.unistra.fr/public/theses_doctorat/2018/Saied_Mariem_2018_ED269.pdf</dc:identifier>
<dc:identifier xsi:type="dcterms:URI">http://www.theses.fr/2018STRAD036/abes</dc:identifier>
<dc:identifier xsi:type="dcterms:URI">https://theses.hal.science/tel-02166980</dc:identifier>
<dc:identifier xsi:type="dcterms:URI">https://theses.hal.science/tel-02166980</dc:identifier>
<dc:identifier xsi:type="dcterms:URI">https://theses.hal.science/tel-02166980</dc:identifier>
</tef:edition>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
<mets:amdSec>
<mets:techMD ID="ABES.STAR.THESE_111360.ADMINISTRATION">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_admin_these">
<mets:xmlData>
<tef:thesisAdmin>
<tef:auteur>
<tef:nom>Saied</tef:nom>
<tef:prenom>Mariem</tef:prenom>
<tef:dateNaissance>1988-09-12</tef:dateNaissance>
<tef:nationalite scheme="ISO-3166-1">FR</tef:nationalite>
<tef:autoriteExterne autoriteSource="Sudoc">236683624</tef:autoriteExterne>
</tef:auteur>
<dc:identifier xsi:type="tef:nationalThesisPID">https://theses.fr/2018STRAD036</dc:identifier>
<dc:identifier xsi:type="tef:NNT">2018STRAD036</dc:identifier>
<dc:identifier xsi:type="tef:DOI">https://doi.org/10.70675/00af040az1873z4e5dza5b3z1e835dc49caf</dc:identifier>
<dcterms:dateAccepted xsi:type="dcterms:W3CDTF">2018-09-25</dcterms:dateAccepted>
<tef:thesis.degree>
<tef:thesis.degree.discipline xml:lang="fr">Informatique</tef:thesis.degree.discipline>
<tef:thesis.degree.grantor>
<tef:nom>Strasbourg</tef:nom>
<tef:autoriteExterne autoriteSource="Sudoc">131056549</tef:autoriteExterne>
</tef:thesis.degree.grantor>
<tef:thesis.degree.level>Doctorat</tef:thesis.degree.level>
<tef:thesis.degree.name xml:lang="fr">Docteur es</tef:thesis.degree.name>
</tef:thesis.degree>
<tef:theseSurTravaux>non</tef:theseSurTravaux>
<tef:avisJury>oui</tef:avisJury>
<tef:directeurThese>
<tef:nom>Gustedt</tef:nom>
<tef:prenom>Jens</tef:prenom>
<tef:autoriteInterne>MADS_DIRECTEUR_DE_THESE_1</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="Sudoc">077834437</tef:autoriteExterne>
</tef:directeurThese>
<tef:directeurThese>
<tef:nom>Muller</tef:nom>
<tef:prenom>Gilles</tef:prenom>
<tef:autoriteInterne>MADS_DIRECTEUR_DE_THESE_2</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="Sudoc">067289908</tef:autoriteExterne>
</tef:directeurThese>
<tef:presidentJury>
<tef:nom>Bastoul</tef:nom>
<tef:prenom>Cédric</tef:prenom>
<tef:autoriteInterne>MADS_PRESIDENT_DU_JURY</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="Sudoc">089425200</tef:autoriteExterne>
</tef:presidentJury>
<tef:rapporteur>
<tef:nom>Réveillère</tef:nom>
<tef:prenom>Laurent</tef:prenom>
<tef:autoriteInterne>MADS_RAPPORTEUR_1</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="Sudoc">059396776</tef:autoriteExterne>
</tef:rapporteur>
<tef:rapporteur>
<tef:nom>Contassot-Vivier</tef:nom>
<tef:prenom>Sylvain</tef:prenom>
<tef:autoriteInterne>MADS_RAPPORTEUR_2</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="Sudoc">121332489</tef:autoriteExterne>
</tef:rapporteur>
<tef:ecoleDoctorale>
<tef:nom>École doctorale Mathématiques, sciences de l'information et de l'ingénieur (Strasbourg ; 1997-....)</tef:nom>
<tef:autoriteInterne>MADS_ECOLE_DOCTORALE_1</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="Sudoc">156504863</tef:autoriteExterne>
</tef:ecoleDoctorale>
<tef:partenaireRecherche type="laboratoire">
<tef:nom>Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie (Strasbourg ; 2013-....)</tef:nom>
<tef:autoriteInterne>MADS_PARTENAIRE_DE_RECHERCHE_1</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="Sudoc">176969721</tef:autoriteExterne>
<tef:autoriteExterne autoriteSource="labTEL">260728</tef:autoriteExterne>
</tef:partenaireRecherche>
<tef:partenaireRecherche type="laboratoire">
<tef:nom>Inria Nancy - Grand Est</tef:nom>
<tef:autoriteInterne>MADS_PARTENAIRE_DE_RECHERCHE_2</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="labTEL">129671</tef:autoriteExterne>
</tef:partenaireRecherche>
<tef:partenaireRecherche type="equipeRecherche">
<tef:nom>Compilation pour les Architectures MUlti-coeurS</tef:nom>
<tef:autoriteInterne>MADS_PARTENAIRE_DE_RECHERCHE_3</tef:autoriteInterne>
<tef:autoriteExterne autoriteSource="labTEL">233382</tef:autoriteExterne>
</tef:partenaireRecherche>
<tef:oaiSetSpec>ddc:004</tef:oaiSetSpec>
<tef:MADSAuthority authorityID="MADS_DIRECTEUR_DE_THESE_1" type="personal">
<tef:personMADS>
<mads:namePart type="family">Gustedt</mads:namePart>
<mads:namePart type="given">Jens</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
<tef:MADSAuthority authorityID="MADS_DIRECTEUR_DE_THESE_2" type="personal">
<tef:personMADS>
<mads:namePart type="family">Muller</mads:namePart>
<mads:namePart type="given">Gilles</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
<tef:MADSAuthority authorityID="MADS_PRESIDENT_DU_JURY" type="personal">
<tef:personMADS>
<mads:namePart type="family">Bastoul</mads:namePart>
<mads:namePart type="given">Cédric</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
<tef:MADSAuthority authorityID="MADS_RAPPORTEUR_1" type="personal">
<tef:personMADS>
<mads:namePart type="family">Réveillère</mads:namePart>
<mads:namePart type="given">Laurent</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
<tef:MADSAuthority authorityID="MADS_RAPPORTEUR_2" type="personal">
<tef:personMADS>
<mads:namePart type="family">Contassot-Vivier</mads:namePart>
<mads:namePart type="given">Sylvain</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
<tef:MADSAuthority authorityID="MADS_ECOLE_DOCTORALE_1" type="corporate">
<tef:personMADS>
<mads:namePart type="family">École doctorale Mathématiques, sciences de l'information et de l'ingénieur (Strasbourg ; 1997-....)</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
<tef:MADSAuthority authorityID="MADS_PARTENAIRE_DE_RECHERCHE_1" type="corporate">
<tef:personMADS>
<mads:namePart type="family">Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie (Strasbourg)</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
<tef:MADSAuthority authorityID="MADS_PARTENAIRE_DE_RECHERCHE_2" type="corporate">
<tef:personMADS>
<mads:namePart type="family">Inria Nancy - Grand Est</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
<tef:MADSAuthority authorityID="MADS_PARTENAIRE_DE_RECHERCHE_3" type="corporate">
<tef:personMADS>
<mads:namePart type="family">Compilation pour les Architectures MUlti-coeurS</mads:namePart>
</tef:personMADS>
</tef:MADSAuthority>
</tef:thesisAdmin>
</mets:xmlData>
</mets:mdWrap>
</mets:techMD>
<mets:techMD ID="ABES.STAR.THESE_111360.VERSION_COMPLETE.EDITION_ARCHIVAGE.TECH_FICHIER.DOSSIER_1.DOSSIER_1.FICHIER_1">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_tech_fichier">
<mets:xmlData>
<tef:meta_fichier>
<tef:formatFichier>PDF</tef:formatFichier>
<tef:taille>2486039</tef:taille>
</tef:meta_fichier>
</mets:xmlData>
</mets:mdWrap>
</mets:techMD>
<mets:rightsMD ID="ABES.STAR.THESE_111360.DROITS_UNIVERSITE">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_etablissement_these">
<mets:xmlData>
<metsRights:RightsDeclarationMD RIGHTSCATEGORY="CONTRACTUAL">
<metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
<metsRights:Permissions COPY="false" DELETE="false" DISPLAY="true" DUPLICATE="true" MODIFY="false" PRINT="true"/>
</metsRights:Context>
<metsRights:Context CONTEXTCLASS="INSTITUTIONAL AFFILIATE">
<metsRights:Permissions COPY="false" DELETE="false" DISPLAY="true" DUPLICATE="true" MODIFY="false" PRINT="true"/>
</metsRights:Context>
</metsRights:RightsDeclarationMD>
</mets:xmlData>
</mets:mdWrap>
</mets:rightsMD>
<mets:rightsMD ID="ABES.STAR.THESE_111360.DROITS_DOCTORANT">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_auteur_these">
<mets:xmlData>
<metsRights:RightsDeclarationMD RIGHTSCATEGORY="CONTRACTUAL">
<metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
<metsRights:Permissions COPY="false" DELETE="false" DISPLAY="true" DUPLICATE="true" MODIFY="false" PRINT="true"/>
</metsRights:Context>
<metsRights:Context CONTEXTCLASS="INSTITUTIONAL AFFILIATE">
<metsRights:Permissions COPY="false" DELETE="false" DISPLAY="true" DUPLICATE="true" MODIFY="false" PRINT="true"/>
</metsRights:Context>
</metsRights:RightsDeclarationMD>
</mets:xmlData>
</mets:mdWrap>
</mets:rightsMD>
<mets:rightsMD ID="ABES.STAR.THESE_111360.VERSION_COMPLETE.DROITS">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_version">
<mets:xmlData>
<metsRights:RightsDeclarationMD RIGHTSCATEGORY="CONTRACTUAL">
<metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
<metsRights:Permissions COPY="false" DELETE="false" DISPLAY="true" DUPLICATE="true" MODIFY="false" PRINT="true"/>
</metsRights:Context>
<metsRights:Context CONTEXTCLASS="INSTITUTIONAL AFFILIATE">
<metsRights:Permissions COPY="false" DELETE="false" DISPLAY="true" DUPLICATE="true" MODIFY="false" PRINT="true"/>
</metsRights:Context>
</metsRights:RightsDeclarationMD>
</mets:xmlData>
</mets:mdWrap>
</mets:rightsMD>
</mets:amdSec>
<mets:fileSec>
<mets:fileGrp ID="ABES.STAR.THESE_111360.VERSION_COMPLETE.EDITION_ARCHIVAGE.FILEGRP" USE="archive">
<mets:file ADMID="ABES.STAR.THESE_111360.VERSION_COMPLETE.EDITION_ARCHIVAGE.TECH_FICHIER.DOSSIER_1.DOSSIER_1.FICHIER_1" ID="ABES.STAR.THESE_111360.VERSION_COMPLETE.EDITION_ARCHIVAGE.DOSSIER_1.DOSSIER_1.FICHIER_1" SEQ="1">
<mets:FLocat LOCTYPE="URL" xlink:href="STRA/THESE_111360/document/0/0/Saied_Mariem_2018_ED269_A.pdf"/>
</mets:file>
</mets:fileGrp>
</mets:fileSec>
<mets:structMap TYPE="logical">
<mets:div ADMID="ABES.STAR.THESE_111360.ADMINISTRATION ABES.STAR.THESE_111360.DROITS_UNIVERSITE ABES.STAR.THESE_111360.DROITS_DOCTORANT" CONTENTIDS="CONTENTIDS.ABES.STAR.THESE_111360" DMDID="ABES.STAR.THESE_111360.DESCRIPTION_BIBLIOGRAPHIQUE" TYPE="THESE">
<mets:div ADMID="ABES.STAR.THESE_111360.VERSION_COMPLETE.DROITS" CONTENTIDS="CONTENTIDS.ABES.STAR.THESE_111360.ABES.STAR.THESE_111360.VERSION_COMPLETE" TYPE="VERSION_COMPLETE">
<mets:div CONTENTIDS="CONTENTIDS.ABES.STAR.THESE_111360.VERSION_COMPLETE.EDITION_ARCHIVAGE" DMDID="ABES.STAR.THESE_111360.VERSION_COMPLETE.DESCRIPTION.EDITION_ARCHIVAGE" TYPE="EDITION">
<mets:fptr FILEID="ABES.STAR.THESE_111360.VERSION_COMPLETE.EDITION_ARCHIVAGE.FILEGRP"/>
</mets:div>
<mets:div CONTENTIDS="CONTENTIDS.ABES.STAR.THESE_111360.VERSION_COMPLETE.EDITION_1" DMDID="ABES.STAR.THESE_111360.VERSION_COMPLETE.DESCRIPTION.EDITION_1" TYPE="EDITION"/>
</mets:div>
</mets:div>
</mets:structMap>
</mets:mets>