This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Performance problem


The combination OpenGL X11 works fine on Unix. We are trying to use cygwin to port our applications on Windows. The cygwin's OpenGL gives us the dependency on the X11 cygwin simulation on Windows which is slow, I gess...

-----------------
If I am interpreting the output below correctly, you are developing an OpenGL program under X11; that's the main reason it is so slow.


OpenGL under X11 renders everything in software, without any hardware acceleration, so it's rendering is orders of magnitude slower. It is true that Cygwin's I/O and memory management are somewhat slower than under Linux, but that's peanuts compared to the OpenGL penalty.

If you want a fast program, you will have to use Window's native OpenGL implementation, which renders through hardware accelerators. That's what the OpenGL package for Cygwin provides.

Unfortunately, to use Window's native OpenGL implementation, you will have to rewrite completely such parts of your program as window management and user interface.

Last point (before you ask): the OpenGL implementation under X11 cannot be easily modified to use hardware acceleration, and I doubt it can be modified at all to do so. To know why, please search the archives for this list.

Vladimir Baltchev <vbaltch at orthosoft dot ca> wrote:

Hi there,
We are about to port Unix - Irix and Linux applications to Windows
using Cygwin. However the Cygwin version is very slow compared to
Linux, even I compiled with the optimize option -O2. It is a Windows
2000, the program is a segmentation editor using Qt, OpenGl and some
image processing.
What is the reason? Is it OpenGL on cygwin, or both?
Here is the library dependency list:
segeditorMax.exe
C:\cygwin\usr\X11R6\bin\libGL.dll
C:\cygwin\usr\X11R6\bin\libX11.dll
C:\cygwin\bin\cygwin1.dll
C:\winnt\System32\KERNEL32.dll
C:\winnt\System32\NTDLL.DLL
C:\cygwin\usr\X11R6\bin\libXext.dll
C:\cygwin\usr\X11R6\bin\libGLU.dll
c:\qt-cygwin\qt-3\bin\cygqt-mt-3.dll
C:\cygwin\usr\X11R6\bin\libICE.dll
C:\cygwin\usr\X11R6\bin\libSM.dll
C:\cygwin\usr\X11R6\bin\libXrender.dll
C:\cygwin\bin\cygpng12.dll
C:\cygwin\bin\cygz.dll
C:\winnt\System32\ADVAPI32.DLL
C:\winnt\System32\RPCRT4.DLL
c:\Vlad\build\Dev\lib\libOip.dll
C:\winnt\System32\GDI32.dll
C:\winnt\System32\USER32.DLL





André Bleau, Cygwin's OpenGL package maintainer.



-- Vladimir Baltchev Senior Software Developer @ Orthosoft R&D Inc Tel (514) 861-1837 ext 230 Email: Vladimir.Baltchev@orthosoft.ca

--
Vladimir Baltchev
Senior Software Developer @ Orthosoft R&D Inc
Tel (514) 861-1837 ext 230
Email: Vladimir.Baltchev@orthosoft.ca



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]