November 6, 2008 at 6:07 am
Hi,
I have just configured my C# multi-threaded application from 32 bit to 64 bit platform for getting more memory support. But my application runs up to 40 - 50% slower as compared to 32 bit platform.
The overall idea about the multithreaded application is, we do recalculation for server hundred thousand records available in the database. Fetch the records from the table and do the recalculation finally it will update it into the table.
Earlier we had the following sever configuration as bellow
OS- Windows 2003 server 32 bit version
SQL - SQL Server 2005 Enterprise Edition for 32 bit version
8GB RAM
Now we changed to the latest version
OS- Windows 2003 server 64 bit version
SQL - SQL Server 2008 Standard Edition for 64 bit version
8GB RAM
The application was working fine and recalculated 3000 records per minute. But now after changing to 64 bit version it is calculating only 1200 records per minute.
I have tried with the following scenarios.
Changed to enterprise edition 64 bit version and tested - no improvement (memory utilization is high)
Page lock in memory in enterprise version and tested - no improvement (memory utilization is high).
Can you suggest where I need to concentrate to improve the performance? (OS Level / SQL Level /Application Level)
Thanks in advance.
Natarajan.M
November 6, 2008 at 6:14 am
You changed from 32 bit to 64 bit and changed from SQL 2005 to SQL 2008 at the same time. I also assume the hardware changed - is the old hardware still running?
After upgrading, did you rebuild all of the indexes? This is important during a SQL version change.
The first step for performance tuning is to look at the execution plans. That is why having the old hardware and database would be nice, you would be able to compare the execution plans pre-upgrade to those after the upgrade. Since your process sounds like it is running a lot of small queries that are probably very similar, a few minor changes can have a big impact. Focus on the individual queries and their execution plans, any of the changes you have made could impact the plan generated by the database engine.
November 6, 2008 at 7:37 am
Thanks for your quick suggestion.
We did all the changes in old h/w only.As you suggested we rebuilt all the indexes and tested the application but still it is running with the same performance(1200 records/Min).
Any other Suggestions?
Thanks,
Natarajan.M
November 6, 2008 at 1:56 pm
Did you updated all the stats with fullscan ?
If after all that you are still getting the same throughput the app and not the server is the likely bottleneck.
* Noel
November 7, 2008 at 6:20 am
I have updated the sats with full scan but still i didn't find much more improvement on the performance.
Viewing 5 posts - 1 through 4 (of 4 total)
You must be logged in to reply to this topic. Login to reply