[mono-vb] Mono 2.6.3 and performance

Stifu stifu at free.fr
Tue Apr 20 17:06:45 EDT 2010

PS: I'm on openSUSE, and like it very much. I've had fewer problems with it
than with Ubuntu (where I sometimes had graphics / sound driver issues,
depending on the computer). On top of that, openSUSE has a Mono version that
is up to date, no need to compile from sources to get the latest version or
anything (since both openSUSE and Mono come from Novell).

Stifu wrote:
> I'm pretty sure there is no "VB.NET" runtime, it's the same runtime
> regardless of the .NET language.
> You may be confused and meant the VB.NET *compiler* is implemented in C#,
> in which case it wouldn't impact runtime performances or anything.
> However, it's true that VB.NET is a second-class citizen in Mono (VB9 not
> supported and all). C# gets all the spotlight.
> Also, I think WinForms needs more love. Not because it is great or
> anything, but for the sake of improved interoperability between .NET and
> Mono. Many .NET apps use WinForms, and many developers know and use
> WinForms. In the end, a better WinForms implementation would give a better
> image of Mono to Windows users and developers.
> quandary wrote:
>>  From my experiences, you should really use C# instead of VB.NET if you 
>> run mono applications under Linux.
>> The reason is, the VB.NET runtime is implemented in C#, and the C# 
>> runtime is implemented in C, as far as I have heard.
>> I've however never encountered problems with CType, CInt, CBool, CByte, 
>> CLng, Asc, Chr, etc.
>> And also, VB.NET with mono is incomplete in many ways. Starting with no 
>> VB.NET compiler shipped with Mono for windows, to the vb.net runtime not 
>> deployed by default with mono, continuing with ASP.NET peculiarities 
>> like handling a button click only with ONCLICK instead of with the 
>> "handles" clause, too.  Missing overloaded functions in the XMLwriter, 3 
>> missing GDI+ functions (like xWarpPath), etc.
>> And if you need a VB.NET function in C#, you can still include the VB 
>> runtime dll in your project.
>> Also, WinForms applications are always a bit tricky. They should work 
>> the same on every platform, but in reality, there are always some little 
>> differences (aka bugs) that can break a program.
>> The mono team has, in my opinion, achieved much, but as you have seen, 
>> it's yet far from perfect.
>> That's why you should do with .NET applications as you would do with any 
>> C++ application.
>> Use some cross-platform toolkit, like GTK (gtk# for .net, or wxWidgets 
>> for .NET).
>> It's no problem to design and compile GTK# applications with Visual 
>> Studio, and it's not really more difficult or more time-consuming than 
>> WinForms.
>> They are already much older than .NET and they are designed for 
>> cross-platform usage, and thus work much better than WinForms.
>> (http://jrwren.wrenfam.com/blog/2008/11/01/gtk-in-visual-studio-2008-on-vista-x64/)
>> And yes, Linux is faster in most things than Windows, from 3d graphics, 
>> to file access and database handling, to search and network throughput, 
>> to memory fragmentation, and also in energy use.
>> However, many things are implementation specific, so there can be bugs 
>> in mono that make it look slower than .NET on windows, but on the other 
>> hand, sometimes there are also bugs in .NET that make mono look much
>> faster.
>> It depends a bit on what you do. Also, the bug you are experiencing can 
>> be a Virtualization issue. I've encountered more than one of those. You 
>> need to install Linux natively and test it by dualbooting.
>> Also, if you used pictures in your program, keep in mind that Linux is 
>> case-sensitive, so Filename.png and filename.png are not the same, and 
>> it WILL result in error.
>> Another common issue is the directory separator (\ on windows, / on 
>> Linux, so use system.path.directoryseparatorchar).
>> Another thing that you should be aware of is that if you use extensive 
>> graphics, there might be a problem with your graphics driver/GL hardware 
>> acceleration.
>> Usually, if you have Intel, it works without problems, but NVIDIA and 
>> ATI are the universial gravitation constant of bad driver quality, and 
>> that not just on Linux.
>> (http://www.reghardware.co.uk/2008/03/28/nvidia_vista_drivers/)
>> Also, if you have installed a default-installation of Suse, you have 
>> installed a KDE environment. KDE 4.x is known to be buggy, and the 
>> default window manager of most sane Linux systems is GNOME, and not KDE.
>> (For this issue, see some comments of Linus Torvals - a long-time 
>> extreme GNOME hater - which ditched KDE 4 for GNOME). It might have 
>> something to do with this.
>> Also, if you are a first-time Linux user, do yourself a favour and 
>> install a popular Debian-based distribution, like Ubuntu. OpenSuse is a 
>> pain in the ass. Believe me, I know, I've used Debian since 1999, later 
>> Fedora, Ubuntu, Arch and lately I installed OpenSuse.
>> Believe me: None of them was as horrible as OpenSuse!.
>> Greez & Have fun with GTK#
>> On 20.04.2010 17:20, nickntg wrote:
>>> erver-based
>>> applications perform better under Mono than under Windows. The ported
>>> application doesn't use anything like WCF, Remoting (and thus
>>> serialization)
>>> so I don't know how Mono fares on those. Still, these results caught me
>>> by
>>> surprise - I was just curious about the performance of Mono when I
>>> started
>>> the stress test but now I keep wondering how is that performance
>>> differenc
>> _______________________________________________
>> Mono-vb mailing list
>> Mono-vb at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-vb

View this message in context: http://n4.nabble.com/Mono-2-6-3-and-performance-tp2017537p2018045.html
Sent from the Mono - VB mailing list archive at Nabble.com.

More information about the Mono-vb mailing list