From: Marcin <mi...@op...> - 2005-03-06 21:05:14
|
Hi, I'm trying to run a proprietary application written for my company under UML. The main program is written in Kylix and the executable is quite large (almost 100MB - yes I mean megabytes ;)). The application acts as daemon and spawn a thread to process each incoming query. The application makes no i/o processing -- it just receive query, computes result and sends it back. I noticed a very poor performance while running it under UML. The environment is as follows: Host: 2xPIII 1.4GHz 1250MB RAM 2*73GB HDD SCSI3 10k RPM in software RAID1 2.6.10 with SKAS3/2.6-V8-rc2 tmpfs mounted on /tmp with size 640MB Guest: 2.6.9bs7 460MB RAM dedicated partition on 18GB HDD SCSI3 The host has no other services running (except SSH for access). It's a backup box for our main PostgreSQL server, but with no PSQL daemon running (just waiting for a potential failure). So it's not busy at all. Some further investigation shows, that application performance suffer strongly from very long thread creation. On host machine it takes few (5-7) ms to spawn another thread, while under UML it is over 100ms. The lsof shows that UML is using tmpfs for vm files, and the SKAS patch is compiled into host kernel. Is there any chance to improve performance of that app (I can't force the vendor to decrease size of the executable). Thanks for help, -- Marcin |