Treffer: Partial Evaluation of Dense Code on Sparse Structures

Title:
Partial Evaluation of Dense Code on Sparse Structures
Évaluation partielle de codes denses sur des structures creuses
Contributors:
Compilation et Analyse, Logiciel et Matériel (CASH), Laboratoire de l'Informatique du Parallélisme (LIP), École normale supérieure de Lyon (ENS de Lyon), Université de Lyon-Université de Lyon-Université Claude Bernard Lyon 1 (UCBL), Université de Lyon-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-École normale supérieure de Lyon (ENS de Lyon), Université de Lyon-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-Centre Inria de Lyon, Institut National de Recherche en Informatique et en Automatique (Inria), PEPR NumPEX, INRIA Lyon, CNRS, ENS de Lyon, Université de Lyon
Source:
RR-9534. :16-16
Publisher Information:
CCSD, 2023.
Publication Year:
2023
Collection:
collection:ENS-LYON
collection:CNRS
collection:INRIA
collection:UNIV-LYON1
collection:INRIA-RRRT
collection:LIP
collection:INRIA2
collection:LARA
collection:UDL
collection:UNIV-LYON
collection:INRIA-LYS
Original Identifier:
HAL: hal-04358187
Document Type:
Report report<br />Reports
Language:
English
Rights:
info:eu-repo/semantics/OpenAccess
URL: http://creativecommons.org/licenses/by/
Accession Number:
edshal.hal.04358187v1
Database:
HAL

Weitere Informationen

Most HPC computations process sparse tensors. The resulting code ishighly dynamic, which makes code optimization quite challenging. Oneway is to start from the original dense specification, which isusually much more regular and ready to be optimized thanks tostate-of-the-art program optimization algorithms. Then, to specializethat code on the sparse input structure. In this paper, we propose anovel approach to apply that specialization. The key ingredient of ouralgorithm is the transitive closure of affine relation, for whichefficient and accurate heuristics exist. Experimental evaluation showsthe effectiveness of our approach.
La plupart des calculs HPC manipulent des tenseurs creux. Le code résultant est très dynamique, ce qui rend l'optimisation du code assez difficile. Une méthode est de partir de la spécification dense originale, qui est généralement beaucoup plus régulière et se prête bien mieux à l'optimisation de code; et ensuite, de spécialiser le code sur la structure d'entrée. Dans ce rapport, nous proposons une nouvelle approche pour appliquer cette spécialisation. L'ingrédient clé de notre algorithme est la fermeture transitive d'une relation affine, pour laquelle des heuristiques efficaces et précises existent. L'évaluation expérimentale confirme l'efficacité de notre approche.