Exploring and Evaluating Array Layout Restructuration for SIMDization
hal.structure.identifier | Laboratoire Bordelais de Recherche en Informatique [LaBRI] | |
hal.structure.identifier | Efficient runtime systems for parallel architectures [RUNTIME] | |
dc.contributor.author | HAINE, Christopher | |
hal.structure.identifier | Laboratoire Bordelais de Recherche en Informatique [LaBRI] | |
hal.structure.identifier | Efficient runtime systems for parallel architectures [RUNTIME] | |
dc.contributor.author | AUMAGE, Olivier | |
hal.structure.identifier | Laboratoire Bordelais de Recherche en Informatique [LaBRI] | |
hal.structure.identifier | Efficient runtime systems for parallel architectures [RUNTIME] | |
dc.contributor.author | ENGUERRAND, Petit | |
hal.structure.identifier | Laboratoire Bordelais de Recherche en Informatique [LaBRI] | |
hal.structure.identifier | Efficient runtime systems for parallel architectures [RUNTIME] | |
dc.contributor.author | BARTHOU, Denis | |
dc.date.accessioned | 2024-04-15T09:58:01Z | |
dc.date.available | 2024-04-15T09:58:01Z | |
dc.date.issued | 2014-09-15 | |
dc.date.conference | 2014-09-15 | |
dc.identifier.uri | https://oskar-bordeaux.fr/handle/20.500.12278/198964 | |
dc.description.abstract | Les unités de calcul vectorielles sont désormais omniprésentes dans les processeurs. L'utilisation des jeux d'instructions vectoriels est un facteur clé dans la recherche de performances pour de nombreuses applications. Les compilateurs modernes ont fait d'immenses progrès dans la génération d'un code vectorisé efficace. Cependant, ils peuvent encore échouer ou générer un code vectorisé de mauvaise qualité dans certains cas, du fait d'un conservatisme trop important, de la complexité du code source ou de capacités insuffisantes. Lorsque la vectorisation échoue, les programmeurs n'obtiennent que peu d'indices sur les causes réelles et les actions correctives à entreprendre. Notre proposition d'environnement de vectorisation guidée se base sur notre outil MAQAO de contrôle qualitatif de code assembleur pour analyser les binaires produits et rechercher les causes possibles empêchant la vectorisation. Cet environnement propose des stratégies d'amélioration du code et permet d'en vérifier immédiatement leur impact en termes de performances, à l'aide d'évaluations in-vivo des transformations suggérées. Grâce à notre environnement, le programmeur obtiens des orientations claires sur la manière d'améliorer son code et une estimation quantifiée du gain espéré de telles transformations. Nous présentons les résultat de notre outil sur la suite de tests TSVC. | |
dc.description.abstractEn | SIMD processor units have become ubiquitous. Using SIMD instructions is the key for performance for many applications. Modern compilers have made immense progress in generating efficient SIMD code. However, they still may fail or SIMDize poorly, due to conservativeness, source complexity or missing capabilities. When SIMDization fails, programmers are left with little clues about the root causes and actions to be taken. Our proposed guided SIMDization framework builds on the assembly-code quality assessment toolkit MAQAO to analyzes binaries for possible SIMDization hindrances. It proposes improvement strategies and readily quantifies their impact, using in vivo evaluations of suggested transformation. Thanks to our framework, the programmer gets clear directions and quantified expectations on how to improve his/her code SIMDizability. We show results of our technique on TSVC benchmark. | |
dc.language.iso | en | |
dc.title.en | Exploring and Evaluating Array Layout Restructuration for SIMDization | |
dc.type | Communication dans un congrès | |
dc.subject.hal | Informatique [cs]/Calcul parallèle, distribué et partagé [cs.DC] | |
dc.subject.hal | Informatique [cs]/Performance et fiabilité [cs.PF] | |
dc.description.sponsorshipEurope | Mont-Blanc 2, European scalable and power efficient HPC platform based onlow-power embedded technology | |
bordeaux.hal.laboratories | Laboratoire Bordelais de Recherche en Informatique (LaBRI) - UMR 5800 | * |
bordeaux.institution | Université de Bordeaux | |
bordeaux.institution | Bordeaux INP | |
bordeaux.institution | CNRS | |
bordeaux.conference.title | The 27th International Workshop on Languages and Compilers for Parallel Computing (LCPC 2014) | |
bordeaux.country | US | |
bordeaux.conference.city | Hillsboro | |
bordeaux.peerReviewed | oui | |
hal.identifier | hal-01070467 | |
hal.version | 1 | |
hal.invited | non | |
hal.proceedings | oui | |
hal.conference.organizer | Intel Corporation | |
hal.conference.end | 2014-09-17 | |
hal.popular | non | |
hal.audience | Internationale | |
dc.subject.it | SIMDization | |
dc.subject.it | performance tuning | |
dc.subject.it | performance model | |
hal.origin.link | https://hal.archives-ouvertes.fr//hal-01070467v1 | |
bordeaux.COinS | ctx_ver=Z39.88-2004&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.date=2014-09-15&rft.au=HAINE,%20Christopher&AUMAGE,%20Olivier&ENGUERRAND,%20Petit&BARTHOU,%20Denis&rft.genre=unknown |
Fichier(s) constituant ce document
Fichiers | Taille | Format | Vue |
---|---|---|---|
Il n'y a pas de fichiers associés à ce document. |