Commit Graph
3 Commits
Author SHA1 Message Date
Jacek Sieka 7396b60662 tests: more tls tests (#643) 2026-05-05 14:59:05 +00:00
Jacek Sieka 6080fef1b2 Speed up http client (#633)
The http client currently uses an inefficient byte-by-byte copy in its
`BoundedStreamReader` - the real solution here is to get rid of the
copy completely but until then, we can use bulk-copy the data at least.

Ditto `read`, `readN` and similar helpers - this ~doubles throughput
for bulk reading.

Pre:
```
| Small/small    |    0.070s |   1000 | 14226.009 |    0.031 MB |    0.016 MB |    0.434 MB/s |    0.231 MB/s |
| Medium/small   |    1.834s |   1000 |  545.267 | 1000.000 MB |    0.021 MB |  545.267 MB/s |    0.011 MB/s |
| Small/Medium   |    2.238s |   1000 |  446.735 |    0.031 MB | 1000.000 MB |    0.014 MB/s |  446.735 MB/s |
| Medium/Medium  |    2.583s |   1000 |  387.196 | 1000.000 MB | 1000.000 MB |  387.196 MB/s |  387.196 MB/s |
```

Post:

```
| Small/small    |    0.066s |   1000 | 15038.890 |    0.031 MB |    0.016 MB |    0.459 MB/s |    0.244 MB/s |
| Medium/small   |    0.954s |   1000 | 1048.475 | 1000.000 MB |    0.021 MB | 1048.475 MB/s |    0.022 MB/s |
| Small/Medium   |    1.264s |   1000 |  791.318 |    0.031 MB | 1000.000 MB |    0.024 MB/s |  791.318 MB/s |
| Medium/Medium  |    1.615s |   1000 |  619.083 | 1000.000 MB | 1000.000 MB |  619.083 MB/s |  619.083 MB/s |
```
2026-04-07 19:37:35 +02:00
Eugene Kabanov 402914f4cf Add custom ring buffer into chronos streams and transports. (#485)
* Add custom ring buffer into chronos stream transport.

* Rename BipBuffer.decommit() to BipBuffer.consume()
Make asyncstream's using BipBuffer.

* Address review comments part 1.

* Address review comments part 2.

* Address review comments.

* Remove unused import results.

* Address review comments.
2024-03-26 22:33:19 +02:00