Merge pull request #192 from greatest-ape/work-2024-03-16

Run cargo update; add separate READMEs for load testers
This commit is contained in:
Joakim Frostegård 2024-03-16 10:59:52 +01:00 committed by GitHub
commit 19230d5435
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 365 additions and 209 deletions

406
Cargo.lock generated

File diff suppressed because it is too large Load diff

View file

@ -7,9 +7,10 @@ authors.workspace = true
edition.workspace = true edition.workspace = true
license.workspace = true license.workspace = true
repository.workspace = true repository.workspace = true
readme.workspace = true
rust-version.workspace = true rust-version.workspace = true
readme = "README.md"
[[bin]] [[bin]]
name = "aquatic_http_load_test" name = "aquatic_http_load_test"

View file

@ -0,0 +1,55 @@
# aquatic_http_load_test: HTTP BitTorrent tracker load tester
[![CI](https://github.com/greatest-ape/aquatic/actions/workflows/ci.yml/badge.svg)](https://github.com/greatest-ape/aquatic/actions/workflows/ci.yml)
Load tester for HTTP BitTorrent trackers. Requires Linux 5.8 or later.
## Usage
### Compiling
- Install Rust with [rustup](https://rustup.rs/) (latest stable release is recommended)
- Install build dependencies with your package manager (e.g., `apt-get install cmake build-essential`)
- Clone this git repository and build the application:
```sh
git clone https://github.com/greatest-ape/aquatic.git && cd aquatic
# Recommended: tell Rust to enable support for all SIMD extensions present on
# current CPU except for those relating to AVX-512. (If you run a processor
# that doesn't clock down when using AVX-512, you can enable those instructions
# too.)
. ./scripts/env-native-cpu-without-avx-512
cargo build --release -p aquatic_http_load_test
```
### Configuring and running
Generate the configuration file:
```sh
./target/release/aquatic_http_load_test -p > "load-test-config.toml"
```
Make necessary adjustments to the file.
Make sure locked memory limits are sufficient:
```sh
ulimit -l 65536
```
First, start the tracker application that you want to test. Then
start the load tester:
```sh
./target/release/aquatic_http_load_test -c "load-test-config.toml"
```
## Copyright and license
Copyright (c) Joakim Frostegård
Distributed under the terms of the Apache License, Version 2.0. Please refer to
the `LICENSE` file in the repository root directory for details.

View file

@ -7,9 +7,10 @@ authors.workspace = true
edition.workspace = true edition.workspace = true
license.workspace = true license.workspace = true
repository.workspace = true repository.workspace = true
readme.workspace = true
rust-version.workspace = true rust-version.workspace = true
readme = "README.md"
[features] [features]
cpu-pinning = ["aquatic_common/cpu-pinning"] cpu-pinning = ["aquatic_common/cpu-pinning"]

View file

@ -0,0 +1,49 @@
# aquatic_udp_load_test: UDP BitTorrent tracker load tester
[![CI](https://github.com/greatest-ape/aquatic/actions/workflows/ci.yml/badge.svg)](https://github.com/greatest-ape/aquatic/actions/workflows/ci.yml)
High-performance load tester for UDP BitTorrent trackers, for Unix-like operating systems.
## Usage
### Compiling
- Install Rust with [rustup](https://rustup.rs/) (latest stable release is recommended)
- Install build dependencies with your package manager (e.g., `apt-get install cmake build-essential`)
- Clone this git repository and build the application:
```sh
git clone https://github.com/greatest-ape/aquatic.git && cd aquatic
# Recommended: tell Rust to enable support for all SIMD extensions present on
# current CPU except for those relating to AVX-512. (If you run a processor
# that doesn't clock down when using AVX-512, you can enable those instructions
# too.)
. ./scripts/env-native-cpu-without-avx-512
cargo build --release -p aquatic_udp_load_test
```
### Configuring and running
Generate the configuration file:
```sh
./target/release/aquatic_udp_load_test -p > "load-test-config.toml"
```
Make necessary adjustments to the file.
Once done, first start the tracker application that you want to test. Then,
start the load tester:
```sh
./target/release/aquatic_udp_load_test -c "load-test-config.toml"
```
## Copyright and license
Copyright (c) Joakim Frostegård
Distributed under the terms of the Apache License, Version 2.0. Please refer to
the `LICENSE` file in the repository root directory for details.

View file

@ -7,9 +7,10 @@ authors.workspace = true
edition.workspace = true edition.workspace = true
license.workspace = true license.workspace = true
repository.workspace = true repository.workspace = true
readme.workspace = true
rust-version.workspace = true rust-version.workspace = true
readme = "README.md"
[[bin]] [[bin]]
name = "aquatic_ws_load_test" name = "aquatic_ws_load_test"

View file

@ -0,0 +1,55 @@
# aquatic_ws_load_test: WebTorrent tracker load tester
[![CI](https://github.com/greatest-ape/aquatic/actions/workflows/ci.yml/badge.svg)](https://github.com/greatest-ape/aquatic/actions/workflows/ci.yml)
Load tester for WebTorrent trackers. Requires Linux 5.8 or later.
## Usage
### Compiling
- Install Rust with [rustup](https://rustup.rs/) (latest stable release is recommended)
- Install build dependencies with your package manager (e.g., `apt-get install cmake build-essential`)
- Clone this git repository and build the application:
```sh
git clone https://github.com/greatest-ape/aquatic.git && cd aquatic
# Recommended: tell Rust to enable support for all SIMD extensions present on
# current CPU except for those relating to AVX-512. (If you run a processor
# that doesn't clock down when using AVX-512, you can enable those instructions
# too.)
. ./scripts/env-native-cpu-without-avx-512
cargo build --release -p aquatic_ws_load_test
```
### Configuring and running
Generate the configuration file:
```sh
./target/release/aquatic_ws_load_test -p > "load-test-config.toml"
```
Make necessary adjustments to the file.
Make sure locked memory limits are sufficient:
```sh
ulimit -l 65536
```
First, start the tracker application that you want to test. Then
start the load tester:
```sh
./target/release/aquatic_ws_load_test -c "load-test-config.toml"
```
## Copyright and license
Copyright (c) Joakim Frostegård
Distributed under the terms of the Apache License, Version 2.0. Please refer to
the `LICENSE` file in the repository root directory for details.