SlideShare a Scribd company logo
Perf by design
 Rico Mariani
Architect
Microsoft Corporation



























































































 http://blogs.msdn.com/ricom

 http://msdn.microsoft.com/en-us/library/aa338212.aspx

 http://blogs.msdn.com/maoni/

 http://blogs.msdn.com/tess/
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Perf by design
Vance Morrison
Performance Architect
Microsoft Corporation




















Stopwatch sw = Stopwatch.StartNew();
// Something being measured
sw.Stop();
Console.WriteLine("Time = {0:f3} MSec", sw.Elapsed.TotalMilliseconds);






1) Go to Control panel’s
Power Options 2) Set to High Performance
•If you don’t do this, CPU is typically throttled to save power
•Throttling causes less consistent measurements
 Vance Morrison






















 Vance Morrison




















Related Sessions
Session Title Speaker Day Time Location
PC53 Lunch: Building High Performance JScript Apps Sameer
Chabungbam
Mon 12:45-1:30PM 515B
Microsoft Visual Studio: Bringing out the Best in Multicore Systems Hazim Shafi Mon 1:45-3:00PM 502A
WCF: Zen of Performance and Scale Nicholas Allen Tues 12:45-1:30PM 515B
SQL Server 2008: Developing Large Scale Web Applications and Services Jose Blakeley Tues 1:45-3:00PM 411
Using Instrumentation and Diagnostics to Develop High Quality Software Ricky Buch Tues 5:15-6:30PM 408B
TL24 Improving .NET Application Performance and Scalability Steve Carol Wed 1:15-2:30PM 153
Parallel Programming for Managed Developers with the Next Version of
Microsoft Visual Studio
Daniel Moth Wed 10:30-11:45AM Petree
Hall
HOL Code Title
TLHOL11 VSTS 2010: Diagnostics and Performance
Related Labs
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Perf by design
Vance Morrison
Performance Architect
Microsoft Corporation










L1 Cache L2 Cache Memory Disk
Size 64K 512K 2000M 100,000M
Access Time .4ns 4ns 40ns 4,000,000ns


































Select Columns
Working Set tends to Overestimates Memory Impact (shared OS files)
But does not account for read files. Private Working Set Underestimates Impact
Small < 20Meg WS Med ~ 50 Meg WS Large > 100 Meg WS
Small < 5 Meg Private Med ~ 20 Meg Private Large > 50 Meg Private


Adding New Counters
1 Open .NET CLR Memory 2 Select Counters 4 Add 5 OK
3 Select Process
Set Display to Report GC Heap Size
So 7.3 Meg of the 8.6 Meg of private working set is the GC Heap
% Time in GC ideally less than 10%
Ratios of GC Generations Gen0 = 10 x Gen 1, Gen 1 = 10 x Gen 2
% Time in GC

1 Total WS
2 Breakdown
3 DLL Breakdown
GC Heap Here
Only These Affect
Cold Startup










 In Either Case when Working Set Large (> 10Meg)
 Throughput is lost due to cache misses
 Server workloads are typically cache limited








 Thus it Pays to Think about Memory Early!
















































 Finding Anomalous Memory use (AKA Leaks)
XmlView Demo












Related Sessions
Session Title Speaker Day Time Location
PC53 Lunch: Building High Performance JScript Apps Sameer
Chabungbam
Mon 12:45-1:30PM 515B
Microsoft Visual Studio: Bringing out the Best in Multicore Systems Hazim Shafi Mon 1:45-3:00PM 502A
WCF: Zen of Performance and Scale Nicholas Allen Tues 12:45-1:30PM 515B
SQL Server 2008: Developing Large Scale Web Applications and Services Jose Blakeley Tues 1:45-3:00PM 411
Using Instrumentation and Diagnostics to Develop High Quality Software Ricky Buch Tues 5:15-6:30PM 408B
TL24 Improving .NET Application Performance and Scalability Steve Carol Wed 1:15-2:30PM 153
Parallel Programming for Managed Developers with the Next Version of
Microsoft Visual Studio
Daniel Moth Wed 10:30-11:45AM Petree
Hall
HOL Code Title
TLHOL11 VSTS 2010: Diagnostics and Performance
Related Labs
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Perf by design
Vance Morrison
Performance Architect
Microsoft Corporation










6
0
For all the same Reasons it is for People


























6
4
int loopCount = 10;
for (int tId = 1; tId <= 3; tId++) { // Create three work items.
ThreadPool.QueueUserWorkItem(delegate
{
for (int i = 0; i < loopCount; i++)
{
Console.WriteLine("Thread i={0} time: {1}", i, DateTime.Now);
Thread.Sleep(1000);
}
});
}
Console.WriteLine("Waiting for workers. Hit return to end program.");
Console.ReadLine();
You can capture variables
Anonymous Delegate











6
6
0 5 10 15 20 25 30 35 40 45 50
0
20
40
60
80
100
120
140
160
Concurrency Level
Throughput
Work items with 10% CPU on a dual core system
using ThreadPool.QueueUserWorkItem().
Reasons for perf degradation
1. Context switches
2. Memory contention
3. Hot Locks
4. Disk Contention
5. Network Contention









Task task1 = Task.Create(delegate
{
Console.WriteLine("In task 1");
Thread.Sleep(1000); // do work
Console.WriteLine("Done task 1");
});
Task task2 = Task.Create(delegate
{
Console.WriteLine("In task 2");
Thread.Sleep(2000); // do work
Console.WriteLine("Done task 2");
});
If (userAbort) { task1.Cancel(); task2.Cancel(); }
Task.WaitAll(task1, task2);
Tasks now have handles
Exceptions in tasks propagated on wait
You can cancel work
You can wait on the
handle to synchronize
Future<int> left = Future.Create(delegate
{
Thread.Sleep(2000); // do work
return 1;
});
Future<int> right = Future.Create(delegate
{
Thread.Sleep(1000); // do work
return 1;
});
Console.WriteLine("Answer {0}", left.Value + right.Value);
Left and right
represent integers,
but they may not be
computed yet
Asking for the value
forces the wait if the
future is not already
done
In this case the right
value was done, so no
wait was needed
Loops






for(int i = 0; i < n; i++)
{
work(i);
}
foreach(T e in data)
{
work(e);
}
Parallel.For(0, n, i =>
{
work(i);
}
Parallel.ForEach(data, e =>
{
work(e);
}
 Enable LINQ developers to leverage parallel
hardware






 Augments LINQ-to-Objects, doesn’t replace it






















Related Sessions
Session Title Speaker Day Time Location
Microsoft Visual Studio: Bringing out the Best in Multicore Systems Hazim Shafi Mon 1:45-3:00PM 502A
TL24 Improving .NET Application Performance and Scalability Steve Carol Wed 1:15-2:30PM 153
Parallel Programming for Managed Developers with the Next Version of
Microsoft Visual Studio
Daniel Moth Wed 10:30-11:45AM Petree
Hall
Parallel Symposium: Addressing the Hard Problems with Concurrency David Callahan Thurs 8:30-10:00AM 515A
Parallel Symposium: Future of Parallel Computing Dave Detlefs Thurs 12:00-1:30PM 515A
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Perf by design
 Mark Friedman
Architect
Developer Division
Microsoft Corporation










78

Dynamic



<A HREF="resumepage.html">my resume</A>





<LINK REL=STYLESHEET HREF="mystyles.css"
TYPE="text/css">
79









connectionless sessionless


80

 Postback
 HttpContext

 ViewState
 Session State


81






82

 On the client
 Performance counters
 Network Monitor traces
 ETW traces (IE, etc.)
 Direct measurements inside Javascript code
 On the server
 IIS logs (especially Time-Taken fields)
 Performance counters
 web app response time data is not available
 ETW traces (IIS, ASP.NET, CLR, etc.)
 volume considerations
 Direct measurement inside .NET code
 e.g., Stopwatch
83

 End-to-End
 Multiple tiers
84

network latency
Network
Latency
Client-side
script
Server-side
.aspx
Network
Latency
Client-side
script
Server-side
.aspx
Network
Latency
Client-side
script
Server-side
.aspx
Unit Test Load Test
e.g., VS TeamTest
Production
85
 Page Load Time









 Ready 86
87
88
Perf by design
 VRTA
90













91








 Semi-dynamic
92

may be






93









 effective
 Caching Architecture Guide for .NET Framework
Applications
94
w3wp.exe
Common Language Runtime (CLR)
JIT compiler
Garbage Collection threads
mscoree.dll
mscorsvr.dll
MyApp.dll
95
 runat=“server”
Form:
<asp:DropDownList id="FileDropDownList" style="Z-INDEX: 111; LEFT:
192px; POSITION: absolute; TOP: 240px“ runat="server" Width="552px"
Height="40px“ AutoPostBack="True"></asp:DropDownList>
Code behind:
Private Sub FileDropDownList_SelectedIndexChanged _
(ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles FileDropDownList.SelectedIndexChanged
Session("FileSelected") = FileDropDownList.SelectedValue
End Sub
96
97
IIS Architecture
User
Kernel
HTTP
TCP
IP
Network
Interface
HTTP Kernel Mode
Driver
(http.sys)
HTTP Response Cache
(Physical Memory)
LSSAS
Windows
Authentication
SSL
Inetinfo
IIS
Administration
FTP
Metabase
SMTP
NNTP
SVCHOST
W3SVC
W3wp
W3wp
Mscoree.dll
http
<code-behind>.dll
Default.aspx
Application Pool
W3wp
W3wp
Mscoree.dll
<code-behind>.dll
Default.aspx
Application Pool
WAS
Cache
net.tcp net.tcp
http
HTTP Request
98

http.sys

Response object cache


 Web Service
CacheKernel: Current
URIs Cached, etc.
See “IIS 7.0 Output Caching”
at http://learn.iis.net/page.aspx/154/iis-7-output-caching/
99

w3wp.exe



100
 w3wp.exe

From a command line:
windowssystem32inetsrvappcmd list WP
Perf by design
102
103







Request Life-cycle Events
Begin Request
Authentication
Authorization
Resolve Cache
Map Handler
Acquire State
Execute Handler
Release State
Update Cache
Log Request
Send Request
104

Event Event
BeginRequest PreRequestHandlerExecute
AuthenticateRequest PostRequestHandlerExecute
PostAuthenticateRequest ReleaseRequestState
AuthorizeRequest PostReleaseRequestState
PostAuthorizeRequest PostMapRequestHandler
ResolveRequestCache PostMapRequestHandler
PostResolveRequestCache PostMapRequestHandler
MapRequestHandler UpdateRequestCache
PostMapRequestHandler PostUpdateRequestCache
AcquireRequestState LogRequest
PostAcquireRequestState EndRequest 105





 <modules>




106
RequestNotification
 Mark Friedman
Architect
Developer Division
108

109

110

Level = 5 (Diagnostic level)
111

 tracerpt
tracerpt filename.etl –of CSV –o mytrace.csv
 logparser
logparser "select * from filename.etl" -e 20
-o:DATAGRID -rtp 30 -compactModeSep "|"
 xperf
112
113
114

 UseUrlFilter to control the volume of data
 Configure the TraceUriPrefix
See “How to Trace Requests for a
Specific URL or Set of URLs” at
http://www.microsoft.com/technet/pro
dtechnol/WindowsServer2003/Library/II
S/c56d19af-b3d1-4be9-8a6f-
4aa86bacac3f.mspx?mfr=true
115




 HttpContext

 Request
 Response
 Session
 Cache
116

 HttpContext.Request
 HttpMethod (GET, POST, etc.)
 URL
 Cookies collection
 Headers
 InputStream
 UserHostAddress (IP address of the Requestor)
 etc.
 The ASP.NET programming model provides several
facilities to persist User/Application state
Event Usage
PreInit Create dynamic controls, set the Theme; master page, etc.
Init Read or initialize control properties
InitComplete Raised by the Page object.
PreLoad Perform any processing on your page or control before the Load event.
Load The Page calls the OnLoad event method on the Page, then recursively for each
child control and its children
Control events Button Clicks and other Control events are processed after Page_Load
LoadComplete Fires after all controls on the page are loaded.
PreRender Data binding for controls occurs now.
SaveStateComplete Fires when the ViewState for all controls is complete and saved.
Render Method that writes out the html markup associated with the control.
Unload Do final cleanup, such as closing files or database connections
117
118
 Session State
 Cache

 e.g.,
 Presentation Layer
 Business Logic Layer
 Data Layer
119




120








 HttpApplicationState


121

 Application HttpApplicationState
 Page

 Page.Cache
 Session












State Management
ViewState Stored in _VIEWSTATE hidden field
ControlState Override if ViewState is turned off on the Page
HiddenField control
Cookies Add cookie data to the Cookies collection in the HttpResponse object
Query strings
Application State HttpApplicationState
Session State
Profiles SqlProfileProvider
122
 ViewState






123
Perf by design
125
 ViewState
 Passed to the client in _ViewState hidden field in the
Response message
 Returned to the Server on a postback Request
 Inspect using

 View html Source on the client
 3rd party tools like Fiddler
 Be careful of
 Data bound controls (GridView, etc.)
 Large TreeViews, DropDownLists, etc.


126
127
 Page.Application

Application.Lock();
Application["PageRequestCount"] =
((int)Application["PageRequestCount"])+1;
Application.UnLock();
128
ASP.NET Session state
 HttpContext.Session
 Data associated with a logical sequence of Requests
that need to be persisted across interactions
 Unique session IDs are passed along automatically with
each Request as either cookies or embedded in the
URL
 Session data is stored in a Dictionary collection,
allowing individual session state variables to be
accessed directly by Key name
 Three external storage options
 InProc
 StateServer
 SQL Server
 Timeout management
129
 HttpContext.Session
 InProc option provides fastest service, but does
not permit access to Session data from a
different process in a Web garden application
or a different Web server in a cluster
 Using alternatives to InProc session storage has
significant performance implications
 StateServer
 SQL Server
 Custom provider
 Measure impact using the IIS
RequestNotification events
 e.g., AcquireRequestState, PostAcquireRequestState
130
Session State options
 InProc
 StateServer



 SQLServer



131
132
Session State options
 InstallSqlState.sql InstallPersistSqlState.sql
 sessionState

 Frequency of re-use
 Cost to re-generate
 Size

Max(Cache Hit %)
Min(Space x Time)
133





diminishing returns
134
0 25 50 75 100
Cache
Size
Cache Hit %


 IIS kernel mode Cache
 ASP.NET Application cache
 ASP.NET Page cache






135





 effective
 Note: difficult complex

136
137

 HttpContext.Cache
 Page.Cache


 @ OutputCache
 VaryByParam


 <PartialCaching>

 Substitution.MethodName
 HttpResponse.WriteSubstitution

138



 frequency of use x object size




 Underused


139
140
 Cache Dictionary
 IEnumerable




141

 Add



 Insert
 Get
 Remove
142







 AggregateCacheDependency
 SqlCacheDependency

 http://msdn.microsoft.com/en-
us/library/system.web.caching.sqlcachedependency.a
spx
143
 effectiveness
 Cache API Entries
 Cache API Hits
 Cache API Misses
 Cache API Hit Ratio
 Cache API Turnover Rate
144

public void RemovedCallback
(String k, Object v,
CacheItemRemovedReason r){
}
 Examine the CacheItemRemovedReason






 InstrumentedCacheValue
// unfortunately, it is a sealed class; otherwise…
// private Int64 _refcount;
// private DateTime _lastreftimestamp;
145
146

 Count
 EffectivePrivateBytesLimit

 EffectivePercentagePhysicalMemoryLimit


disableMemoryCollection
disableExpiration
privateBytesLimit
percentagePhysicalMemoryUsedLimit privateBytesPollTime="HH:MM:SS"
147


 @ OutputCache
 Duration
 VaryByParam
 Location






148
 HttpCachePolicy
149

 Response.Cache.SetCacheability
HttpCacheability






150
 effectiveness
 Cache Entries
 Cache Hits
 Cache Misses
 Cache Hit Ratio
 Cache Turnover Rate
151
 When page caching will not work due to
dynamic content


[PartialCaching(120)] public partial class
CachedControl :
System.Web.UI.UserControl
// Class Code

 Banner ads, etc.


 that did
not change
 AJAX
Javascript asynchronous HTTP
requests


152


 ICallbackHandler





<asp:ScriptManager EnablePartialRendering="True“ />




 153

 XMLHttpRequest
xmlhttp.open('GET', url, true);
xmlhttp.onreadystatechange = AsyncUpdateEvent;
xmlhttp.send(null);
154
 UpdatePanel





 Triggers
 ChildrenAsTriggers
 “ AJAX Application Architecture, Part 1
155

 Sys.Application.Init



 Sys.Application.Load

UpdatePanel

156
 PageRequestManager



 pageLoading
 pageLoaded

 endReques

157


 ICallbackEventHandler
 RaiseCallbackEvent
 GetCallbackResul





 Implementing Client Callbacks Programmatically Without Postbacks
in ASP.NET Web Pages 158
 REST
 AJAX library wraps asynchronous WCF service endpoints

 Try the new Asynchronous WCF HTTP Module/Handler
for long running Requests
 New in VS 2008 SP1
 Releases the IIS worker thread immediately after processing

 See Wenlong Dong’s blog for details

 http://msdn.microsoft.com/en-us/library/cc907912.aspx
159



 WebHttpBinding


160
 Binding
161
Binding Response Time (msecs) Throughput
wsHttpBinding 1300 1200
basicHttpBinding 1150 1800
netTcpBinding 400 5100
netNamedPipeBinding 280 7000
0
2000
4000
6000
8000
Throughput
Source: Resnik, Crane, & Bowen,
Essential Windows
Communication Foundation,
Addison Wesley, 2008. Chapter 4.
See also, “A Performance Comparison of
Windows Communication Foundation (WCF)
with Existing Distributed Communication
Technologies”
Caution: your
mileage will vary.



[ServiceContract(Session = true)]
interface IMyContract {...}
[ServiceBehavior(InstanceContextMode =
InstanceContextMode.PerSession)]
class MyService : IMyContract {...}
<netTcpBinding>
<binding name="TCPSession">
<reliableSession enabled="true"
inactivityTimeout="00:25:00"/>
</binding>
</netTcpBinding>



 in the order in which
they are received

conversation






[ServiceBehavior(
InstanceContextMode=InstanceContextMode.Single,
ConcurrencyMode = ConcurrencyMode.Multiple )]
class MySingleton : IMyContract, IDisposable

 ConcurrencyMode.Multiple
 requires locking and synchronization of shared state
data
 ConcurrencyMode.Reentrant

 serviceThrottling
<behavior name="Throttled">
<serviceThrottling
maxConcurrentCalls="100"
maxConcurrentSessions=“30"
maxConcurrentInstances=“20" />
performanceCounters
 Mark Friedman
Architect
Developer Division

<system.serviceModel>
<diagnostics performanceCounters="All"></diagnostics>
But
<diagnostics
performanceCounters=“ServiceOnly"></diagnostics>
is recommended (less overhead)
167
168
169

 “Using Service Trace Viewer for Viewing
Correlated Traces and Troubleshooting”
 Essential Windows
Communication Foundation
170
171

new "http://localhost:8000/HelloService"
string "http://localhost:8000/HelloService/MyService"
using new
new
"Press <enter> to terminate service"

172







 Measure:



 173
 Fiddler
174






 TCP Window Size



without




175
Best Practices for Improving Page Load Time
177
178





179

180



 (serialized)









181
182
183










 184




 Get
Request


185

More Related Content

PPTX
Debugging performance issues, memory issues and crashes in .net applications rev
PPTX
Common asp.net production issues rev
PPTX
.Net debugging 2017
PPTX
Windows Crash Dump Analysis
PDF
Crash dump analysis - experience sharing
PPTX
Memory Dump
PDF
Crash (or) Hang dump analysis using WinDbg in Windows platform by K.S.Shanmug...
PPTX
Who’s afraid of WinDbg
Debugging performance issues, memory issues and crashes in .net applications rev
Common asp.net production issues rev
.Net debugging 2017
Windows Crash Dump Analysis
Crash dump analysis - experience sharing
Memory Dump
Crash (or) Hang dump analysis using WinDbg in Windows platform by K.S.Shanmug...
Who’s afraid of WinDbg

What's hot (17)

PDF
Attacker Ghost Stories - ShmooCon 2014
PDF
44CON 2014 - Breaking AV Software
PDF
Practical Exploitation - Webappy Style
PPTX
Indicators of compromise: From malware analysis to eradication
PPTX
[ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers -
PDF
6.Temp & Rand
PDF
Abusing Symlinks on Windows
PPTX
COM Hijacking Techniques - Derbycon 2019
PDF
James Forshaw, elevator action
PDF
Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)
PDF
Continuous Quality Assurance using Selenium WebDriver
 
PDF
Multithreaded XML Import (San Francisco Magento Meetup)
 
PPTX
Teensy Programming for Everyone
PDF
Metasploit - The Exploit Learning Tree
PDF
Debugging ZFS: From Illumos to Linux
PPTX
Debugging NET Applications With WinDBG
PPTX
Sql Bits Sql Server Crash Dump Analysis
Attacker Ghost Stories - ShmooCon 2014
44CON 2014 - Breaking AV Software
Practical Exploitation - Webappy Style
Indicators of compromise: From malware analysis to eradication
[ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers -
6.Temp & Rand
Abusing Symlinks on Windows
COM Hijacking Techniques - Derbycon 2019
James Forshaw, elevator action
Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)
Continuous Quality Assurance using Selenium WebDriver
 
Multithreaded XML Import (San Francisco Magento Meetup)
 
Teensy Programming for Everyone
Metasploit - The Exploit Learning Tree
Debugging ZFS: From Illumos to Linux
Debugging NET Applications With WinDBG
Sql Bits Sql Server Crash Dump Analysis
Ad

Similar to Perf by design (20)

PPT
Overview Of Parallel Development - Ericnel
PDF
.NET Memory Primer (Martin Kulov)
PPTX
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
PPTX
Performance and how to measure it - ProgSCon London 2016
PPTX
Overview of VS2010 and .NET 4.0
PPTX
"Making .NET Application Even Faster", Sergey Teplyakov.pptx
PPT
Parallel Extentions to the .NET Framework
PDF
Parallel Programming With Microsoft Net Design Patterns For Decomposition And...
PPTX
Performance in .net best practices
PPTX
Skillwise - Enhancing dotnet app
PPTX
Vb essentials
PPTX
Performance is a feature! - London .NET User Group
PPTX
Core .NET Framework 4.0 Enhancements
PPTX
Multi core programming 1
PPT
Web services, WCF services and Multi Threading with Windows Forms
PPTX
.NET Multithreading/Multitasking
PPTX
Whats New In 2010 (Msdn & Visual Studio)
PPTX
Performance In The .Net World
PDF
Developer Efficiency
PPT
A Lap Around Visual Studio 2010
Overview Of Parallel Development - Ericnel
.NET Memory Primer (Martin Kulov)
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
Performance and how to measure it - ProgSCon London 2016
Overview of VS2010 and .NET 4.0
"Making .NET Application Even Faster", Sergey Teplyakov.pptx
Parallel Extentions to the .NET Framework
Parallel Programming With Microsoft Net Design Patterns For Decomposition And...
Performance in .net best practices
Skillwise - Enhancing dotnet app
Vb essentials
Performance is a feature! - London .NET User Group
Core .NET Framework 4.0 Enhancements
Multi core programming 1
Web services, WCF services and Multi Threading with Windows Forms
.NET Multithreading/Multitasking
Whats New In 2010 (Msdn & Visual Studio)
Performance In The .Net World
Developer Efficiency
A Lap Around Visual Studio 2010
Ad

More from Tess Ferrandez (12)

PPTX
funwithalgorithms.pptx
PPTX
Debugging .NET apps
PPTX
CSI .net core - debugging .net applications
PPT
Fun421 stephens
PPTX
C# to python
PPTX
Facenet - Paper Review
PPTX
AI and Ethics - We are the guardians of our future
PPTX
Deep learning and computer vision
PPTX
A practical guide to deep learning
PDF
Notes from Coursera Deep Learning courses by Andrew Ng
PPTX
A developers guide to machine learning
PPTX
My bot has a personality disorder
funwithalgorithms.pptx
Debugging .NET apps
CSI .net core - debugging .net applications
Fun421 stephens
C# to python
Facenet - Paper Review
AI and Ethics - We are the guardians of our future
Deep learning and computer vision
A practical guide to deep learning
Notes from Coursera Deep Learning courses by Andrew Ng
A developers guide to machine learning
My bot has a personality disorder

Recently uploaded (20)

PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
top salesforce developer skills in 2025.pdf
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
System and Network Administration Chapter 2
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Digital Strategies for Manufacturing Companies
PDF
Nekopoi APK 2025 free lastest update
PDF
How Creative Agencies Leverage Project Management Software.pdf
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Odoo Companies in India – Driving Business Transformation.pdf
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Upgrade and Innovation Strategies for SAP ERP Customers
top salesforce developer skills in 2025.pdf
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Internet Downloader Manager (IDM) Crack 6.42 Build 41
System and Network Administration Chapter 2
PTS Company Brochure 2025 (1).pdf.......
ISO 45001 Occupational Health and Safety Management System
Wondershare Filmora 15 Crack With Activation Key [2025
CHAPTER 2 - PM Management and IT Context
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Which alternative to Crystal Reports is best for small or large businesses.pdf
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Digital Strategies for Manufacturing Companies
Nekopoi APK 2025 free lastest update
How Creative Agencies Leverage Project Management Software.pdf

Perf by design