DEVICES, METHODS AND COMPUTER PROGRAMS FOR EXECUTING EXTENSION SET PROCESSOR INSTRUCTIONS ON A MULTI-CORE PROCESSOR
Devices, methods and computer programs for executing extension set processor instructions on a multi-core processor are disclosed. At least some of the disclosed embodiments allow leveraging a memory management device of a processor to map virtual memory addresses used by application code into physi...
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Patent |
Sprache: | eng ; fre |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Devices, methods and computer programs for executing extension set processor instructions on a multi-core processor are disclosed. At least some of the disclosed embodiments allow leveraging a memory management device of a processor to map virtual memory addresses used by application code into physical memory addresses used by a hardware memory bus of a computer system in a way that allows mapping different executable code blocks on different running cores. Thus, for cores supporting a given extension, such code blocks are provided that use the supported extension in a straightforward manner and with very little overhead, and, for cores not supporting the given extension, replacement code blocks are provided that emulate the unsupported extension with more basic and/or elementary instructions.
La présente invention concerne des dispositifs, des procédés et des programmes d'ordinateur pour exécuter des instructions de processeur d'ensemble d'extensions sur un processeur multicœur. Au moins certains des modes de réalisation décrits permettent d'exploiter un dispositif de gestion de mémoire d'un processeur pour mapper des adresses de mémoire virtuelle utilisées par un code d'application en adresses de mémoire physique utilisées par un bus de mémoire matérielle d'un système informatique d'une manière qui permet le mappage de différents blocs de codes exécutables sur différents cœurs d'exécution. Ainsi, pour des cœurs prenant en charge une extension donnée, de tels blocs de codes sont prévus, lesquels utilisent l'extension prise en charge d'une manière simple et avec très peu de surdébit, et, pour des cœurs ne prenant pas en charge l'extension donnée, des blocs de codes de remplacement sont prévus, lesquels émulent l'extension non prise en charge avec des instructions plus basiques et/ou élémentaires. |
---|