Skip to content
This repository has been archived by the owner on Dec 18, 2018. It is now read-only.

[For Testing] Go faster stripes MkII - Collated changes #309

Closed
wants to merge 8 commits into from

Conversation

benaadams
Copy link
Contributor

Updated #305

Have now split into 10 PRs:
#310 MemoryPool2 Stack->Queue, Allocate returns newest
#311 Task.Run -> ThreadPool.QueueUserWorkItem
#312 Reduce GetString allocs and conversions
#315 Lockless socket output, lower allocs (4 inter dependent) commits
#316 Remove KestrelThread locks
#317 Connection - remove closure allocation
#318 Listener - remove closure allocation
#319 ListenerPrimary - remove closure allocation
#320 ListenerSecondary - reduce closure allocation
#321 Reduce delegate allocation

Can't currently performance test as the feeds aren't matching source

Timings
Lower alloc
MemoryPool removal, MemoryPool2 rename
Memory pool SocketOutput
Output buffer packing
Release all the locks
Ascii headers; MemoryTextWriter removal
Pool write requests
@benaadams benaadams changed the title Go faster stripes MkII [For Testing] Go faster stripes MkII - Collated changes Nov 1, 2015
@benaadams
Copy link
Contributor Author

Baseline coreclr x64, third run v1.0.0-rc2-15944 77% CPU

~/wrk$ wrk -c 256 -d 30 -t 32 ... -s ./scripts/pipeline.lua -- 16
Running 30s test @ ...
32 threads and 256 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 4.54ms 8.18ms 135.70ms 96.37%
Req/Sec 21.44k 3.10k 55.99k 90.54%
20515710 requests in 30.10s, 2.52GB read
Requests/sec: 681589.56
Transfer/sec: 85.80MB

@benaadams
Copy link
Contributor Author

Closing for now until have some numbers; still needs work

@benaadams benaadams closed this Nov 3, 2015
@benaadams
Copy link
Contributor Author

Broke 1M but still higher latency means its worse at 256

~/wrk$ wrk -c 1024 -d 30 -t 32 ... -s ./scripts/pipeline.lua -- 16
Running 30s test @ ...
32 threads and 1024 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 17.60ms 14.74ms 264.28ms 67.36%
Req/Sec 32.41k 4.61k 54.43k 70.76%
30130208 requests in 30.08s, 3.70GB read
Socket errors: connect 35, read 0, write 0, timeout 0
Requests/sec: 1001566.79
Transfer/sec: 126.08MB

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants