diff options
author | Nick Mathewson <nickm@torproject.org> | 2013-10-02 12:32:09 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2015-01-14 11:23:34 -0500 |
commit | 1e896214e7eb5ede65663486291252b171e9daea (patch) | |
tree | 3f8d6aeb91e844888f16a2295e2200e22979a181 /changes/better_workqueues | |
parent | cc6529e9bb7d7e01a25b5632d6d6c2424c6fc2b4 (diff) | |
download | tor-1e896214e7eb5ede65663486291252b171e9daea.tar.gz tor-1e896214e7eb5ede65663486291252b171e9daea.zip |
Refactor cpuworker to use workqueue/threadpool code.
Diffstat (limited to 'changes/better_workqueues')
-rw-r--r-- | changes/better_workqueues | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/changes/better_workqueues b/changes/better_workqueues new file mode 100644 index 0000000000..32c984cb71 --- /dev/null +++ b/changes/better_workqueues @@ -0,0 +1,10 @@ + o Major features: + - Refactor the CPU worker implementation for better performance by + avoiding the kernel and lengthening pipelines. The original + implementation used sockets to transfer data from the main thread + to the worker threads, and didn't allow any thread to be assigned + more than a single piece of work at once. The new implementation + avoids communications overhead by making requests in shared + memory, avoiding kernel IO where possible, and keeping more + request in flight at once. Resolves issue #9682. + |