General considerations for porting existing applications to 64-bit

IBM® Spectrum Symphony developers have the opportunity to deploy application logic compiled to run natively in 64-bit architectures.

Note that if you have an existing application deployed in IBM Spectrum Symphony on a 32-bit architecture and plan to move it to a 64-bit platform, you should plan this activity carefully. Without proper planning, the resulting ported application could yield unexpected results that might delay rolling out the ported application.

Running in a 64-bit environment without porting

Even if your application is not ported to a 64-bit architecture, it might be beneficial to run it in a 64-bit environment. This is because some 64-bit operating system implementations allow an application to allocate more memory than if it were run in the 32-bit version of the operating system.

An example is WindowsXP Pro 64, which allows application code to consume up to 4 GB of memory as opposed to the 2 GB allowed by its 32-bit implementation. Consult the operating system vendor to confirm this detail about your specific 64-bit operating system implementation.

Required changes to the application profile

If any of your compute hosts are 64-bit, you must add an osType section in the Service sections with the type NTX64 or X86_64, depending on whether you have Windows or Linux® hosts. If you do not specify the environment explicitly, any is selected.

For example:
<Consumer applicationName="MyApplication" consumerId="/consumer"...
            ...
...
<Service name="MyService" description="Description of my service."
...
 <osType name="NTX64" 
startCmd="${SOAM_DEPLOY_DIR}/MyService.exe"
workDir="${SOAM_DEPLOY_DIR}">
 </osType>
 <osType name="X86_64" 
startCmd="${SOAM_DEPLOY_DIR}/MyService"
workDir="${SOAM_DEPLOY_DIR}">
            </osType>
 ...
</Service>
</Profile>