[Mono-winforms-list] MWF painting VERY slow compared to .NET
Peter De Jager
peterdj at telkomsa.net
Wed Jul 27 06:15:57 EDT 2005
>From what you are saying it appears that I should have separate GUI code
which uses Glade for Linux / OS X instead of WMF. Our software is scheduled
for release in the first half of next year and it sounds as if it will be a
while still before Cairo is fast and stable. Not really what I was hoping to
hear ;-) but thanks for the info.
Pete.
> -----Original Message-----
> From: Vladimir Moushkov [mailto:vlindos at nucleusys.com]
> Sent: Wednesday, July 27, 2005 11:53
> To: Peter De Jager
> Cc: mono-winforms-list at lists.ximian.com
> Subject: Re: [Mono-winforms-list] MWF painting VERY slow
> compared to .NET
>
> > When painting a bitmap to a Form and measuring the frame
> rate, I get
> > vastly different figures on .NET vs. Mono. E.g. on .NET I
> get 114 fps
> > while under mono it's only 4.5 fps (on the same hardware).
> What's even
> > stranger is that I get the same (4.5 fps) figure on a
> PowerPC Mac mini
> > (1.42 GHz G4, 167MHz
> > bus) and an Intel box (dual 3GHz Xeon, 533MHz bus). Both
> systems are
> > running Fedora Core 4. I thought that perhaps it relates to video
> > drivers but I installed the latest ATI driver on my Xeon
> box (Radeon
> > 9800 Pro) and there is still no difference.
> if you have searched the mailing list would known that
> drawing issues are it's known problem.
> >
> > Something else is that on WMF, the background is always
> painted even
> > though I override OnPaintBackground of my Form with an empty
> > implementation,
> > e.g.:
> nasty nasty bugs
> >
> > protected override void OnPaintBackground(PaintEventArgs e) { }
> >
> > On Windows, this prevents the Form from repainting the background,
> > thus speeding up painting and reducing flicker, while MWF always
> > appears to repaint the background.
> >
> > I've done (very limited) testing on Gtk (Glade), and it
> appears to be
> > fast on Linux (comparable to System.Windows.Forms on .NET),
> but while
> > being fast on Linux, Glade is MUCH slower on Windows (I don't have
> > exact figures but it's very noticable).
> Glade uses GDK for drawing, while Winforms uses Cairo
> >
> > Is the MWF implementation likely to increase in speed (by
> 20 times!)
> > as it matures, or should I use Gtk for Linux / OS X and
> > System.Windows.Forms for Windows? I was hoping that I could use a
> > single code base for all platforms (which has been the case so far).
> I hope that too.
>
> >
> > Don't take this the wrong way, I don't mean to be critical. I think
> > it's great that there is a managed implementation of Windows Forms,
> > but at 20 times slower it renders my Windows applications
> unusable under Mono.
> Slowness of MWF drawing comes from Cairo. MWF uses libgdiplus
> for drawing, libgdiplus uses cairo/libpixmain backends for
> drawing and uses version 0.3.0 of Cairo. Currently Cairo is
> version 0.5.2. The problem is that Cairo isn't yet stable
> project as API is changed even on minor version change. On
> mailing lists of Cairo there is talk of soon releasing of
> version 1 which means freezing the API. But 'soon' could be
> month or year by my opinion. Hower I am interested ( as seems
> as you) in mature MWF applications - so I 've started porting
> libgdi to current cairo and expect big difference in
> performance - if you interested in helping me - tell me. If
> you not there are other issues for MWF which should be done:
> theming, icons and others - ask the core developers.
>
> Best regards,
> Vl. Moushkov
> >
> > Thanks
> > Pete.
> >
> > _______________________________________________
> > Mono-winforms-list maillist - Mono-winforms-list at lists.ximian.com
> > http://lists.ximian.com/mailman/listinfo/mono-winforms-list
> >
>
>
>
More information about the Mono-winforms-list
mailing list