Are these stress test results typical?

R

Rick

Hello,

I ran Microsoft's free "Web Application Stress" tool to see how asp.net/c#
performed against html.
Are these results typical?

Network:
WAS ran on a server with a t3 Internet connection to the test server.
Test Server:
Windows 2000 SP 4
1 GIG AMD CPU
1 GIG RAM
IIS 5, no logging

Test:
Page1.htm 20 lines of super simple html text, no tables, css etc.
Page2.aspx same extact text as in page1.htm (no asp controls added), but
created in VS with code behind cs file that I didn't alter.

WAS Settings:
All default except:
Stress Level (threads) 30 [sockets remained 1 per thread]
Test Run Time: 5 mins

Results:

Page2.aspx
CPU Averaged 94%

Number of test clients: 1
Number of hits: 83283
Requests per Second: 277.61

Socket Statistics
----------------------------------------------------------------------------
----
Socket Connects: 83313
Total Bytes Sent (in KB): 22779.38
Bytes Sent Rate (in KB/s): 75.93
Total Bytes Recv (in KB): 93532.59
Bytes Recv Rate (in KB/s): 311.78

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
===============================================
GET 83283 61.95 61.98 No




Page1.htm
CPU Averaged 21%

Number of test clients: 1
Number of hits: 95276
Requests per Second: 317.58

Socket Statistics
----------------------------------------------------------------------------
----
Socket Connects: 95306
Total Bytes Sent (in KB): 20662.04
Bytes Sent Rate (in KB/s): 68.87
Total Bytes Recv (in KB): 109604.62
Bytes Recv Rate (in KB/s): 365.35

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
=================================================
GET 95276 48.60 48.62 No


At first blush the results seem to be in order, but asp.net really sucked up
the CPU for a dummy page. What do you think?

Rick

P.S. Thank you, but caching advice won't apply to our needs.
 
R

Rick

Here's the web.config file:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

<system.web>

<compilation
defaultLanguage="c#"
debug="false"
/>

<customErrors
mode="Off"
/>

<authentication mode="None" />

<authorization>
<allow users="*" /> <!-- Allow all users -->
<!-- <allow users="[comma separated list of users]"
roles="[comma separated list of roles]"/>
<deny users="[comma separated list of users]"
roles="[comma separated list of roles]"/>
-->
</authorization>

<trace
enabled="false"
requestLimit="10"
pageOutput="false"
traceMode="SortByTime"
localOnly="true"
/>


<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data
source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>

<globalization
requestEncoding="utf-8"
responseEncoding="utf-8"
/>

</system.web>

</configuration>
 
S

S. Justin Gengo

Rick,

Those results sound correct.

But why would anyone use an .aspx page to deliver static content? Of course
the .aspx page is going to use the cpu intensively for a moment. It is
compiling the page whether there is dynamic content or not because the page
is linked to the application's .dll.

A real test would be a database pull on an .asp page or j2ee page vs. the
same datapull and display in a .aspx page.

If, somewhere in your asp.net application, all you need to do is deliver
static content you should definitely use a .htm page.

--
Sincerely,

S. Justin Gengo, MCP
Web Developer / Programmer

Free code library at:
www.aboutfortunate.com

"Out of chaos comes order."
Nietzche


Rick said:
Hello,

I ran Microsoft's free "Web Application Stress" tool to see how asp.net/c#
performed against html.
Are these results typical?

Network:
WAS ran on a server with a t3 Internet connection to the test server.
Test Server:
Windows 2000 SP 4
1 GIG AMD CPU
1 GIG RAM
IIS 5, no logging

Test:
Page1.htm 20 lines of super simple html text, no tables, css etc.
Page2.aspx same extact text as in page1.htm (no asp controls added), but
created in VS with code behind cs file that I didn't alter.

WAS Settings:
All default except:
Stress Level (threads) 30 [sockets remained 1 per thread]
Test Run Time: 5 mins

Results:

Page2.aspx
CPU Averaged 94%

Number of test clients: 1
Number of hits: 83283
Requests per Second: 277.61

Socket Statistics
-------------------------------------------------------------------------- --
----
Socket Connects: 83313
Total Bytes Sent (in KB): 22779.38
Bytes Sent Rate (in KB/s): 75.93
Total Bytes Recv (in KB): 93532.59
Bytes Recv Rate (in KB/s): 311.78

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
===============================================
GET 83283 61.95 61.98 No




Page1.htm
CPU Averaged 21%

Number of test clients: 1
Number of hits: 95276
Requests per Second: 317.58

Socket Statistics
-------------------------------------------------------------------------- --
----
Socket Connects: 95306
Total Bytes Sent (in KB): 20662.04
Bytes Sent Rate (in KB/s): 68.87
Total Bytes Recv (in KB): 109604.62
Bytes Recv Rate (in KB/s): 365.35

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
=================================================
GET 95276 48.60 48.62 No


At first blush the results seem to be in order, but asp.net really sucked up
the CPU for a dummy page. What do you think?

Rick

P.S. Thank you, but caching advice won't apply to our needs.
 
C

Chris Botha

Change page1.htm to page1.asp and see what happens, or re-do page2.aspx
to be page2.html, as it seems from your message that it can be an html page.
One would use asp/aspx only if it must access some resource, like a
database, etc, and asp/aspx is slower than html.
 
R

Rick

Justin,

A "dummy" aspx page is not to meant to delivery static content -- if it was
I agree with you -- it's to isolate any causes for excessive cpu consumption
during the load tests. Once we have a base performance figure for a "dumb"
aspx page, then we can see how any dynamic features we add effect
performance. Another poster had a clever idea along theses lines, I will be
running those tests now and posting the results.

Thanks,

Rick


S. Justin Gengo said:
Rick,

Those results sound correct.

But why would anyone use an .aspx page to deliver static content? Of course
the .aspx page is going to use the cpu intensively for a moment. It is
compiling the page whether there is dynamic content or not because the page
is linked to the application's .dll.

A real test would be a database pull on an .asp page or j2ee page vs. the
same datapull and display in a .aspx page.

If, somewhere in your asp.net application, all you need to do is deliver
static content you should definitely use a .htm page.

--
Sincerely,

S. Justin Gengo, MCP
Web Developer / Programmer

Free code library at:
www.aboutfortunate.com

"Out of chaos comes order."
Nietzche


Rick said:
Hello,

I ran Microsoft's free "Web Application Stress" tool to see how asp.net/c#
performed against html.
Are these results typical?

Network:
WAS ran on a server with a t3 Internet connection to the test server.
Test Server:
Windows 2000 SP 4
1 GIG AMD CPU
1 GIG RAM
IIS 5, no logging

Test:
Page1.htm 20 lines of super simple html text, no tables, css etc.
Page2.aspx same extact text as in page1.htm (no asp controls added), but
created in VS with code behind cs file that I didn't alter.

WAS Settings:
All default except:
Stress Level (threads) 30 [sockets remained 1 per thread]
Test Run Time: 5 mins

Results:

Page2.aspx
CPU Averaged 94%

Number of test clients: 1
Number of hits: 83283
Requests per Second: 277.61

Socket Statistics
--------------------------------------------------------------------------
--
----
Socket Connects: 83313
Total Bytes Sent (in KB): 22779.38
Bytes Sent Rate (in KB/s): 75.93
Total Bytes Recv (in KB): 93532.59
Bytes Recv Rate (in KB/s): 311.78

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
===============================================
GET 83283 61.95 61.98 No




Page1.htm
CPU Averaged 21%

Number of test clients: 1
Number of hits: 95276
Requests per Second: 317.58

Socket Statistics
--------------------------------------------------------------------------
--
----
Socket Connects: 95306
Total Bytes Sent (in KB): 20662.04
Bytes Sent Rate (in KB/s): 68.87
Total Bytes Recv (in KB): 109604.62
Bytes Recv Rate (in KB/s): 365.35

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
=================================================
GET 95276 48.60 48.62 No


At first blush the results seem to be in order, but asp.net really
sucked
up
the CPU for a dummy page. What do you think?

Rick

P.S. Thank you, but caching advice won't apply to our needs.
 
R

Rick

Chris and those interested,

I renamed Page1.htm to Page1.asp on ran it on the on a Windows 2000 Server,
1 Gig AMD ~1000 MHz CPU and 1 Gig RAM

Results:
CPU Averaged 54% (aspx 90-95%, html 21%)

Number of hits: 90880
Requests per Second: 302.94
Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
================================================
GET 90880 52.63 52.66 No


Then I found I overlooked turning off view state so I changed the Page2.aspx
like so:
<%@ Page language="c#" Codebehind="Page2.aspx.cs" AutoEventWireup="false"
Inherits="Page2.Page2" EnableSessionState="False" enableViewState="False"
debug="False"%>

Results:
CPU Averaged 90% (This saved about 5% from the previous aspx page.)

Number of hits: 83283
Requests per Second: 277.61
Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
==================================================
GET 83283 61.95 61.98 No


Then I ran Page2.aspx on a Windows 2003 Server, 1 Gig AMD ~1800 MHz CPU and
500 Megs RAM

Results
CPU Averaged 49%

Number of hits: 89482
Requests per Second: 297.81 (very slight increase considering the
cpu was half of the other server)

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
================================================
GET 89482 51.59 51.66 No


The strong CPU has less load, obviously, but the performance is vitirually
the same once adjust for more horsepower.

This leads me to concluded asp.net is a cpu PIG, classic asp is much more
gentle on the cpu and thus faster. What am I missing, why would asp.net
with all the bells and whistles turned off consume so much CPU? I thought
once a page was compiled, it would render the page with very little
overhead.

More thoughts are encouraged.

Rick




Chris Botha said:
Change page1.htm to page1.asp and see what happens, or re-do page2.aspx
to be page2.html, as it seems from your message that it can be an html page.
One would use asp/aspx only if it must access some resource, like a
database, etc, and asp/aspx is slower than html.

Rick said:
Hello,

I ran Microsoft's free "Web Application Stress" tool to see how asp.net/c#
performed against html.
Are these results typical?

Network:
WAS ran on a server with a t3 Internet connection to the test server.
Test Server:
Windows 2000 SP 4
1 GIG AMD CPU
1 GIG RAM
IIS 5, no logging

Test:
Page1.htm 20 lines of super simple html text, no tables, css etc.
Page2.aspx same extact text as in page1.htm (no asp controls added), but
created in VS with code behind cs file that I didn't alter.

WAS Settings:
All default except:
Stress Level (threads) 30 [sockets remained 1 per thread]
Test Run Time: 5 mins

Results:

Page2.aspx
CPU Averaged 94%

Number of test clients: 1
Number of hits: 83283
Requests per Second: 277.61

Socket Statistics
--------------------------------------------------------------------------
--
----
Socket Connects: 83313
Total Bytes Sent (in KB): 22779.38
Bytes Sent Rate (in KB/s): 75.93
Total Bytes Recv (in KB): 93532.59
Bytes Recv Rate (in KB/s): 311.78

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
===============================================
GET 83283 61.95 61.98 No




Page1.htm
CPU Averaged 21%

Number of test clients: 1
Number of hits: 95276
Requests per Second: 317.58

Socket Statistics
--------------------------------------------------------------------------
--
----
Socket Connects: 95306
Total Bytes Sent (in KB): 20662.04
Bytes Sent Rate (in KB/s): 68.87
Total Bytes Recv (in KB): 109604.62
Bytes Recv Rate (in KB/s): 365.35

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
=================================================
GET 95276 48.60 48.62 No


At first blush the results seem to be in order, but asp.net really
sucked
up
the CPU for a dummy page. What do you think?

Rick

P.S. Thank you, but caching advice won't apply to our needs.
 
C

Chris Botha

That's interesting. Why don't you add a bit of meat to the pages, let each
do a simple database query, let the ASP use ADO and the ASPX use ADO.NET.
I'm pretty sure it should change the picture. When I started using ASPX, I
was amazed by the speed.

Rick said:
Chris and those interested,

I renamed Page1.htm to Page1.asp on ran it on the on a Windows 2000 Server,
1 Gig AMD ~1000 MHz CPU and 1 Gig RAM

Results:
CPU Averaged 54% (aspx 90-95%, html 21%)

Number of hits: 90880
Requests per Second: 302.94
Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
================================================
GET 90880 52.63 52.66 No


Then I found I overlooked turning off view state so I changed the Page2.aspx
like so:
<%@ Page language="c#" Codebehind="Page2.aspx.cs" AutoEventWireup="false"
Inherits="Page2.Page2" EnableSessionState="False" enableViewState="False"
debug="False"%>

Results:
CPU Averaged 90% (This saved about 5% from the previous aspx page.)

Number of hits: 83283
Requests per Second: 277.61
Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
==================================================
GET 83283 61.95 61.98 No


Then I ran Page2.aspx on a Windows 2003 Server, 1 Gig AMD ~1800 MHz CPU and
500 Megs RAM

Results
CPU Averaged 49%

Number of hits: 89482
Requests per Second: 297.81 (very slight increase considering the
cpu was half of the other server)

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
================================================
GET 89482 51.59 51.66 No


The strong CPU has less load, obviously, but the performance is vitirually
the same once adjust for more horsepower.

This leads me to concluded asp.net is a cpu PIG, classic asp is much more
gentle on the cpu and thus faster. What am I missing, why would asp.net
with all the bells and whistles turned off consume so much CPU? I thought
once a page was compiled, it would render the page with very little
overhead.

More thoughts are encouraged.

Rick




Chris Botha said:
Change page1.htm to page1.asp and see what happens, or re-do page2.aspx
to be page2.html, as it seems from your message that it can be an html page.
One would use asp/aspx only if it must access some resource, like a
database, etc, and asp/aspx is slower than html.

Rick said:
Hello,

I ran Microsoft's free "Web Application Stress" tool to see how asp.net/c#
performed against html.
Are these results typical?

Network:
WAS ran on a server with a t3 Internet connection to the test server.
Test Server:
Windows 2000 SP 4
1 GIG AMD CPU
1 GIG RAM
IIS 5, no logging

Test:
Page1.htm 20 lines of super simple html text, no tables, css etc.
Page2.aspx same extact text as in page1.htm (no asp controls added), but
created in VS with code behind cs file that I didn't alter.

WAS Settings:
All default except:
Stress Level (threads) 30 [sockets remained 1 per thread]
Test Run Time: 5 mins

Results:

Page2.aspx
CPU Averaged 94%

Number of test clients: 1
Number of hits: 83283
Requests per Second: 277.61

Socket Statistics

--------------------------------------------------------------------------
--
----
Socket Connects: 83313
Total Bytes Sent (in KB): 22779.38
Bytes Sent Rate (in KB/s): 75.93
Total Bytes Recv (in KB): 93532.59
Bytes Recv Rate (in KB/s): 311.78

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
===============================================
GET 83283 61.95 61.98 No




Page1.htm
CPU Averaged 21%

Number of test clients: 1
Number of hits: 95276
Requests per Second: 317.58

Socket Statistics

--------------------------------------------------------------------------
--
----
Socket Connects: 95306
Total Bytes Sent (in KB): 20662.04
Bytes Sent Rate (in KB/s): 68.87
Total Bytes Recv (in KB): 109604.62
Bytes Recv Rate (in KB/s): 365.35

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
=================================================
GET 95276 48.60 48.62 No


At first blush the results seem to be in order, but asp.net really
sucked
up
the CPU for a dummy page. What do you think?

Rick

P.S. Thank you, but caching advice won't apply to our needs.
 
R

Rick

The funny thing all this started when I tested a page with some heavy
lifting going on and was concerned about the cpu, so I started to look for
the bottleneck. A couple changes later, not a dint, so I stripped
everything.

Turns out, and others have "confirmed" this, the basic aspx page eats up
most the cpu, once that's out of the way then it can do a lot of heavy
lifting very quickly and with little additional cpu. In my case, the heavy
lifting version only consumes an additional +/- 1%. So when PR tells us
it's really fast, it is, depending on where you start from lol. I was under
the crazy assumption that the slow painful first compile was in order for
the following requests to be spit out with very low overhead and faster than
the wind.

This has become today's obsession, so I tested it against some of the
competition, and asp.net is much faster, just not as fast as asp classic. I
hope this is addressed in asp.net 2.0.

Rick






Chris Botha said:
That's interesting. Why don't you add a bit of meat to the pages, let each
do a simple database query, let the ASP use ADO and the ASPX use ADO.NET.
I'm pretty sure it should change the picture. When I started using ASPX, I
was amazed by the speed.

Rick said:
Chris and those interested,

I renamed Page1.htm to Page1.asp on ran it on the on a Windows 2000 Server,
1 Gig AMD ~1000 MHz CPU and 1 Gig RAM

Results:
CPU Averaged 54% (aspx 90-95%, html 21%)

Number of hits: 90880
Requests per Second: 302.94
Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
================================================
GET 90880 52.63 52.66 No


Then I found I overlooked turning off view state so I changed the Page2.aspx
like so:
<%@ Page language="c#" Codebehind="Page2.aspx.cs" AutoEventWireup="false"
Inherits="Page2.Page2" EnableSessionState="False" enableViewState="False"
debug="False"%>

Results:
CPU Averaged 90% (This saved about 5% from the previous aspx page.)

Number of hits: 83283
Requests per Second: 277.61
Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
==================================================
GET 83283 61.95 61.98 No


Then I ran Page2.aspx on a Windows 2003 Server, 1 Gig AMD ~1800 MHz CPU and
500 Megs RAM

Results
CPU Averaged 49%

Number of hits: 89482
Requests per Second: 297.81 (very slight increase considering the
cpu was half of the other server)

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
================================================
GET 89482 51.59 51.66 No


The strong CPU has less load, obviously, but the performance is vitirually
the same once adjust for more horsepower.

This leads me to concluded asp.net is a cpu PIG, classic asp is much more
gentle on the cpu and thus faster. What am I missing, why would asp.net
with all the bells and whistles turned off consume so much CPU? I thought
once a page was compiled, it would render the page with very little
overhead.

More thoughts are encouraged.

Rick




Chris Botha said:
Change page1.htm to page1.asp and see what happens, or re-do page2.aspx
to be page2.html, as it seems from your message that it can be an html page.
One would use asp/aspx only if it must access some resource, like a
database, etc, and asp/aspx is slower than html.

Hello,

I ran Microsoft's free "Web Application Stress" tool to see how asp.net/c#
performed against html.
Are these results typical?

Network:
WAS ran on a server with a t3 Internet connection to the test server.
Test Server:
Windows 2000 SP 4
1 GIG AMD CPU
1 GIG RAM
IIS 5, no logging

Test:
Page1.htm 20 lines of super simple html text, no tables, css etc.
Page2.aspx same extact text as in page1.htm (no asp controls added), but
created in VS with code behind cs file that I didn't alter.

WAS Settings:
All default except:
Stress Level (threads) 30 [sockets remained 1 per thread]
Test Run Time: 5 mins

Results:

Page2.aspx
CPU Averaged 94%

Number of test clients: 1
Number of hits: 83283
Requests per Second: 277.61

Socket Statistics

--------------------------------------------------------------------------
--
----
Socket Connects: 83313
Total Bytes Sent (in KB): 22779.38
Bytes Sent Rate (in KB/s): 75.93
Total Bytes Recv (in KB): 93532.59
Bytes Recv Rate (in KB/s): 311.78

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
===============================================
GET 83283 61.95 61.98 No




Page1.htm
CPU Averaged 21%

Number of test clients: 1
Number of hits: 95276
Requests per Second: 317.58

Socket Statistics

--------------------------------------------------------------------------
--
----
Socket Connects: 95306
Total Bytes Sent (in KB): 20662.04
Bytes Sent Rate (in KB/s): 68.87
Total Bytes Recv (in KB): 109604.62
Bytes Recv Rate (in KB/s): 365.35

Page Summary
Page Hits TTFB Avg TTLB Avg Auth
Query
=================================================
GET 95276 48.60 48.62 No


At first blush the results seem to be in order, but asp.net really sucked
up
the CPU for a dummy page. What do you think?

Rick

P.S. Thank you, but caching advice won't apply to our needs.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,995
Messages
2,570,230
Members
46,817
Latest member
DicWeils

Latest Threads

Top