Create topcis.json
{
"version": 1,
"topics": [
{ "topic": "my-sample-topic"
#!/bin/bash | |
# from https://github.com/cernceph/ceph-scripts/blob/master/tools/scrubbing/autorepair.sh | |
for PG in $(ceph pg ls inconsistent -f json | jq -r .pg_stats[].pgid) | |
do | |
echo Checking inconsistent PG $PG | |
if ceph pg ls repair | grep -wq ${PG} | |
then | |
echo PG $PG is already repairing, skipping | |
continue |
✔︎ ~ python3 game.py 'a' 'b' 'c' | |
[ ] Received parameters: repr=['a', 'b', 'c'] | |
[+] Great! Well done | |
Level 2: Run me with parameters: repr=['$$', '$RANDOM'] | |
✔︎ ~ python3 game.py \$\$ \$RANDOM | |
[ ] Received parameters: repr=['$$', '$RANDOM'] | |
[+] Great! Well done | |
Level 3: Run me with parameters: repr=['!b'] | |
✔︎ ~ python3 game.py \!b | |
[ ] Received parameters: repr=['!b'] |
--------------------------------------------------------------------------------------------- benchmark: 4 tests -------------------------------------------------------------------------------------------- | |
Name (time in us) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations | |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
test_concat_rust 145.2740 (1.0) 541.5140 (1.0) 208.1202 (1.0) 70.6213 (1.05) 196.9000 (1.0) 131.0497 (3.36) 28;1 4.8049 (1.0) 113 1 | |
test_concat_comprehensions 308.8310 (2.13) 849.9930 (1.57) 341.7398 (1.64) 67.2811 (1.0) 310.2720 (1.58) 39.0078 (1.0) 271;274 2.9262 (0.61) 3077 |
------------------------------------------------------------------------------------------ benchmark: 4 tests ----------------------------------------------------------------------------------------- | |
Name (time in us) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations | |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
test_concat_rust 30.1850 (1.0) 34.3350 (1.0) 30.3329 (1.0) 0.4555 (1.0) 30.2800 (1.0) 0.0478 (1.0) 2;3 32.9675 (1.0) 81 1 | |
test_concat_comprehensions 32.5590 (1.01) 159.3540 (4.64) 33.2932 (1.10) 8.4885 (18.64) 30.8100 (1.02) 0.1530 (3.20) 1430;4583 30.0362 (0.91) 22609 1 | |
test_concat_basic |
import libmyrustlib | |
iterations = 100 | |
def test_concat_basic(benchmark): | |
benchmark(concat_basic, iterations) | |
def test_concat_join(benchmark): | |
benchmark(concat_join, iterations) |
## cargo build --release | |
Compiling memchr v2.2.0 | |
Compiling ucd-util v0.1.3 | |
Compiling regex v1.1.6 | |
Compiling lazy_static v1.3.0 | |
Compiling utf8-ranges v1.0.2 | |
Compiling libc v0.2.53 | |
Compiling num-traits v0.2.6 | |
Compiling cpython v0.2.1 | |
Compiling thread_local v0.3.6 |
#[macro_use] extern crate cpython; | |
use cpython::{PyResult, Python}; | |
py_module_initializer!(libmyrustlib, initlibmyrustlib, PyInit_libmyrustlib, |py, m| { | |
m.add(py, "__doc__", "This module is implemented in Rust.")?; | |
m.add(py, "rust_concat", py_fn!(py, rust_concat(val: i64)))?; | |
Ok(()) | |
}); |
------------------------------------------------------------------------------------------- benchmark: 3 tests ------------------------------------------------------------------------------------------ | |
Name (time in us) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations | |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
test_concat_comprehensions 30.6030 (1.0) 245.6720 (1.0) 34.4128 (1.0) 9.0401 (1.0) 30.9300 (1.0) 3.9240 (1.0) 2152;2712 29.0590 (1.0) 26594 1 | |
test_concat_basic 36.1660 (1.18) 1,597.7350 (6.50) 47.6731 (1.39) 32.1664 (3.56) 40.8035 (1.32) 10.8160 (2.76) 1006;3951 20.9762 (0.72) 21426 1 | |
test_concat_jo |
iterations = 100 | |
def test_concat_basic(benchmark): | |
benchmark(concat_basic, iterations) | |
def test_concat_join(benchmark): | |
benchmark(concat_join, iterations) | |
def test_concat_comprehensions(benchmark): | |
benchmark(concat_comprehensions, iterations) |