SPREPI: Selective Prediction and REplay for predicated Instructions

Nathanaël Prémillieu 1 André Seznec 1
1 ALF - Amdahl's Law is Forever
Inria Rennes – Bretagne Atlantique , IRISA-D3 - ARCHITECTURE
Résumé : Les processeurs basés sur le jeu d'instructions ARM ne sont plus seulement des processeurs à petit budget et à faible consommation. De nos jours, les concepteurs de processeurs ARM cherchent à créer des coeurs d'exécution à performances moyennes voire hautes, impliquant l'implémentation de l'état de l'art d'un moteur d'exécution dans le désordre. Cependant, permettre une exécution dans le désordre efficace peut se révéler difficle sur les codes ARM anciens à cause des instructions prédiquées. Dans cet article, nous proposons une nouvelle solution matérielle, la prédiction et le rejeu sélectif pour les instructions prédiquées (SPREPI) pour permettre une exécution efficace de codes avec des instructions prédiquées. Prédire les instructions prédiquées permet de résoudre le problème appelé le problème des définitions multiples. Elles sont prédites en utilisant soit un prédicteur à historique global des branchements et prédicats soit un prédicteur à historique des branchements seul. Cependant, l'utilisation systématique de la prédiction entraîne parfois des pertes de performances dramatiques. Des filtres efficaces sont proposés pour désactiver l'utilisation de la prédiction quand il y a des chances qu'elle soit contre-productive. De plus, une mauvaise prédiction de prédicat peut être aussi coûteuse qu'une mauvaise prédiction de branchement. Pour réduire ce coût, nous proposons un mécanisme matériel spécifique de rejeu sélectif ciblant les instructions prédiquées mal prédites. Nous montrons que SPREPI permet une exécution dans le désordre performante sur du code ARM, même lorsque le compilateur n'applique la transformation de if-conversion qu'aux branchements très courts. De plus, comme SPREPI prédit la plupart des instructions prédiquées, une solution matérielle relativement inefficace suffit à exécuter les quelques instructions prédiquées pour lesquelles la prédiction n'est pas utilisée.
Type de document :
Rapport
[Research Report] RR-8351, INRIA. 2013, pp.25
Liste complète des métadonnées

Littérature citée [20 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-00856160
Contributeur : Nathanaël Prémillieu <>
Soumis le : vendredi 30 août 2013 - 15:26:22
Dernière modification le : mardi 16 janvier 2018 - 15:54:17
Document(s) archivé(s) le : jeudi 6 avril 2017 - 11:13:27

Fichier

RR-8351.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : hal-00856160, version 1

Citation

Nathanaël Prémillieu, André Seznec. SPREPI: Selective Prediction and REplay for predicated Instructions. [Research Report] RR-8351, INRIA. 2013, pp.25. 〈hal-00856160〉

Partager

Métriques

Consultations de la notice

404

Téléchargements de fichiers

302