Tweak sockets benchmark

db4
Slava Pestov 2008-09-07 04:14:47 -05:00
parent 580c9b8868
commit 0ddc5d04e6
2 changed files with 17 additions and 10 deletions

View File

@ -67,7 +67,7 @@ M: object ((client)) ( addrspec -- fd )
M: object (server) ( addrspec -- handle )
[
SOCK_STREAM server-socket-fd
dup handle-fd 10 listen io-error
dup handle-fd 128 listen io-error
] with-destructors ;
: do-accept ( server addrspec -- fd sockaddr )

View File

@ -6,7 +6,7 @@ IN: benchmark.sockets
SYMBOL: counter
: number-of-requests 1 ;
: number-of-requests 1000 ;
: server-addr ( -- addr ) "127.0.0.1" 7777 <inet4> ;
@ -31,12 +31,14 @@ SYMBOL: counter
] ignore-errors ;
: simple-client ( -- )
server-addr ascii [
CHAR: b write1 flush
number-of-requests
[ CHAR: a dup write1 flush read1 assert= ] times
counter get count-down
] with-client ;
[
server-addr ascii [
CHAR: b write1 flush
number-of-requests
[ CHAR: a dup write1 flush read1 assert= ] times
] with-client
] try
counter get count-down ;
: stop-server ( -- )
server-addr ascii [
@ -52,8 +54,13 @@ SYMBOL: counter
counter get await
stop-server
yield yield
] time ;
] benchmark . flush ;
: socket-benchmarks ;
: socket-benchmarks ( -- )
1 clients
10 clients
20 clients
40 clients
100 clients ;
MAIN: socket-benchmarks