Software de transformare a codului

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Code Morphing Software ( CMS ) este o tehnologie software dezvoltată de compania Transmeta și integrată în familiile de microprocesoare VLIW Crusoe și Efficeon .

Software-ul Code Morphing este un program care traduce ansamblul de instrucțiuni x86 în instrucțiuni VLIW. CMS este un strat software care separă setul de instrucțiuni x86 de setul de instrucțiuni utilizat efectiv de procesor. Acest strat permite Transmeta să creeze microprocesoare bazate pe arhitecturi foarte paralele și eficiente, cum ar fi cele VLIW, capabile să execute cod compilat pentru procesoare x86.

Într-un procesor superscalar clasic, codul x86 este analizat de componentele hardware ale microprocesorului pentru a identifica instrucțiunile executabile în paralel și, prin urmare , paralelismul nivelului de instrucțiune al programelor. Într-un procesor Transmeta, codul este analizat de CMS, care îl traduce în instrucțiuni VLIW, unde paralelismul este explicit. Acest lucru permite reducerea considerabilă a dimensiunilor microprocesorului și, prin urmare, a consumului.

Motorul CMS ar putea interpreta teoretic și alte seturi de instrucțiuni precum cele ale arhitecturilor PowerPC sau SPARC, deși Transmeta nu a distribuit niciodată CMS pentru arhitecturi non-x86. Mai mult, CMS permite Transmeta să modifice arhitectura internă chiar și într-un mod radical, fără a fi nevoie să vă faceți griji cu privire la compatibilitatea software, deoarece CMS va adapta codul x86 pentru instrucțiunile noii arhitecturi. De fapt, în timp ce Crusoe era un microprocesor pe 128 de biți, Efficeon este un microprocesor pe 256 de biți, dar acest lucru nu a produs probleme de compatibilitate sau de performanță.

Dezavantajul utilizării CMS vine din degradarea performanței datorată traducerii codului. Dacă programul în execuție execută în principal aceleași porțiuni de cod, CMS nu reduce performanța, deoarece procesorul memorează în cache codul tradus utilizat cel mai frecvent. Pe de altă parte, dacă programul folosește adesea porțiuni noi de cod, CMS afectează performanța, chiar dacă degradarea performanței este dificil de cuantificat, deoarece este strâns legată de codul executat.

linkuri externe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT