mboost-dp1
x86 emulator... til x86
- Forside
- ⟨
- Forum
- ⟨
- Programmering
Hvis man nu har optimeret en stykke software til en bestemt x86-baseret hardware platform (vi kan kalde den Benny) findes der så en eller anden løsning til at emulerere og benchmarke softwaren på en helt anden x86-baseret platform (kald den Kurt) som om den kørte på Benny?
F.eks. hvis Benny er Intel Core i7 og Kurt er min Intel Atom netbook, kan jeg så få en emulator der afvikler mit software på min netbook sådan så det for softwaren 'ser ud' som om den kører på en Intel Core i7 - med så høj 'fidelity' at benchmarks på den emulerede maskine er omtrent det samme som det ville være på en native?
Lyder som noget der ville være ret svært at lave! Men man ved jo aldrig...
F.eks. hvis Benny er Intel Core i7 og Kurt er min Intel Atom netbook, kan jeg så få en emulator der afvikler mit software på min netbook sådan så det for softwaren 'ser ud' som om den kører på en Intel Core i7 - med så høj 'fidelity' at benchmarks på den emulerede maskine er omtrent det samme som det ville være på en native?
Lyder som noget der ville være ret svært at lave! Men man ved jo aldrig...
Det lyder fuldkommen umuligt.
Man får jo heller ikke en Skoda til at opføre sig som en Ferrari ved at ændre lidt på dens software.
Jeg er klar over at det kun er et program hvor det skal se sådan ud, men alligevel.
Det vil kun give mening, hvis programmet har en bremse indbygget, så det altid holder ydelsen så lav, at det kører ens på ALLE maskiner.
Men det er måske netop dette du er ude efter?
Man får jo heller ikke en Skoda til at opføre sig som en Ferrari ved at ændre lidt på dens software.
Jeg er klar over at det kun er et program hvor det skal se sådan ud, men alligevel.
Det vil kun give mening, hvis programmet har en bremse indbygget, så det altid holder ydelsen så lav, at det kører ens på ALLE maskiner.
Men det er måske netop dette du er ude efter?
Du har indtil videre kun følgende:
http://en.wikipedia.org/wiki/List_of_computer_syst...
http://en.wikipedia.org/wiki/Comparison_of_platfor...
http://en.wikipedia.org/wiki/List_of_computer_syst...
http://en.wikipedia.org/wiki/Comparison_of_platfor...
Man kan emulere features. De fleste processor-producenter laver simulatore til deres hw. Og hvis det er microprocessore vi taler om, så kan de også til vis grad også simulere clockfrekvensen. Men det lyder ret urealistisk at simulere clocken på én desktop-processor, via en anden desktop-processor.
Det er ikke givet man kan simulere feks 3Dnow, eller andre specifike extensions på en cpu der ikke har denne extension.
Dels fordi der også kan være noget licens mæssigt involveret.
Dog skal jeg ikke udelukke at chip producenter måske har emulatore til disse liggende.
Oftes vil det være cpu cycles der bliver sat, med mindre vi er ude i noget maskinkode.
Dels fordi der også kan være noget licens mæssigt involveret.
Dog skal jeg ikke udelukke at chip producenter måske har emulatore til disse liggende.
Oftes vil det være cpu cycles der bliver sat, med mindre vi er ude i noget maskinkode.
#1
Hvis det er funktionalitet du vil teste skal du ud og finde en virkeligt god emulator. Jeg vil være lidt skeptisk overfor en emulators evne til at håndtere forskellene mellem diverse x86/x86-64 implementationer korrekt.
Hvis det er hastighed du vil teste så er der to cases:
A) emulerede hurtigere end den fysiske = umuligt
B) emulerede langsommere end den fysiske = potentielt muligt med en emulator
Som beskrevet lyder det som om du har en A.
Hvis det er funktionalitet du vil teste skal du ud og finde en virkeligt god emulator. Jeg vil være lidt skeptisk overfor en emulators evne til at håndtere forskellene mellem diverse x86/x86-64 implementationer korrekt.
Hvis det er hastighed du vil teste så er der to cases:
A) emulerede hurtigere end den fysiske = umuligt
B) emulerede langsommere end den fysiske = potentielt muligt med en emulator
Som beskrevet lyder det som om du har en A.
cnx (6) skrev:Hvilken forskel er det du søger ?
Altså er det med eller uden visse cpu features du ønsker at emulere ?
Det er som sådan hele forskellen mellem målplatformen og udviklingsplatformen jeg søger. Konkret handler det om at jeg vil give nogle udviklere mulighed for at optimere deres programmer til en bestemt hardwareplatform selv om de ikke selv har fysisk adgang til den.
Men at optimere hver feature enkeltvist lyder også som et fornuftigt bud.
Gå til top
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.