No project description provided
Project description
Pamuk Gaming Benchmark
Pamuk is a benchmark for online games. You can check out the performance results in the results folder, or run in yourself
Research
Pamuk is the successor of Yardstick. Together, these tools have been used in the following scientific publications:
- Pamuk
- Meterstick
- Yardstick
TODO
- Wait for server to be ready
- Make sure RCON can connect to PaperMC
Code Documentation
An Example To Get Started
import yardstick as ys
from ys import provisioning
from ys import monitoring
from ys.games.minecraft import server, workloads
prov = provisioning.Das()
monitor = monitoring.Prometheus()
mc = server.Vanilla()
workload = workloads.TeleportRandom()
nodes = prov.reserve(5)
monitor.deploy(nodes)
mc.deploy(nodes[0])
workload.deploy(nodes[1:])
mc.wait_for_ready()
workload.start()
workload.cleanup()
mc.cleanup()
monitor.cleanup()
prov.release(nodes)
Providers
Nodes are provisioned through providers such as the DAS5/6. They implement the following interface:
class Provider:
def provision(nodes=0) -> Reservation
def release(r: Reservation) -> None
class Run:
def assign_roles(nodes, roles) -> None
Experiment
class Experiment:
def setup(nodes) -> None
def teardown(nodes) -> None
Games
Pamuk benchmarks the performance of games. How each game is implemented in Pamuk depends on the game in question, but Pamuk offers helper classes for Runnables such as servers and clients, which are common concepts in multiplayer games.
Runnable
class Runnable:
def before(nodes) -> None
def before_each(nodes) -> None
def start(nodes) -> None
def stop(nodes) -> None
def after_each(nodes) -> None
def after(nodes) -> None
Workload
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yardstick_benchmark-0.1.0.tar.gz.
File metadata
- Download URL: yardstick_benchmark-0.1.0.tar.gz
- Upload date:
- Size: 383.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.9.19 Linux/4.18.0-348.2.1.el8_5.x86_64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6182aec86b238db7cff7d515049309e1f238e84e9d6bde168ba1e56debb51d59
|
|
| MD5 |
99dd0e2fe904ccf758b8915692f7cf4d
|
|
| BLAKE2b-256 |
7ac4046fdd46cbad7cde5afc03cc1123aa0ee4d33d6f2c5247038a0afbf4d25d
|
File details
Details for the file yardstick_benchmark-0.1.0-py3-none-any.whl.
File metadata
- Download URL: yardstick_benchmark-0.1.0-py3-none-any.whl
- Upload date:
- Size: 404.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.9.19 Linux/4.18.0-348.2.1.el8_5.x86_64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2669a97c3d367776e3069c6b8e3ef141d2506615422e87409fa1e00ee6ee19b0
|
|
| MD5 |
6f014d0806f25957febb2b7ad0f3b3a3
|
|
| BLAKE2b-256 |
c169ad64cfad662a190f490506a3ea8beaafa5c943b7932f3acd6ac6c1098411
|