"Ma prestazionalmente, sulla stessa macchina, quant'è la differenza tra un'applicazione che gira sul Framework e sistema operativo Microsoft e la stessa su Linux con Mono?"
Questa era una richiesta che mi era stata fatta parecchio tempo fa, ma per questione di voglia o altro non l'avevo mai fatta. Allora ho scritto una semplice windows forms che facesse delle operazioni ripetute su questi semplici scenari:
- Calcolo con interi: banale calcolo con soli numeri interi.
- Calcolo con decimal: come sopra, ma con l'uso dei decimali.
- Lettura completa di un documento xml da 300KB e 44.000 nodi, con il SelectNodes, nodo per nodo.
- Apertura ripetuta dello stesso documento xml ripetutamente con ricerca di nodi all'interno dello stesso.
Innanzitutto vediamo l'applicazione in esecuzione:
E su Linux con Mono:
Riassumendo i risultati in una tabella:
Integer | Double | Xml 1 | Xml 2 | |
Windows .net | 453,125s | 1859,375s | 46,875s | 4640,625s |
Mono | 499,71s | 2362.398s | 259,891s | 26959,493s |
NB:
- La piccola applicazione è stata scritta con Visual Studio 2008 per il Framework 2.0.
- Il computer su cui girava Mono aveva Ubuntu 8.10 RC.
- Ho potuto usare solo la versione 1.9 di Mono e non la nuova 2.0, ma purtroppo non potevo testare la nuova versione sul computer a disposizione.
- Notare le piccole imperfezioni grafiche della versione Mono, teoricamente risolte con la nuova versione.
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
- Mono e Framework... un po' di semplici benchmark parte seconda, il 16 novembre 2009 alle 20:44
- Moonlight - Silverlight 1-2, il 21 gennaio 2009 alle 09:21
- GTK, giusta crocevia tra piattaforme?, il 26 ottobre 2008 alle 13:57
- Mono e Remoting: come scambiare informazioni tra Windows e Linux, l'11 luglio 2008 alle 20:44
- Servizi in C# su macchine Linux con Mono, il 6 luglio 2008 alle 13:53