I have few benchmark application complied for SPARC V8 32-bit architecture. I used them for performance evaluation of SPARC 32-bit processor. However, few application fall short of in performance. I want to test the performance with a 64-bit SPARC V9 architecture ( like OpenSPARC T1/T2). My question is will the compiled binaries for the 32-bit SPARC V8 architecture run in SPARC V9 architecture without any modifications? Are the binaries in both architectures compatible?
相关问题
- Faster loop: foreach vs some (performance of jsper
- Why wrapping a function into a lambda potentially
- Ado.net performance:What does SNIReadSync do?
- Device support warning : Google play 2019
- Preventing relayout on hiding status bar (faking S
相关文章
- Why windows 64 still makes use of user32.dll etc?
- DOM penalty of using html attributes
- Which is faster, pointer access or reference acces
- Django is sooo slow? errno 32 broken pipe? dcramer
- Understanding the difference between Collection.is
- parallelizing matrix multiplication through thread
- How to determine JS bottlenecks in React Native co
- Difference between SuspendLayout and BeginUpdate
Presuming that you are using the same Operating System though perhaps at a newer version. Then yes. Solaris Sparc is very binary backward compatible. Each revision of the Sparc architecture was designed with this in mind.
Things you should keep in mind:
So remember Sparc v7 , Sparc v8 and Sparc v9 are not chip architectures they are Instruction Set Architectures. The performance for Sparc is mainly dependent on the implementation of the CPU Architecture. Thew newest Sparc processors from Oracle are improving single threaded performance much more than in the past something to keep in mind as well (even if they would burn a hole in your wallet the size of Texas).
If your performance is falling short and you are designing a FPGA based CPU seriously consider improving your CPU design to increase throughput.
Terminology confusion ...
SPARC is a little bit like ARM. You have:
sun4[a-z]
; actual tapeout only forsun4
,sun4c
,sun4d
,sun4m
,sun4u
andsun4v
This corresponds to
ARM[1-9]
,ARM11
,Cortex-...
, i.e. evolution of the CPU design.sparcv7
,sparcv8
/sparcv8+
,sparcv9
; some of these are 32bit,sparcv9
is 64bitThis corresponds to
ARMv[0-9]
, revs on the instruction set.ARM here has Thumb[2], 32bit ARM and ARMv8/64bit.
In this context,
sparcv9
is the 64bit instruction set and therefore requires the 64bit operating mode; the same binary encoding might have different meanings in 32bit/64bit modes and thereforesparcv7/8
code will not run in 64bit mode.Still,
sun4u
andsun4v
CPU architectures support the 32bit mode - with asparcv8+
instruction set plus a few extensions, andsparcv8
in itself being a superset ofsparcv7
. Sun/Oracle pride themselves of their binary backwards compatibility; all current SPARC CPUs should run existing 32bit binary code without problems. I assume, in this context, that you're talking about Solaris binaries ?