L'article propose Symphony, une architecture hybride programmable et spécialisée conçue pour remédier aux inefficacités du système mémoire dans les architectures haute performance actuelles comme les GPU. Elle se concentre sur l'orchestration des données à travers la hiérarchie mémoire afin de réduire les mouvements de données inutiles et la distance.
- Symphony utilise des unités reconfigurables spécialisées pour les calculs en virgule flottante selon le plafond (roofline) ainsi que des fonctionnalités d'orchestration de données telles que la génération d'adresses, le filtrage des données et le traitement des métadonnées clairsemées.
- Les ressources de calcul sont réparties dans toute la hiérarchie mémoire sur puce pour prendre en charge à la fois les tâches programmables et spécialisées.
- L'architecture vise à gérer un mélange d'algorithmes clairsemés et denses que les accélérateurs spécifiques au domaine ne peuvent généralement pas gérer.
Symphony égale la performance des ASIC non programmables dans l'algèbre des tenseurs clairsemés, offrant une amélioration de 31x du temps d'exécution et de 44x de l'efficacité énergétique par rapport à un GPU provisionné de manière comparable.