.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Register
 
Win Surprise Gifts!!!
Congratulations!!!


Top 5 Contributors of the Month
david stephan
Asad Ali
Fauzul Azmi
Post New Web Links

Wickedly Strange .Net WPF Performance Problem Dissapeers with Windows 7 Performance Monitor Open

Posted By:      Posted Date: August 28, 2010    Points: 0   Category :WPF
 
Hello Everyone, I have been developing one large and complex WPF application for 13 months now, all is going well and especially tonight as I now have some sort of clue or hint to what I have been seing now for quite some time.  Here is the rundown. 1) Running on i5 processor with 4GB RAM and Windows 7 2) The application was developed all in .Net 4.0, WPF C#. 3) It is heavily GUI intensive and also uses Entity Framework Detached for Database Access. 4) Is multi-threaded / multi-tasking. I am a nutcase when it comes to testing.  Since my graphical application heavily depends upon performance and determinsm (please somebody don't start with the C++ vs .Net on here) and has been performing great FOR THE MOST PART.  Every once in a while, I see that the application runs into the weeds for 5 or 6 seconds and the interface is unresponsive.  I have this thing tuned finely too.  Well now toward the end of development I have finally had to face that bug so to speak.  I can force it by clicking spastically on my buttons causing an event storm and making the system update the GUI.  SO!  Great start, I can now cause the problem on a regular basis (for you youngsters that is actually a good thing)!  Alright, so I start with the easiest investigative tool, CNTRL - ALT - DEL into Windows 7 Performance Monitor.  As you can tell from


View Complete Post


More Related Resource Links

Windows with C++: Exploring High-Performance Algorithms

  

See how you can gain efficiency in surprising ways by looking closely at your algorithms, the data they operate on, and the hardware you're designing for.

Kenny Kerr

MSDN Magazine October 2008


Winning Forms: Practical Tips For Boosting The Performance Of Windows Forms Apps

  

This article discusses techniques you can use to ensure that Windows Forms-based apps provide optimal performance to match the rich UI responsiveness they're known to provide.

Milena Salman

MSDN Magazine March 2006


COM+ and Windows 2000: Ten Tips and Tricks for Maximizing COM+ Performance

  

There are many tricks to getting the most out of COM+, and this article offers the author's top 10. The tips cover the importance of transaction processing, the use of the COM+ catalog, and the design of three-tier distributed systems. Writing components using the correct threading model, knowing when to use compensating transactions, and the importance of stress testing early in the process also make the list. Other indespensible suggestions emphasize the importance of recognizing where an object's state is located, choosing appropriate authentication levels for COM+ applications, using Queued Components correctly, and implementing object pooling.

David S. Platt

MSDN Magazine December 2000


SQL performance problem

  
I have a production database replicated on my local machine.  I run a select query for 10k rows.  On my local box the query takes less than half a second.  On production the query takes a full 4 seconds.  I have looked at the SQL Server Profiler and I see a lot of activity on production.  I would like to pinpoint exactly what or what group of items is causing the performance to degrade on production.  What are your suggestions? Local Environment:  SQL 2008, 32bit quad-core processor, 4gb ram Production:             SQL 2000, 32bit 8 processor cores, 16gb ram BrianMackey.NET

Performance problem when passing a "nullable parameter"

  
Say @startDate and @endDate are my datetime parameters. If users does not want to limit the @startDate for example, he/she sends a null value to @startDate. Same goes for @endDate (and any other parameter). What I like doing: Select * From MyTable Where MyTable.Date >= IsNull(@startDate, MyTable.Date) And MyTable.Date <= IsNull(@endDate, MyTable.Date) The above looks nice as far as coding but when I look at the execution plan I'm surprised to see the my clustered index (that has it's first column as "MyTable.Date") is not used. instead I get an index scan. More frustrating is that the following works with an index seek and is much faster: Select * From MyTable Where MyTable.Date >= @startDate And MyTable.Date <= @endDate So what should I do? am I doing something wrong? I don't want to use dynamic sql because it's generally slower and prone to sql injection (is dynamic sql my only choise)? I don't want to use "if statements" because then i'd have to rewrite my code several times (in this case three combinations but some of my procedures have up to 8 "nullable" parameters). Or maybe there is another way of implementing what I call here "nullable parameters". obviously I preformance is crucial. thanks, Dror

Performance monitor tools

  
Hi,What is the best tool to continously monitor the performance of the SQL Server, i.e. which queries are the most CPU intensive, which ones are causing most I/O operations etc.. I am not a hardcore DBA and I do not have the time to all the time search for information about which queries are causing the DB-server to run on a very high load. What I would like is to get a report with information about e.g. these are the queries that you should optimize etc..I would really appreciate some recommendations on the best way to continously get information about what is causing the high load on the servers and what can be done to improve the performance.Thanks in advance!Best regardsLars

Checkpointing and IO performance problem

  
Hi guys, Just a quick question regarding a problem i seem to be having at the moment which i can't seem to get my head around. I have started at an organisation which has a very basic setup. A clustered sql 2000 sp4 server with approx 90 databases on. Only a few of these have much traffic on and performance on the whole seems ok. The server is connected to a SAN with two LUNS being made available for the data and log drives. Performance in general is ok with disk latency for reads and writes on both luns around 10-20ms. There is a constant stream of reads using approx 1.5 - 2 mb per second from the data drive. On the odd instance disk read go upto 20-30mb per second and the disk queue may rise to 10 for a very short period of time but on the whole the disks seam to handle it and latency for the above peak may go upto 200ms. The problem seems to happen when checkpointing seems to happen. I have set the trace flags so i can see what database is checkpointing at any given time and when the highest throughput database checkpoints we see performance problems. Latency can go to 20-30 seconds for 30-60 seconds which effectively halts processing for this time. Errors start appearing in the sql log for files taking longer than 15s to respond. What's throwing me is that the throughput on the disks doesn't seem very high at these points. As an example checkpoint pages

Performance problem when rendering in PDF, printing (SSRS2008)

  
Hi I have a report containing a rectangle/tablix attached to a dataset of course details. The rectange contains a number of text boxes showing course details (fields from the dataset: course title, department etc.) and a sub-report which is a list of students on that course (controlled by passing appropriate parameters). This worked fine until I decided I wanted one of the text boxes (course_title) to repeat on each page whilst printing. To achieve this I added a column group on course_title and set the header to repeat on each page, as suggested elsewhere on this forum. This works fine when simply viewing the report in BIDS or after deployment (SharePoint), but not when attempting to print, print preview or convert to another format (e.g. pdf). The report itself runs in a matter of seconds (<10) but the conversion runs for about 90 seconds before aborting (probably due to server settings) and in IE taking the browser down with it. I've tried not repeating the group header on each page but the problem persists, unless I remove the group altogether. I've also tried adding the student dataset and the list directly into the main report, but that created too many restrictions on the list (e.g. not enabling list column headers to be repeated on each page). Is there a known issues with grouping affecting the performance in this way? Are there other ways around any of these p

Performance Monitor Counters To View How "Busy" A SQL Server Is

  
What are some good performance monitor counters to look at, when trying to figure out how "busy" our SQL 2008 server is? We were told to look at: SQLServer: SQL Statistics: Batch Requests/Sec and SQLServer: Databases: Transaction/Sec . Any other critical ones? Is there a counter to get the number of  selects, updates, and deletes independently per second? Thanks.

The performance counter registry hive is corrupted on Windows 2008 R2 Foundation 64Bits

  
Hello, I know we have a few posts about this but not exactly about this windows version. I tried: http://support.microsoft.com/kb/300956 But nothing!... :( Could someone help me? Thanks, Renato

Performance problem with date range JOINs

  

Hi,

when I am joining two tables where one table has two columns which specify a date range and the other table has one column with a single date which must be in that range for a join, then the performance is not so hot. The T-SQL example only shows the basic query scheme, in reality there are appropriate indexes (but not on the date columns since I found them not helpful) and the DateRange column has about 100 mio rows and the Incident table about 200,000 rows. The query currently takes hours, I must speed it up by at least factor 10.

TIA for any ideas. Regards
Tim

DECLARE @DateRange TABLE (
	[DateRangeID] [int] NOT NULL PRIMARY KEY,
	[RangeTypeID] [smallint] NOT NULL,
	[StartDate] [date] NOT NULL,
	[EndDate] [date] NOT NULL)

DECLARE @Incident TABLE (
	[IncidentID] [int] NOT NU

Performance Counters to monitor DirectoryServices.AccountManagement and Security.AccessControl activ

  

Hi Everyone,

I'm writing an application that takes in a file name as input, and then extracts its ACLs using FileSecurity.GetAccessRules().  Once I have these ACLs, I go through and identify each group member, obtain a group principal using Principal.FindByIdentity(), and traverse group principals using GroupPrincipal.GetMembers().  Undoubtedly the first call is going to hit the share where the file is located, and the next two calls are going to translate into LDAP queries against the AD server. 

I'm wondering, are there performance counters that I can attach to on the machine where the code runs so that I can monitor how hard I'm hitting each server?  The thing is that I'm not going to be able to attach a counter to the server iteself.  So Ideally, I would want to know how many bytes I'm sending out of this process per second.  I'm currently using category "Process", counter "IO Other Bytes/sec" to monitor activity.  However, this counter doesn't seem to map 1-to-1 from the data that it reports and the data that Perfmon reports on the network share / AD server.  The mapping seems to be more of a 1:5 relationship, so that when the local process reports that it's sending 10,000 bytes/sec, Perfmon reports that it's getting hit with 50,000 bytes/sec.  Is there a better counter to attach

SQL performance monitor error

  

I am runninng Alert monitor on SQL 2005 server and got this error:

Windows cannot load extensible counter DLL MSSQLServerOLAPService, the first DWORD in data section is the Windows error code.

Event ID 1023, source Perflib, Type: error

 

Tried to follow MS article, but it did not fix a problem.

 

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp

.

Performance Counters to monitor DirectoryServices.AccountManagement and Security.AccessControl activ

  

Hi Everyone,

I'm writing an application that takes in a file name as input, and then extracts its ACLs using FileSecurity.GetAccessRules().  Once I have these ACLs, I go through and identify each group member, obtain a group principal using Principal.FindByIdentity(), and traverse group principals using GroupPrincipal.GetMembers().  Undoubtedly the first call is going to hit the share where the file is located, and the next two calls are going to translate into LDAP queries against the AD server. 

I'm wondering, are there performance counters that I can attach to on the machine where the code runs so that I can monitor how hard I'm hitting each server?  The thing is that I'm not going to be able to attach a counter to the server iteself.  So Ideally, I would want to know how many bytes I'm sending out of this process per second.  I'm currently using category "Process", counter "IO Other Bytes/sec" to monitor activity.  However, this counter doesn't seem to map 1-to-1 from the data that it reports and the data that Perfmon reports on the network share / AD server.  The mapping seems to be more of a 1:5 relationship, so that when the local process reports that it's sending 10,000 bytes/sec, Perfmon reports that it's getting hit with 50,000 byte

Performance problem

  

I have a problem. My application is too slow in browser and I don't understand why.

Please, see the screenshot of HttpWatch.

 

600ms between 'HTTP Load' and 'Render Start'

532ms between 'Render Start' and 'Page Load'

 

DOM Loading, scripts and rendering take more than second. Why? It's page with grid(10-30 rows) and filter.

 

Please, help...




Strange query performance

  

Hi

I have the following scalar function:

CREATE FUNCTION dbo.GetPeriod()
RETURNS INT
AS
BEGIN
 RETURN 201003
END
GO

the following query does not return:

SELECT *
 FROM dbo.LargeDataTable
 WHERE intPeriod >= dbo.GetPeriod()

yet the following does return rapidly:

SELECT *
 FROM dbo.LargeDataTable
 WHERE intPeriod >= (SELECT dbo.GetPeriod())

?

Phil

 

 

 


PHuhn
Categories: 
ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend