1. Eric Freudenberg
  2. PowerBuilder
  3. Friday, 21 September 2018 07:21 AM UTC

Hello community,

we have a 32bit PowerBuilder application and use as database system ASA12 (Sybase SQL Anywhere 12) via ODBC. Now the question is, is it better to install the ASA12 driver as 32bit or as 64bit on a 64bit machine?

It's not about the components. A 32bit application can only use 32bit drivers, but the question is, what is the better installation on x64 for Winodws and Powerbuilder? Or does it even matter?

We have two install-kits for ASA12, created by the ASA12 Deployment Tool:
- x84, includes ASA12 32bit driver
=> Install path: C:\Program Files (x86)\SQL Anywhere 12
=> Regestry path: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Sybase\SQL Anywhere\12.0

- x64, includes only ASA 32bit driver too
=> Install path: C:\Program Files\SQL Anywhere 12
=> Regestry path: HKEY_LOCAL_MACHINE\SOFTWARE\Sybase\SQL Anywhere\12.0

As far as I know, x64 systems should always be installed in the x64 directories and regestry on x64 system, as x86 installation is installed in the Windows redirection archives (program files x86 & WOW6432Node), which means that windows must access the files differently.

I hope somebody knows an advice for us.
Thanks in advance

Best regards
Eric

Marco Meoni Accepted Answer Pending Moderation
  1. Friday, 21 September 2018 08:35 AM UTC
  2. PowerBuilder
  3. # 1

Hello,
definitely 64 bit ASA DB on 64 bit O.S.
However, you'll need to install 32 bit drivers too because PB IDE is a 32 bit program. Of course you can install both 32 and 64 bit versions, the O.S. will take care of keeping the two installations under different paths and will give access to clients through the proper driver bitness.

But why "definitely 64 bit ASA"? Because ASA will be able to allocate and access much more memory directly than the 4 GB that 32-bit apps can.

Different is *your* application.
Do you need that much memory in your app? Of course ASA and Appeon PowerServer do, they need to handle lots of data, efficiently, from raw tables and complex structures and arrays in central memory.

However, providing 64-bit version for your program takes additional work in terms of compatible drivers, DLL, 3rd party sw, all in all 2 separate versions of the program. Truth is, your program most likely won’t suffer any kind of performance penalty in 32 bit mode because 64 bit Windows run it under WoW64 compatibility layer. It will sometimes run even better than on Windows 32 bit.

In few words, I encourage you to install ASA 64 bit because that is the natural choice on 64 bit O.S.
Then take into account the extra work above for delivering the 64 bit PB applications and use the PB IDE.

Best,
.m

Comment
There are no comments made yet.
Eric Freudenberg Accepted Answer Pending Moderation
  1. Friday, 21 September 2018 10:02 AM UTC
  2. PowerBuilder
  3. # 2

Hello Marco,

many thanks for your answer.
Our application is a 32bit application only using 32bit componets, the used ASA12 driver ís always the 32bit driver too. My question ist not what is installed, rather where should be installed.

I can create two ASA12 install setups via the ASA12 deployment tool (see picture). Both only include the 32bit componets of ASA12. The difference ist where it install (and possibly how the components were compiled), as 32bit install or as 64bit install. My opinion is, on x64 machine it should be installed as 64bit (as you say it is "natural"), even if only 32bit components used. But how handle windows and powerbuilder it, if it not installed in the WoW64 compatibility layer? It's better, equal or not?

On my 64bit dev-PC ASA12 is installed as x64 with 32bit and 64bit components and i have no problems. The 32bit components also installed in the 64bit program files and regestry, an entry under program files (x86) and WOW6432Node does not exist. So i think on customer side it should be installed like on my pc.

 

Many thanks.

Eric

Comment
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.