Commit graph

53 commits

Author SHA1 Message Date
Joakim Frostegård
44a58d4946 Add benchmarks to README; update TODO 2020-04-19 19:27:20 +02:00
Joakim Frostegård
61841fffc3 Update TODO 2020-04-19 12:06:06 +02:00
Joakim Frostegård
ec93760304 Update TODO 2020-04-19 10:39:52 +02:00
Joakim Frostegård
eb3ba6a2ce Update TODO 2020-04-14 22:05:20 +02:00
Joakim Frostegård
57c5d8314f Update TODO 2020-04-14 16:25:47 +02:00
Joakim Frostegård
fbeade0ca2 Update README and TODO 2020-04-13 14:41:40 +02:00
Joakim Frostegård
6c4013ca55 Update TODO 2020-04-12 22:09:34 +02:00
Joakim Frostegård
06ff4ad9d0 aquatic: save valid_until Instant in connections and requests
Hopefully prevents strange subtraction overflow error, but
we'll see.
2020-04-12 22:04:42 +02:00
Joakim Frostegård
f8713c09c1 aquatic: handler: put responses in vector, send after releasing lock 2020-04-12 14:54:38 +02:00
Joakim Frostegård
16155f3de5 Update TODO 2020-04-12 14:46:49 +02:00
Joakim Frostegård
2779b6ec3a aquatic: lock connections and torrents together; optimize handler
Handler: don't stop collecting requests early unless mutex can
be unlocked.
2020-04-12 14:44:34 +02:00
Joakim Frostegård
62a40317f9 Update TODO 2020-04-12 13:41:35 +02:00
Joakim Frostegård
5430e561f5 aquatic: Config: add fields for max handler request, channel timeout 2020-04-12 13:26:44 +02:00
Joakim Frostegård
e61c961126 Use hashbrown hashmap directly for faster hash (ahash) 2020-04-12 13:19:07 +02:00
Joakim Frostegård
eaa42a26b7 Update TODO 2020-04-12 12:35:05 +02:00
Joakim Frostegård
3c5b515be9 Update TODO 2020-04-11 22:22:44 +02:00
Joakim Frostegård
70cc193522 Use crossbeam channel insteaf of SegQueue
Reduces overutilization of CPU greatly
2020-04-11 21:11:25 +02:00
Joakim Frostegård
6503e89375 Update TODO 2020-04-11 19:58:49 +02:00
Joakim Frostegård
3527952242 start work on using seperate threads for sockets and handlers 2020-04-11 19:35:15 +02:00
Joakim Frostegård
8d7cbb7926 aquatic_bench: test multiple threads at once, with disappointing results
DashMap doesn't scale as well as I had hoped. Only the scrape
handler performed somewhat better with more threads, since it
doesn't exlusively lock the torrent map. The announce and connect
handlers, however, gained barely nothing from more threads.
2020-04-11 17:54:23 +02:00
Joakim Frostegård
eded822c31 Update TODO 2020-04-11 15:05:11 +02:00
Joakim Frostegård
054d36b316 Update TODO 2020-04-11 15:03:45 +02:00
Joakim Frostegård
4691080602 Update TODO 2020-04-11 14:23:03 +02:00
Joakim Frostegård
fe85901021 bittorrent_udp: add RequestParseError; remove InvalidRequest; other fixes 2020-04-10 15:16:20 +02:00
Joakim Frostegård
2fadbcc8f8 Update TODO 2020-04-10 03:35:22 +02:00
Joakim Frostegård
46f9a1d13c Update TODO 2020-04-10 03:29:55 +02:00
Joakim Frostegård
9705d1822e Update TODO 2020-04-09 17:58:09 +02:00
Joakim Frostegård
91c764d143 Update TODO 2020-04-09 11:48:00 +02:00
Joakim Frostegård
13790b5d60 Update TODO 2020-04-08 20:20:57 +02:00
Joakim Frostegård
910accad31 announce handler: keep mutable access to torrent map less time 2020-04-08 13:32:18 +02:00
Joakim Frostegård
2d01a34ff7 bench: don't accumulate state over runs 2020-04-08 13:08:41 +02:00
Joakim Frostegård
c75e36c105 Update TODO 2020-04-08 12:12:05 +02:00
Joakim Frostegård
ff67998cc1 Update TODO 2020-04-08 11:50:12 +02:00
Joakim Frostegård
4721fa3109 Update TODO 2020-04-08 10:23:59 +02:00
Joakim Frostegård
1672ff2e37 Update TODO 2020-04-08 01:51:41 +02:00
Joakim Frostegård
a99688a5a2 benchmark byte conversion as well; bittorrent_udp: use buffers 2020-04-07 20:19:28 +02:00
Joakim Frostegård
51590a3d6c aquatic: print stats about number of peers per torrent 2020-04-07 16:57:34 +02:00
Joakim Frostegård
e3d3e9ab57 Update TODO 2020-04-07 15:40:52 +02:00
Joakim Frostegård
19277831c8 aquatic: count received requests / sent responses, print on interval 2020-04-07 13:22:28 +02:00
Joakim Frostegård
ea2c37789d Update TODO 2020-04-06 20:24:08 +02:00
Joakim Frostegård
a674a5f087 Update TODO 2020-04-06 20:15:54 +02:00
Joakim Frostegård
8cf3644e78 Update TODO 2020-04-06 15:45:42 +02:00
Joakim Frostegård
c3c634189d Update TODO 2020-04-06 14:07:50 +02:00
Joakim Frostegård
0ca5040cbe bench_handlers: add indicatif progress bars (nice but a bit unnecessary) 2020-04-06 13:51:03 +02:00
Joakim Frostegård
e42dc05996 Add scripts dir with "run-server.sh" and "bench-handlers.sh" 2020-04-06 13:16:52 +02:00
Joakim Frostegård
165214018c Move benchmarks to seperate crate "aquatic_bench" 2020-04-06 12:49:54 +02:00
Joakim Frostegård
a627594c3a bench_handlers: parially extract setup portions for better profiling 2020-04-06 12:39:32 +02:00
Joakim Frostegård
8c57b3c4fe bench_handlers: run several test rounds, print averages 2020-04-06 03:43:06 +02:00
Joakim Frostegård
d601025286 cleaning tasks: run shrink_to_fit on connection and torrent maps 2020-04-05 19:22:41 +02:00
Joakim Frostegård
3c411bdbf4 announce handler: extract_response_peers: optimize 2020-04-05 16:37:35 +02:00