0

If I installed Postgres on coLinux, would it be as fast as installing Postgres natively on Windows? How much of a difference in the coLinux instance would there be if the data were stored in a mounted NTFS drive as opposed to an ext2 file on top of NTFS?

4
  • Why would you want to do that? PostgreSQL runs perfectly fine on native Windows. Feb 13, 2010 at 17:36
  • I can take it to other machines as a single file.
    – User1
    Feb 13, 2010 at 17:39
  • I'm trying to setup a development environment.
    – User1
    Feb 13, 2010 at 17:40
  • As it's trivial to do, why not simply install it both ways and benchmark it using your particular usage pattern? Feb 13, 2010 at 22:37

1 Answer 1

2

I guess it depends on exactly how it works. In theory, if compiled in a method that requires Win32 to execute it then what you have is Windows clock-cycles to process the linux kernel instructions to process Postgres SQL instructions.

In effect, Postgres SQL talks to the Linux API which is executed "by Windows".

I say in theory because things like Intel VT-capable chips actually run virtual machine instructions on the host cpu directly if they can (rather than emulating a CPU), so the only slowdown is the Virtual container startup and communicating UI with the host through things like remote desktop / VMware consoles.

Also, for a long time we've had technologies such as .Net, Python, Java etc which either compile and interpret at runtime or add some other processing layer on top of the Windows API. These apps are not massively slower than native Win32 Apps for most uses.

So, I'd answer: yes, it is probably slower. How much slower and whether that is crucial to you, I don't know.

For the NTFS mounted vs ext2 on top of NTFS, in one case you have a virtual filesystem executed by a potentially virtual kernel. In the other case, the "virtual" kernel will be using its own ntfs-3g drivers to read the hosts filesystem. I'd suggest mounting NTFS would be faster in this case, but again, by what margin and whether your application's performance would suffer as a result depends on what you're trying to do. Either way, it is probably slower than the native PostgreSQL option.

1
  • coLinux does not utilize virtualization. All code is executed natively.
    – ypnos
    Feb 13, 2010 at 21:36

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .