Project

General

Profile

Bug #1786

poor performance from lighttpd 1.5.0

Added by ghazel almost 11 years ago. Updated almost 11 years ago.

Status:
Invalid
Priority:
Normal
Assignee:
-
Category:
core
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
Missing in 1.5.x:

Description

lighttpd 1.5.0-r1691 is about three times slower for my application than 1.4.13. Measured from server-status and externally, 1.4.13 gets about 3 kreq/s, 1.5.0 gets about 1 kreq/s.

configured with: {{{ ./configure --with-lua --with-linux-aio }}}

using:


# on lighttpd 1.4.13 and 1.5.0
server.event-handler = "linux-sysepoll" 
# on lighttpd 1.5.0
server.network-backend   = "linux-aio-sendfile" 
server.max-stat-threads  = 2
server.max-read-threads = 64

The server has a small mod_magnet lua script, which sets the path of the file to serve based on a small function - which uses lighty.stat() once. That's it. The file I'm testing with is 26890 bytes, and is always present during the test.

This box is a Dual Core AMD Opteron(tm) Processor 180.

lighttpd 1.5.0-r1691:


Cpu(s): 13.0%us, 25.5%sy,  0.0%ni, 49.1%id,  0.2%wa,  1.5%hi, 10.8%si,  0.0%st

# vmstat 5
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 1  0  46708 262820     36 3462212    0    0     1     3    2    1  2  7 91  0
 2  0  46708 234016     36 3490776    0    0 45833  5751 31229 4155 14 37 48  1
 1  0  46708 209012     36 3513608    0    0 43568  4932 30059 4389 13 35 49  3
 1  0  46708 185568     36 3536636    0    0 43605  4941 30077 3998 13 35 48  4
 2  0  46708 158948     36 3562708    0    0 43021  4937 29567 4249 11 36 49  3
 0  1  46708 128344     36 3591540    0    0 44938  5752 30909 4090 14 36 48  2
 2  0  46708 102280     36 3615520    0    0 45283  4931 30862 4283 13 37 48  2

lighttpd-1.4.13


Cpu(s): 19.0%us, 18.0%sy,  0.0%ni, 46.1%id,  0.0%wa,  2.3%hi, 14.5%si,  0.0%st

# vmstat 5
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 2  0  46708  30964     36 3474356    0    0     1     3    1    1  2  7 91  0
 1  0  46708  32256     36 3470380    0    0     0  9864 38563 1150 18 33 48  0
 1  0  46708  32608     36 3467928    0    0     0  9863 39075  986 19 35 46  0
 2  0  46708  31956     36 3466216    0    0     0  9033 37651 1035 18 33 49  0
 2  0  46708  33080     36 3462564    0    0     0  9866 38205 1072 20 31 48  0
 1  0  46708  32976     36 3461056    0    0     0  9037 38229 1105 19 32 49  0

History

#1

Updated by Anonymous almost 11 years ago

Just tested with lighttpd-1.4.20, it is also fast.

#2

Updated by Anonymous almost 11 years ago

Why use such a old 1.5? you get an newer one here http://opensu.se/~darix/lighttpd/
and use gtherad-aio insted of linux-aio.

#3

Updated by stbuehler almost 11 years ago

  • Status changed from New to Fixed
  • Resolution set to invalid
#4

Updated by Anonymous almost 11 years ago

  • Status changed from Fixed to Need Feedback
  • Resolution deleted (invalid)

I downloaded 1.5 from the first hit on google for: lighttpd 1.5

http://www.lighttpd.net/2007/2/3/lighttpd-1-5-0-pre

I used linux-aio-sendfile because of this page that it linked to:

http://www.lighttpd.net/2007/2/3/raw-io-performance

Using 1.5.0.prerelease.r2294 with gthread-aio as you suggest gives 2 kreq/s. Still slower than lighttpd 1.4

#5

Updated by stbuehler almost 11 years ago

  • Status changed from Need Feedback to Fixed
  • Resolution set to invalid

2kreq/s or 3kreq/s ... as long as you cannot tell us why there is something specific wrong i don't care (that is: provide a patch); it is not a bug. The design of 1.5 is more complex, so of course it is slower; and benchmarking one small file is just... not really benchmarking.

#6

Updated by Anonymous almost 11 years ago

That is quite a bit slower. If the design of 1.5 is really this much slower, maybe the new slow parts should be optional.

Or, maybe I should just stay on 1.4 instead.

#7

Updated by stbuehler almost 11 years ago

  • Status changed from Fixed to Invalid

Also available in: Atom