Operating System - HP-UX
1834330 Members
2260 Online
110066 Solutions
New Discussion

Binaries, builds, and cross-architecture compatibility question

 
SOLVED
Go to solution
Fred Vogel
Frequent Advisor

Binaries, builds, and cross-architecture compatibility question

Hello,

We have been developing SW on HP-UX PA-RISC systems for a number of years. We are starting to develop for Itanium systems now. My understanding is that the processors/hw are different so a PA binary will not run on an IA machine. Is this correct? Is there a compatibility mode that would allow this to run?

Also, since there are .sl libraries, etc on the 11.23v2 system, is it possible to me to make builds for the PA-RISC machines on this system? May sound dumb, but builds go a lot faster on the new machine.

thank you for any advice you have.

Fred
5 REPLIES 5
Patrick Wallek
Honored Contributor

Re: Binaries, builds, and cross-architecture compatibility question

>>>My understanding is that the processors/hw are different so a PA binary will not run on an IA machine. Is this correct?

Actually, no that is not correct. The Itanium machines have this thing called the 'Aries' emulator built in. This allows PA-RISC programs to run on the IA architecture machines. Yu will pay a performance penalty by doing this, but it should still run. I don't think there is anything special you have to do to invoke Aries. I believe it is automatically invoked if a PA executable is run.

I **THINK** you should be able to build PA binaries on theh IA box. It should be a matter of choosing the correct compiler options to do so.
A. Clay Stephenson
Acclaimed Contributor

Re: Binaries, builds, and cross-architecture compatibility question

PA-RISC code will not run on Itanium (at least directly) but there is an ARIES emulator that will allow PA-RISC code to run on Itanium (the reverse is not true). You could produce all your code on PA-RISC and it will thus run on both platforms. The downside is that the emulation incurrs about a 3x to 5x performance degradation. That's not nearly as bad as it sounds because this only applies to that portion of the code that is cpu constained --- and typically UNIX applications are generally i/o rather than cpu bound --- so coupled with faster Itanium processors -- the overall performance may be very comparable.

In any event, you would be better advised to produce native code for both platforms and I don't think cross-compilation is possible.
If it ain't broke, I can fix that.
Laurent Menase
Honored Contributor
Solution

Re: Binaries, builds, and cross-architecture compatibility question

Hi Fred;

Like said previously Aries will run any PA application on an IA system transparantly for the user.
http://devresource.hp.com/drc/STK/docs/refs/ieee_aries.pdf?jumpid=reg_R1002_USEN


Else to make cross compilation, you must get a pa dev environment in a Xdev area playing with
environment variables, but only on a IA64 system.

But the more easy is to do native compilation.
Fred Vogel
Frequent Advisor

Re: Binaries, builds, and cross-architecture compatibility question

Thank you very much all! This is great news to me. I had seen something on Aeries (sp?) and wondered what is was all about.

Hope that wasn't too newbie a question...but that's what I am at this box.

Fred
Dennis Handly
Acclaimed Contributor

Re: Binaries, builds, and cross-architecture compatibility question

>is it possible to me to make builds for the PA-RISC machines on this system?

While it is possible (for me anyway ;-), it isn't supported. The best we can do is give you a pat on the back and say see this page:
http://h21007.www2.hp.com/dspp/tech/tech_TechDocumentDetailPage_IDX/1,1701,2548,00.html