» Sign in
  

HP ARIES technology enables a binary compatibility migration solution to facilitate migration of HP 9000 HP-UX applications to HP-UX 11i for HP Integrity servers with the goals of correctness, reliability, performance delivery and quickest time to solution.

Key features of HP ARIES are:
  • Dynamic and Transparent
  • Absolutely no user intervention required to invoke ARIES
  • No re-compilation for HP 9000 applications required
  • Complete, correct and reliable
  • Support for all user mode HP 9000 applications, both 32-bit and 64-bit
  • Simplicity of ARIES design has yielded high reliability
  • Emulation of all (non-privileged) PA-RISC instructions
  • Same debugging tools can be used as on HP 9000 servers
  • Exact HP 9000 HP-UX - like interface
  • Bundled with the HP-UX OE, kernel support for transparency
  • Run applications on HP Integrity servers in same way as on HP 9000 servers
  • No CHROOT Jail - emulated applications have access to full file system without any special setup.
  • Good performance for wide range of HP 9000 applications
  • Quick time to market or deployment
  • ARIES can buy you time to pursue native port to HP-UX 11i on HP Integrity servers
  • Most applications work out of the box
  • OS and language runtime dependencies handled automatically
  • Ideal for HP 9000 applications
    • Using legacy libraries that may not be ported to Integrity HP-UX servers e.g. libcma.
    • Using legacy versions that may not be ported to Integrity HP-UX servers
    • Lost source code
    • ISV no longer supports or is out of business

Why HP ARIES and when

In general, HP ARIES is an excellent alternative for user space application migration from old HP 9000 servers where solution stack comprises of application versions that are not available natively on HP-UX 11i on HP Integrity servers.

HP ARIES is a proven solution that has successfully helped in a number of high profile migration projects. Using HP ARIES several customers have benefited from consolidation of old legacy PA-RISC applications on more efficient HP Integrity servers and realized the potential of converged infrastructure.

When ARIES is a recommended solution
  • Porting the application is an enormous effort and time to solution is critical
  • No access to source code
  • The application is reasonably well-behaved, i.e. it does not use undocumented or unsupported HP-UX features
  • Maximum performance is not a concern
  • The third party dependencies have not yet been migrated to HP-UX for HP Integrity servers
  • In-house developed customer applications

When ARIES is the ONLY solution
  • Legacy applications where application sources are not available
  • Application depends on legacy libraries which may not be ported to HP-UX 11i for HP Integrity servers. For example, libcma (CMA threads) on HP 9000 servers
  • Application uses legacy versions of software which may not be ported to HP-UX 11i for HP Integrity servers by the respective ISVs
  • Third party application vendors do not have plans to migrate their solutions to HP-UX 11i for HP Integrity servers
  • Porting the application cannot be completed with satisfactory quality with in a reasonable time

When ARIES is not the recommended solution
  • You want to harness full power of HP Integrity server by native optimizations and HP-UX 11i APIs
  • You have concerns around emulated application behavior and performance
  • Independent Software Vendor (ISV) refuses to offer application support under ARIES
  • Known performance concerns:
    • Floating point operations intensive applications
    • Short running Java based applications
    • Application is constrained on process resident memory footprint size
    • Application is constrained on process startup time
    • Applications like shells, parsers, interpreters which do not have good locality of execution
The HP ARIES migration solution stack comprises of following products, features and functionalities:
  • HP ARIES dynamic binary translator

    Transparent execution of HP 9000 HP-UX applications on HP-UX 11i for HP Integrity servers. HP Integrity HP-UX 11i operating system support for PA-RISC executable invocation

    Automatic launching of ARIES upon PA-RISC executable invocation

    Support for all flavors of HP 9000 HP-UX executables e.g. EXEC_MAGIC, SHARE_MAGIC, SHMEM_MAGIC, q3p, q4p and ELF64.
  • HP 9000 HP-UX system shared libraries support on HP-UX 11i for HP Integrity servers>

    Provides required runtime for HP 9000 applications under ARIES. All system shared libraries required by HP 9000 applications are delivered on HP-UX 11i for HP Integrity servers.
  • HP 9000 HP-UX GDB on HP-UX 11i for HP Integrity servers

    HP Integrity WDB/GDB package includes HP 9000 HP-UX GDB

    On HP-UX 11i for HP Integrity servers, HP 9000 HP-UX GDB can be used to debug HP 9000 applications, core file analysis, attaching to emulated processes and memory leak detection.


High level technology overview

 

HP ARIES documentation

Following resources attempt to provide a high level overview of ARIES, supportability features, and limitations. The information on this page includes:

» ARIES high level overview
» HP 9000 application core file under ARIES
» HP 9000 application tracing using tusc under ARIES
» Debugging the application using GDB under ARIES
» Attaching GDB to an already running emulated process
» Detecting memory leaks using GDB under ARIES
» ARIES man page - aries(5)
» ARIES limitations

ARIES high level overview

HP ARIES high level overview

The ARIES fast interpreter emulates a complete set of non-privileged PA-RISC instructions with no user intervention. During interpretation, it monitors the applications execution pattern and translates only the frequently executed code into native Itanium® code at runtime. ARIES implements two phase dynamic translation, a technique in which translated code in first phase collects runtime profile information which is used during second phase translation to further optimize the translated code. ARIES stores the dynamically translated code in memory buffer called code cache. Further references to translated basic blocks execute directly in the code cache and do not require additional interpretation or translation. The targets of translated code blocks are backpatched to ensure execution takes place in code cache most of the time. At the end of the emulation, ARIES discards all the translated code without modifying the original application. Therefore, ARIES dynamic translation provides fast emulation and preserves the integrity of the emulated HP 9000 application. The ARIES emulation engine also implements Environment Emulation which emulates an HP 9000 application's system calls, signal delivery, exception management, threads management, emulation of gdb for debugging, and core file creation for the application.

HP 9000 application core file under ARIES

  • ARIES supports creation of HP 9000 HP-UX compatible core files on Integrity servers in same cases as when the application would have generated core when running on an HP 9000 server. The size of the core file is limited by ulimit() and/or setrlimit(RLIMIT_CORE, ...) values.
  • ARIES writes the core file for HP 9000 application in core.<application_name>.
  • The file format of the core dump is same as that produced on HP 9000 servers i.e. SOM for 32-bit executables and ELF64 for 64-bit executables.
  • The core file produced by ARIES may be used for failure analysis on a HP 9000 server or on an Integrity HP-UX server using the HP 9000 GDB (running under ARIES).
  • To debug the ARIES generated HP 9000 application core file on a different server, refer to GDB help on packcore command.
  • ARIES follows all standard HP–UX conventions for generation of HP 9000 application core file.
  • After ARIES has successfully written a core file for the HP 9000 application, it will print the following message on stderr:

    [HP ARIES32/64]: Core file for 32/64-bit PA-RISC application
    [HP ARIES32/64]: %s saved to path/core.PA_application_name

  • If the resulting core file is named as core or core.pid, it will be an ARIES core file, not useful for application debugging.
  • The ARIES-generated HP 9000 HP-UX compatible core file is recognized by the file command on HP 9000 and Integrity HP-UX servers.
  • Usage:

    gdb a.out core.aout

HP-UX 11i v3 ARIES NOTES:
  • As per the default core file format on HP-UX 11i v3, ARIES generates HP 9000 application core file in new format (v2) using large utsname structure.  See uname(2) for more details on the large utsname structure. You need to use latest version of tools like GDB to work with new format (v2) core file.

    Use the ARIES option -core_format to generate HP 9000 application core files in the old format (v1).

  • If the core file pattern and settings have been modified by the coreadm(2) system call or by coreadm(1M) command, then ARIES will follow the same naming pattern instead of writing the application core file to core.<application_name>.  Refer to coreadm(2) and coreadm(1M) for details.
Refer to aries(5) man page for more details.

HP 9000 application tracing using tusc under ARIES

  • HP 9000 system call tracer tusc can be used to trace HP 9000 applications system calls, signals, threads etc.
  • Both command line start up and attach modes are supported.
  • HP-UX 11i Integrity native tusc is not useful to monitor HP 9000 application’s system calls as some system calls are returned from within ARIES.
  • Usage:

    export PA_DEBUG=1
    tusc <args> <path_to_PA-RISC_executable> <app_args>
    tusc <args> <PID_of_PA-RISC_process>


  • Limitation:
    • Only one level of parent/child processes can be traced i.e. if child process calls fork() – the child’s child process cannot be traced under current implementation of emulated process tracing under ARIES.
Refer to aries(5) man page for more details.

Debugging the application using GDB under ARIES

ARIES supports debugging of HP 9000 HP-UX applications on HP-UX 11i Integrity servers using the HP 9000 HP-UX GDB.
  • Both the GDB and the application run under ARIES.
  • No change in GDB user interface (including WDB GUI).
  • Negligible loss of performance in interactive mode.
  • The HP 9000 GDB is included by default as part of the Integrity HP-UX WDB/GDB package.
  • All GDB commands work just like they would on an HP 9000 server.
Use the following steps to debug HP 9000 HP-UX applications on HP-UX 11i Integrity servers using GDB:
  • Set the environment variable PA_DEBUG to 1.
  • Set the environment variable SHELL to point to an HP 9000 shell, copied from an HP 9000 HP-UX system from /usr/bin path.
  • Add /usr/ccs/bin to the PATH environment variable.
  • Invoke GDB as:

    gdb PA-RISC_executable
After the debugging is finished, perform the following steps:
  • Unset the environment variable PA_DEBUG.
  • Restore the original value of the SHELL environment variable.
The rest of the debugging operations are the same as that on the HP 9000 HP-UX platform.

NOTE: Make sure that the user has write permission on /tmp directory and that there is enough space to create a temporary file of one page size as obtained by sysconf(_SC_PAGE_SIZE) system call.

Limitations of GDB Support under ARIES:
  1. No support for debuggers other than HP 9000 HP-UX GDB for debugging HP 9000 applications under ARIES on HP-UX 11i Integrity servers.
  2. No support for old GDB versions (of HP-UX 10.20 and earlier). However, debugging of HP-UX 10.20 applications using a HP-UX 11.0 (and newer) HP 9000 GDB is supported.
  3. HP 9000 GDB behaves differently for child processes created using fork() and vfork() system calls. ARIES emulates fork() and vfork() system calls identically. The exact behavior shown by HP 9000 GDB under ARIES may differ from that on a HP 9000 HP-UX server.
  4. If the debugged process is blocking in a system call, any attempt to get to the GDB command prompt by pressing ctrl-C does not work. The process needs to be killed from a different shell.
  5. ARIES does not provide true emulation of MxN threads, and thus does not support debugging of HP 9000 applications that are linked with pthreads library and create threads in MxN model.

    NOTE: The HP 9000  applications linked with MxN pthreads library are emulated under ARIES as traditional 1x1 threads, and thus can only be debugged under ARIES as any other non-MxN multi-threaded application.  Refer to the EMULATION OF MxN THREADS UNDER ARIES section in aries(5) man page for more information.

  6. ARIES supports debugging of 32-bit and 64-bit HP 9000  HP-UX applications using 32-bit HP 9000 HP-UX GDB.  64-bit HP 9000  HP-UX gdb is not supported under ARIES.
Refer to aries(5) man page for more details.

Attaching GDB to an already running emulated process

You can attach GDB to an already running HP 9000 application process on HP-UX 11i for HP Integrity servers to debug the application. After a successful attach, all of the GDB commands work in exactly the same manner as they do on an HP 9000 HP-UX server.

Use the steps below to attach GDB to HP 9000 application process under ARIES on HP-UX 11i Integrity servers:
  • Perform the same preparatory steps as required for debugging an HP 9000 HP-UX application using GDB under ARIES on HP-UX 11i Integrity server.
  • Invoke GDB as below:

    gdb PA-RISC_executable PA-RISC_process_ID
After the debugging, the process can continue or abort, as specified by the user. This feature is especially useful when triaging problems in an environment with a large number of processes and a mix of Integrity native and HP 9000 processes.

Refer to aries(5) man page for more details.

Detecting memory leaks using GDB under ARIES

  • Applications cannot leak memory under ARIES unless they do so on HP 9000 servers.
  • HP GDB can be used to detect memory leaks of HP 9000 applications under ARIES.
  • Refer to HP GDB documentation for more details.

ARIES limitations

Version 3.0, September 2013.

All user mode HP 9000 applications
work fine under ARIES with following limitations/ exceptions:
  1. Currently ARIES does not support HP 9000 applications that call Integrity native shared libraries. ARIES is meant only for pure HP 9000 HP-UX applications, that are either statically or dynamically linked with HP 9000 libraries only. *
  2. ARIES supports HP 9000 HP-UX applications that run correctly on the same HP-UX 11i release version on HP 9000 servers, whether the application was built on that version of HP-UX or a prior version and supported by virtue of the HP-UX binary compatibility statement.
  3. ARIES does not support privileged PA-RISC instructions. Hence, device drivers and loadable kernel modules (DLKMs) are not supported. Such applications are the ones that use one or more of the following system calls:
    • modload()
    • moduload()
    • modpath()
    • getksym()
    • modadm()
    • modstat()
  4. Applications that are sensitive to timing of code execution paths may experience correctness issues under ARIES emulation mode. Such applications are theoretically non-synchronized applications, and hence, need to be corrected with proper synchronization techniques using mutex locks and/or semaphores.
  5. ARIES does not support applications that use ptrace() or profil() system calls. However, ARIES supports debugging of emulated applications using HP 9000 GDB. Refer to HP 9000 HP-UX GDB DEBUGGING SUPPORT for more information in latest aries(5) man page.
  6. ARIES consumes a small amount of memory from the emulated application's virtual memory address space. Therefore ARIES does not support applications that are nearly or completely maxed out on their virtual address space usage in the data segment.
  7. ARIES does not support applications that rely on differences between fork() and vfork(). However, most applications that use the vfork() system call do use it with a purpose which is well known to the programmer. It is an extremely rare condition that a standard application would have any such reliance on the differences between fork() and vfork() system calls. See vfork(2) and fork(2) for details.
  8. ARIES returns information pertinent to a PA-RISC 2.0 processor, for emulation of sysconf() and uname() system calls. For instance, a call made to sysconf(2), with _SC_CPU_VERSION, will return CPU_PA_RISC2_0. If the application requires that it be able to determine that it is running on an Itanium(R)-based server, then it should use system(3S) call and the Itanium(R)-based native command getconf(1) to get the required fields. Alternatively, applications may check for the unique files/directories, to know the underlying server architecture. See system(3S), getconf(1), and sysconf(2) for more information.

* Using MITR it will be possible for Integrity native binaries to call (and be called by) HP 9000 shared libraries.

Customer testimonials and quotes

HP ARIES is an excellent HP 9000 migration alternative to ISV application porting:
  • Strong and growing momentum
  • ARIES is a proven solution that has successfully helped in a number of high-profile migrations.
  • Used worldwide in every region and industry vertical

What customers and ISVs are saying:

British Telecom to IDEAS International Inc. for a white paper (page 8/ para 4)
"The Aries translator, which dynamically translates HP-UX on PA-RISC to HP-UX on Integrity binaries in real time, was used for many of the custom programs BT had written over the years. Initially, internal BT customers were reluctant to have their applications run in emulation until they discovered how much more performance they would be receiving on Integrity."

Adobe Systems Inc.
"The ARIES technology made it possible for us to support the HP-UX Integrity platform for SAP customers in a cost effective and timely manner."

Systems administrator at a Fortune 100 Pharmaceutical company
"I took the Oracle database and the application running on HP-UX 11i v1 and moved it to an HP Integrity server. It just ran."

BSP Inc. Japan
"Quite impressed. The A-AUTO v4 application worked like a charm under ARIES. No problems."

Major diversified research company in Asia-Pacific-Japan region
"We met some troubles with ARIES. But we were able to provide applications to our customers under ARIES as promised. It's owing to HP's great support."

Major Telecom company in Asia-Pacific-Japan region
"I've never heard about ARIES related trouble after the cut over. Performance better than expected."

 

ISV support under ARIES environment

There is general lack of ISV support for application deployment in ARIES emulation environment. However, specific ISVs support their PA-RISC applications under ARIES. Some of them are:

Symantec
VERITAS Enterprise Administrator (VEA)
  • Fast support was required for the VEA application with Storage Foundation to run on HPUX 11iv2 HP Integrity Servers
  • Porting the application was difficult due to dependencies on legacy libraries
  • Time to market was important to our joint customers
  • ARIES running on HP Integrity servers allows VEA to run without modification
  • The VEA application’s PA-RISC code was migrated without modification and executed under ARIES without impact to Symantec product releases
  • By migrating to HP Integrity servers using ARIES, there was no regression in the applications performance

Adobe Systems Inc. and SAP AG
SAP Interactive Forms by Adobe on SAP Netweaver Platform
  • Underlying Adobe Document Services (ADS) required to convert SAP data into PDF format.
  • SAP customers running HP Integrity servers with HP-UX 11i want SAP Interactive Forms by Adobe to be available and supported.
  • Customers will be able to use SAP Interactive Forms by Adobe on running SAP Netweaver 7.0 SP14 on HP Integrity servers with HP-UX 11i v2 and v3.

Oracle Inc.
Oracle database client application version 10g R2 (10.2.0.0)
  • The application is supported under ARIES on HP-UX 11i v2 and v3 for HP Integrity servers.
  • For more details refer to Doc ID Note:456553.1 on Oracle Support site.

BSP Inc. Japan
  • A-AUTO and Loganizer/Agent applications
  • A-AUTO is advanced automatic job scheduling software
  • Loganizer/Agent is log management software
  • Currently these applications are supported for use under ARIES on HP-UX 11i v2 on HP Integrity servers.


 

Case Studies (involving ARIES)

In this section, you can find case studies for customer migrations to HP-UX 11i for HP Integrity servers involving applications deployment in ARIES binary compatibility mode.

Lyon Highways Monitoring Center (CORALY) France
  • Applications - CORALY (Coordination et Régulation du traffic del’Agglomération Lyonnaise)
  • Migration of Lyon highways monitoring center from Tru64/Alpha to HP-UX 11i on HP Integrity servers.
  • CORALY is a traffic-management system run by operators of roads in the Lyon region, which bear the heaviest traffic in France. An operator, Direction Départementale del’Équipement du Rhône, worked with systems integrator AMEC SPIE to develop this collaborative, real-time infrastructure, which dissolves bottlenecks in minutes and improves road safety. AMEC SPIE recently moved CORALY from HP Tru64 UNIX®-based HP AlphaServer systems to an HP-UX 11i v2 environment comprising HP Integrity servers, boosting performance by 40 percent and providing the capacity for continued innovation and expansion.
  • ARIES was used to run the application layer that remotely interfaces with the new CORALY environment.
  • For more details, refer to case study.
HP ARIES dynamic binary translator and necessary runtime libraries as required by emulated PA-RISC applications are part of Base OE for HP-UX 11i for HP Integrity servers. HP ARIES core product and man page are bundled separately.

Enhancements, fixes and product updates to ARIES are released through periodic cummulative patches. ARIES product patches can be searched and accessed from HP Support Center.
HP ARIES is provided free of charge with the HP-UX 11i operating environments for HP Integrity servers. It is planned to continue to be offered for HP-UX 11i v3 and subsequent HP-UX release for which we’re evaluating product content. HP-UX 11i v3 operating system will be supported on Intel Itanium “Poulson” and “Kittson” based HP Integrity servers.

Similarly, ARIES is supported as part of and for the same lifecycle as the HP-UX 11i operating environments in which it is included. Thus, ARIES provided with HP-UX 11i v3 operating system will be supported through the support lifecycle for HP-UX 11i v3 operating system which currently extends to December 31, 2022. Your HP sales representative can provide additional details about the HP-UX operating system and HP Integrity server roadmaps if needed. Please note that all plans are subject to change.

HP ARIES dynamic translator is the underlying execution layer for HP 9000 Containers solution.

Important information

spacer

Make sure to go through the following resources for ARIES related issues:

ARIES Limitations

spacer

This section has been moved to ARIES Documentation.

For support questions on the web

spacer

Contact the HP support organization at their web site, the HP Support Center. Contact the site nearest you, either "Americas/Asia-Pacific" or "Europe". The ITRC gives you access to:

  • A technical knowledge base with self-solve tools. The database is available to customers who have support contracts.
  • Patches for software.
  • Peer support forums.

For support questions on the phone

spacer

For HP-UX users, response center support for HP ARIES is included in the support contract for HP-UX operating system. If you have a support contract, call the HP Response Center at 800-633-3600 (North America) or contact your Country Response Center. You will need the software system identifier (system handle) associated with your support contract.

To report defects

spacer

If you have an HP support contract and you have a problem for which a defect needs to be reported, provide a test case demonstrating the problem. The Response Center Engineer will then file a defect report.



Manage My AllianceOne Membership

 
 » Sign in
 » Join AllianceOne
 » Contact us