Re: [Mono-dev] how to improve mono performance
Hi I'm investigating mono performance regression and improvement. You can see some measurements on http://nenya.ms.mff.cuni.cz/projects/mono/index.phtml And I try to find which lines in source code cause differencies in performance. Peter ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] how to improve mono performance
On Thu, 2005-11-17 at 23:32 -0800, zhu shi song wrote: I insist that performance is the key factor for key applications. For example, we now have one enterprise web query application. Every day between 8:30AM and 12:00AM, it serve about 2 requests. Now we use one P4 2.6G PC Server with 512M DDR running Windows 2003 Server, it works well. If we port it to Linux + Mono, we must upgrade the hardware to meet the same workload. Have you actually ported and measured this? From your previous emails it sounds like you haven't. Just because something can add doubles N times faster does not mean that it will be N times faster for your application. If you'd like us to help you with your application, you are going to have to do something more than show us issues with our GC and Register Allocator that we already know about (See Miguel's blog: http://tirania.org/blog/texts/mono-status.html) What we need is: * Output of --profile from *your application* running on mono under realistic load * (If possible) The source code to your application (I am sure that Miguel could help you if you need an NDA, etc) so that we can better understand why some functions show up in the profile To reiterate: your benchmarks do not help us fix *your* problems, at least not in the short term. I'd also point out: 20,000 requests / (3.5 hours) = 1.5 requests / second Is your server using *all* it's cpu power for 1.5 requests/sec? Maybe you can make small optimizations in your application which will help it on either platform (I recently encountered a web application where submissions were taking 20 seconds each, it turned out that we did not use indexes correctly in sql server. A little bit of DBA action made requests take 1 second each). It's often easier to optimize the application than the platform. This seems like a small price to pay for the benefit of not having to deal with the latest worm, patch Tuesday and the general pain of Windows system administration (not to mention the money one saves from the Windows license!) -- Ben ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] how to improve mono performance
On Fri, 2005-11-18 at 03:19 -0500, Ben Maurer wrote: Is your server using *all* it's cpu power for 1.5 requests/sec? Maybe you can make small optimizations in your application which will help it on either platform (I recently encountered a web application where submissions were taking 20 seconds each, it turned out that we did not use indexes correctly in sql server. A little bit of DBA action made requests take 1 second each). It's often easier to optimize the application than the platform. This seems like a small price to pay for the benefit of not having to deal with the latest worm, patch Tuesday and the general pain of Windows system administration (not to mention the money one saves from the Windows license!) Please don't take this to mean that we expect performance to be our user's problem. Many of the project's hackers (including myself) are dedicated to providing a high performance runtime. However, there's only so much we can do with limited resources. -- Ben ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Gnome.Vfs Initialization
2005/11/18, Buderya Roshan [EMAIL PROTECTED]: That works. Thanks a lot. I still have one doubt. When I call Gnome.Vfs.Vfs.Shutdown, Is only my application affected or is the effect global? What I mean to say is that if there are 2 programs using Gnome.Vfs and one of the calls Vfs.Shutdown while the other is stil executing, will the second program be adversly affected? I think not, but wanted to confirm nevertheless. No. You can imagine the problems that would appear if things were like that ;-). It just disposes the structures it had on memory for your application. Many thanks, Roshan You're welcome, Felipe. -- Quem excele em empregar a força militar subjulga os exércitos dos outros povos sem travar batalha, toma cidades fortificadas dos outros povos sem as atacar e destrói os estados dos outros povos sem lutas prolongadas. Deve lutar sob o Céu com o propósito primordial da 'preservação'. Desse modo suas armas não se embotarão, e os ganhos poderão ser preservados. Essa é a estratégia para planejar ofensivas. -- Sun Tzu, em A arte da guerra ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] Read System.Net proxy server address from environment
Is it okay to commit now? I don't have a direct internet connection here, so if someone could double-check that it definately works without a proxy that would be nice. Looks like this slipped through the net. Can someone review it? Thanks Michael ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] http header generation
I'm writing a Web Service Client using mono 1.1.9.2 When I try to consume my target WS I have two different behaviours when I compile may classes using Mcrosoft .NEt Framework and Mono. I looked at the message the client sends using the two different run time and compiler and I found that the only difference is in the USEr Agent Line of the HTTP header (see below). Now to be sure that this is the problem I should rewrite the http header and see if the behaviour is the same. There is someone on the list that can tell me which mono class write the header: I suppose is in the Mono.Http.dll. IS configurabel in soem way or I have to recompile it ? --- HTTP Headers: POST / HTTP/1.1 User-Agent: Mono Web Services Client Protocol 2.0.50215.16 SOAPAction: http://mytarget/logon Content-Type: text/xml; charset=utf-8 Content-Length: 381 Expect: 100-continue Connection: keep-alive Host: mytarget:80 HTTP Headers: POST / HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 1.1.4322.2032) SOAPAction: http://mytarget/logon Content-Type: text/xml; charset=utf-8 Content-Length: 381 Expect: 100-continue Connection: keep-alive Host: mytarget:80 == Archimede Informatica NEWS! == Realizzato il Sistema Integrato per la biglietteria della Torre di Pisa: prenotazione, vendita, pre-vendita ed emissione dei biglietti di ingresso alla Torre sia online che presso le biglietterie dislocate sulla piazza: http://www.opapisa.it/boxoffice Partner del Progetto Ci-Tel Front office Telematico per il cittadino Ente Coordinatore Comune di Pisa http://www.comune.pisa.it/doc/e-government.htm == dott. Ivano Mario Luberti Archimede Informatica societa' cooperativa a r. l. Sede Operativa Via Gereschi 36 - 56126- Pisa tel.: +39-050- 580959 tel/fax: +39-050-9711344 e-mail: [EMAIL PROTECTED] web: http://www.archicoop.it ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] ANNOUNCE: Ice 3.0 released
Hi, we've just released Ice 3.0. (For those of you who haven't heard of it, it's a multi-language and multi-platform middleware.) Some highlights: improved C# and VB mapping and a new grid service. And, of course, it works with the latest Mono :-) See http://www.zeroc.com/vbulletin/showthread.php?p=8081#post8081 for the official announcement. Cheers, Michi. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] Read System.Net proxy server address from environment
On Fri, 2005-11-18 at 09:45 +, Michael Hutchinson wrote: Is it okay to commit now? I don't have a direct internet connection here, so if someone could double-check that it definately works without a proxy that would be nice. Looks like this slipped through the net. Can someone review it? The patch is in svn now. It would be nice to get a patch for the documentation in monodoc as well ;-). Thanks a lot and sorry for the delay reviewing it. -Gonzalo ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] ANNOUNCE: Ice 3.0 released
nice timing, i was just looking at C#/mono CORBA products, and your annoncement obviously has me checking out your product. I guess i'd like to know (totally no biased :) ) how stable it is on mono. Looks like the project is mature, but the C# side of the product? Any comments on current user success in particular w.r.t. mono? or is it to early to tell? -tl On Fri, 18 Nov 2005 10:33:29 -0500 Michi Henning [EMAIL PROTECTED] wrote: Hi, we've just released Ice 3.0. (For those of you who haven't heard of it, it's a multi-language and multi-platform middleware.) Some highlights: improved C# and VB mapping and a new grid service. And, of course, it works with the latest Mono :-) See http://www.zeroc.com/vbulletin/showthread.php?p=8081#post8081 for the official announcement. Cheers, Michi. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] addins to mcs?
I was wondering if it would be possible to develop plugplay addins to mcs? My ideia to make it possible to developer to extent mcs to their needs, an example would be to make mcs to translate a SQL query to a object model... Any ideas?-- Alexandre Gomes, Portugal ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] how to improve mono performance
Hello, From the measurements I've taken, MS .NET is generally 2 to 3 times faster than Mono, both using micro-benchmarks and applications that do real work. It is easy to spot performance issues with micro-benchmarks, and we typically use these to do some of our development work. For large applications it is harder to find out what pieces are performance issues in the runtime, and which others are operating system pieces. For instance, even if our runtime produces slower code, ASP.NET applications benefit from Linux's TCP/IP and file system async semantics so overall, we come on top in many benchmarks. Quoting `applications that do real work' without pointing to them is useless. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] addins to mcs?
Hello, I was wondering if it would be possible to develop plugplay addins to mcs? My ideia to make it possible to developer to extent mcs to their needs, an example would be to make mcs to translate a SQL query to a object model... You might want to look at what the fine folks at DB4O have done. They basically use a decompiler that turns a compiled delegate at runtime into an expression tree. Rodrigo (from Bamboo) is doing some work on Cecil to be able to decompile any method back into an statement/expression tree of this kind, and it requires no compiler modifications. See the Db4O web site for more details and papers describing this technology. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] iptables possible log4net issue?
I have a bit of code working on Linux for a while now, it all uses log4net. We made a DROP everything unless specified firewall with iptables, and all my programs quit working, I notice they would quit responding on the first call where log4net is configured. I then ran: iptables -A INPUT -i lo -j ACCEPT Now my programs are working again, any ideas why that might be? I also ran programs without log4net and they seemed to run just fine. It could be that log4net was waiting for something to timeout, I didn't leave it running long enough maybe. --Carlos ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] XSP debugging
On Nov 16, 2005, at 4:43 PM, Marek Habersack wrote: On Wed, Nov 16, 2005 at 11:00:05AM -0600, Carlos Solorzano scribbled: Whats the easiest way to do some debugging of XSP, is there a way to turn on logs for XSP? personally I use log4net (catches also Console.Write/WriteLine) with the following config: Marek, have you ever noticed any problems (specially since 1.1.10) where XSP closes after you hit Enter but when you open it again it just gives you a Sharing Violation in trying to open the log file for writing? It only happens with XSP for me so far and really bad with the latest version. I wonder if maybe I am configuring log4net at the wrong place, right now I do it somewhere in my Global.asax, on something like OnApplicationStart. --Carlos ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] XSP debugging
On Fri, Nov 18, 2005 at 04:12:36PM -0600, Carlos Solorzano scribbled: On Nov 16, 2005, at 4:43 PM, Marek Habersack wrote: On Wed, Nov 16, 2005 at 11:00:05AM -0600, Carlos Solorzano scribbled: Whats the easiest way to do some debugging of XSP, is there a way to turn on logs for XSP? personally I use log4net (catches also Console.Write/WriteLine) with the following config: Marek, have you ever noticed any problems (specially since 1.1.10) where XSP closes after you hit Enter but when you open it again it just gives you a Sharing Violation in trying to open the log file for No, never. I'm running the latest SVN mono, mod_mono, xsp and haven't had such problems. But I run the software on Linux, so the problem might be windows-specific (I understand you're using Windows, right?) writing? It only happens with XSP for me so far and really bad with the latest version. I wonder if maybe I am configuring log4net at the wrong place, right now I do it somewhere in my Global.asax, on something like OnApplicationStart. Why don't you try the method I posted in the other mail? It seems to be the nicest way of configuring log4net, at least IMHO. regards, marek signature.asc Description: Digital signature ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
RE: [Mono-dev] how to improve mono performance
I'd like to point out that the arrival of his requests probably follows a poisson distribution anyway. In which case, his probability of getting more than 9 requests per second is null. So, it stays really reasonable... And WAY under the limit of 732 req/sec for ASP that Miguel just mentioned. You can verify this alegation by looking at the analysis below if anyone feels like it ;). I may be wrong. Max == requests: 2 service: 4:30:00 hh:mm:ss 16200seconds Avg request/second: 1.23 Concurrent | Poisson| Requests Req/sec| probability | concerned ---+-+--- 0 | 29.10%| 5819 1 | 35.92%| 7184 2 | 22.17%| 4435 3 |9.12%| 1825 4 |2.82%|563 5 |0.70%|139 6 |0.14%| 29 7 |0.03%| 5 8 |0.00%| 1 ---+-+--- 100.00% 2 Basically, 5919 requests have 29.1% chance to be the only request in the system for a second, and so on... (based on the excel poisson distrib, with 1.23 as the mean and a cumul of 0) -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Miguel de Icaza Sent: Friday, November 18, 2005 12:25 PM To: zhu shi song Cc: Atsushi Eno; Ben Maurer; mono-devel-list@lists.ximian.com Subject: Re: [Mono-dev] how to improve mono performance Hello, I insist that performance is the key factor for key applications. For example, we now have one enterprise web query application. Every day between 8:30AM and 12:00AM, it serve about 2 requests. Now we use one P4 2.6G PC Server with 512M DDR running Windows 2003 Server, it works well. If we port it to Linux + Mono, we must upgrade the hardware to meet the same workload. Ben did a fantastic job in pointing out that 1.5 request per second is hardly a lot. For ASP.NET applications, my laptop (a 2.0 Ghz with a much slower configuration than your server) can dispatch 732 ASP.NET requests per second. The sample TestService web service page which puts a bunch of controls into a page comes out at 371 requests per second. Which puts Mono at handling 4.41 million request per second in the time frame that you described. So, 220 times the load that you have today on your site. So for all intents and purposes Mono 1.1.10 should be able to cope with your load just fine. We are still working to improve Mono's speed (see my status report on my blog for details about what we are doing), but you hardly need these improvements today. Other people might. Miguel. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] XSP debugging
On Nov 18, 2005, at 4:21 PM, Marek Habersack wrote: On Fri, Nov 18, 2005 at 04:12:36PM -0600, Carlos Solorzano scribbled: On Nov 16, 2005, at 4:43 PM, Marek Habersack wrote: On Wed, Nov 16, 2005 at 11:00:05AM -0600, Carlos Solorzano scribbled: Whats the easiest way to do some debugging of XSP, is there a way to turn on logs for XSP? personally I use log4net (catches also Console.Write/WriteLine) with the following config: Marek, have you ever noticed any problems (specially since 1.1.10) where XSP closes after you hit Enter but when you open it again it just gives you a Sharing Violation in trying to open the log file for No, never. I'm running the latest SVN mono, mod_mono, xsp and haven't had such problems. But I run the software on Linux, so the problem might be windows-specific (I understand you're using Windows, right?) Actually im using Gentoo 64bit. I have seen this happen on regular Console apps but not nearly as often as its happening for me on XSP. Seemed to happen a lot more often when closing the app using Control C vs letting it end Main. writing? It only happens with XSP for me so far and really bad with the latest version. I wonder if maybe I am configuring log4net at the wrong place, right now I do it somewhere in my Global.asax, on something like OnApplicationStart. Why don't you try the method I posted in the other mail? It seems to be the nicest way of configuring log4net, at least IMHO. I didn't see how you told log4net to run but now I saw that assembly [assembly: log4net.Config.XmlConfigurator (ConfigFileExtension=log4net, Watch=true)] line so I will use that next. Thanks, --Carlos regards, marek ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] AppDomain major problem
Hi there guys, Some of you were bothered by me on the IRC regarding a bug on AppDomain. I was trying to create a clean AppDomain, but mono for some reason copies the assemblies in the current domain. So I was getting my own executable assembly in my new AppDomain. After ours of reading mostly all MS documentation that I could find regarding AppDomains. I started to suspect that it was in fact a bug. So I downloaded .Net 2.0 and it worked just fine... This bug just costed me 5 hours, damm, I'm stupid... I should have guessed... Because I have spent those 5 hours trying all possible ways to get around it, and the only way I can think of is by overriding the assembly resolving mechanism. Does any of you have some kind of clue of how I can get around it? Only till someone finds time to fix it. I tried to spot the bug, but I was brave enough to go deeper into the vm. Yes, before you shoot me: http://bugzilla.ximian.com/show_bug.cgi?id=76757 I just hope, this isn't another scary bug, like the one I found for Baulig. (Baulig []s and good luck) Cheers, SpigaZ out... ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list