Jay Zhuang
0efd403e59
Add inplace encryption/decryption API
2023-03-23 15:26:22 -07:00
Aaron Molitor
7cadc5420e
update target_link with new path from build image
2023-03-03 16:30:07 -06:00
Russell Sears
ac9bc2738b
Fix flowbench build in CI (requires new build image)
2023-02-27 15:38:58 -06:00
Russell Sears
f58d58ca77
Add support for pre-built googlebenchmark
2023-02-27 15:38:58 -06:00
Dan Adkins
be70a341f2
Revert "Use real clock source for trace events in real fdbserver, but now() in simulation. ( #9270 )"
...
This reverts commit 02f78500b50a4e29fae00965fc7509b6966c8353.
That changed the default behavior of the clock used for trace logs, which
might break some tooling or workflows.
2023-02-02 10:30:31 -08:00
Dan Adkins
02f78500b5
Use real clock source for trace events in real fdbserver, but now() in simulation. ( #9270 )
...
CommitDebug trace events are useful for measuring, in detail, the time spent in
the various parts of a single transaction. Like all log events, they have a time
associated with them. This time comes for now(), which in a real fdb system is
only updated in the run loop. This renders the timestamps inaccurate in certain
CPU bound sections which don't have a wait, e.g. in the resolver.
We want to preserve the current behavior in simulation, where the timestamps are
artificial, deterministic between runs, and only updated in the run loop.
In a real system, we prefer to use a real clock so we can use the difference
between two trace events in the logs as a measurement of elapsed time.
This does not modify the behavior of other parts of the system, which use the
cached now() for various purposes.
2023-02-02 12:33:45 -05:00
sfc-gh-tclinkenbeard
3c97f43138
Change Histogram::Unit::microseconds to milliseconds
2022-11-21 08:03:56 -08:00
Sam Gwydir
99d4bacf5d
Merge remote-tracking branch 'origin/main' into ddsketch
2022-11-15 13:19:42 -08:00
Hui Liu
73d3e0f42f
Merge pull request #8775 from sfc-gh-huliu/bench
...
Add micro-benchmark for blob delta serialization
2022-11-14 11:37:39 -08:00
Sam Gwydir
23706c957b
Use DDSketch for Sample Data.
2022-11-12 13:45:46 -08:00
Steve Atherton
e5e4457c6e
Merge commit '8ad98dc9db2a1f9c3c1b44b22e0532bfa8c89ee5' into pml-delay
...
# Conflicts:
# fdbserver/storageserver.actor.cpp
2022-11-11 11:49:31 -08:00
Hui Liu
0f8e5af5cf
Add micro-benchmark for blob delta serialization
2022-11-11 09:22:11 -08:00
Steve Atherton
3b4a467a92
Remove runners list from PriorityMultiLock and rely on reference counting in the release handler instead of canceling the release handlers. This improves the microbenchmark by 26%.
2022-11-11 00:34:03 -08:00
Steve Atherton
9e9cf3ed8f
Optimize hot paths and high churn structures in PML. Add second benchmark argument for inactive priorities to measure their cost impact.
2022-11-08 01:29:33 -08:00
Steve Atherton
70e078718c
Bug fix in items processed count, changed delay/yield test to be a template.
2022-10-31 12:49:38 -07:00
Steve Atherton
34c61580a0
Added benchmark for delay(0) and yield().
2022-10-30 20:50:58 -07:00
Steve Atherton
e5a5ec36a4
Merge commit '0872cbfb2f00886817f18584d95af217e28ad51d' into storageserver-pml
...
# Conflicts:
# fdbserver/storageserver.actor.cpp
2022-10-19 13:25:31 -07:00
Andrew Noyes
8c22b7b779
Performance improvements and benchmark tweaks
2022-10-12 13:53:11 -07:00
Andrew Noyes
cf48ae206f
Benchmark adding idempotency id mutations for commit batch
2022-10-12 11:29:09 -07:00
Hui Liu
a4c73a5f0a
add benchmark for zstd
2022-10-11 08:23:55 -07:00
Steve Atherton
3228afefd3
Unrevert #7578 - storage server PriorityMultiLock and PML rewrite.
2022-10-06 23:41:28 -07:00
Markus Pilman
5774249e5b
Revert "[DRAFT] Redwood PriorityMultiLock enable different launch limits to be specified based on different priority level."
2022-09-23 12:22:47 -06:00
Steve Atherton
04b4960786
Merge branch 'main' into fzhao/RedwoodIOLaunchLimit
...
# Conflicts:
# fdbserver/VersionedBTree.actor.cpp
# fdbserver/storageserver.actor.cpp
# fdbserver/workloads/ReadWrite.actor.cpp
2022-09-22 00:39:51 -07:00
Steve Atherton
891cf87811
Added comments to PriorityMultiLock benchmark.
2022-09-21 00:55:35 -07:00
Steve Atherton
b607ca68ef
Added BenchPriorityMultiLock benchmark.
2022-09-21 00:09:02 -07:00
Steve Atherton
ab41da174c
Completely rewrote PriorityMultiLock scheduling and added a unit test for it.
2022-09-20 00:45:29 -07:00
A.J. Beamon
4fd64630e8
Convert literal string ref instances to use _sr suffix
2022-09-19 11:35:58 -07:00
Steve Atherton
a2e74af900
Merge pull request #8164 from sfc-gh-satherton/read-latency-logging-improvements
...
Add sampling class tests to FlowBench and remove redundant tests from Redwood
2022-09-12 18:05:22 -07:00
Steve Atherton
3063061c09
Move sample benchmarks to Flowbench.
2022-09-12 01:31:09 -07:00
sfc-gh-tclinkenbeard
7a870d395a
Use faster KeepRunning loops in flowbench
2022-09-11 20:32:28 -07:00
Junhyun Shim
0874e553cd
Place generateRandomData() under {I|Deterministic}Random
2022-07-20 13:21:11 +02:00
Sreenath Bodagala
c366adb4b7
- Benchmark for version vector serialization/deserialization code
2022-07-05 16:37:49 +00:00
Markus Pilman
a2ee14d3fb
fixed flowbench
2022-06-28 10:23:38 -06:00
Markus Pilman
03d913a1de
Flow compiling
2022-06-27 17:05:55 -06:00
Markus Pilman
ffaf15c12a
moved wellknownendpoints and fixed some includes
2022-06-23 17:03:53 -06:00
Lukas Joswiak
88557d9169
Simplify function call when transaction is null
2022-06-22 14:50:17 -07:00
sfc-gh-tclinkenbeard
8ea68154bf
Remove WITH_TLS CMake variable
2022-05-02 22:45:00 -07:00
Jingyu Zhou
cfcf0f152c
Merge branch 'main-4a085fc84' into vv
...
Fix Conflicts:
fdbclient/NativeAPI.actor.cpp
fdbserver/ClusterRecovery.actor.cpp
fdbserver/MasterInterface.h
fdbserver/masterserver.actor.cpp
flow/error_definitions.h
2022-03-30 22:28:06 -07:00
sfc-gh-tclinkenbeard
a71099471b
Update copyright header dates
2022-03-21 13:36:23 -07:00
Jingyu Zhou
fe0c137975
Add version vector microbenchmark
...
This one measures cost of "getDelta" calls:
flowbench --benchmark_filter=bench_vv
2022-03-08T22:01:42+00:00
Running ./cbuild_output/bin/flowbench
Run on (32 X 1789.72 MHz CPU s)
CPU Caches:
L1 Data 32 KiB (x16)
L1 Instruction 32 KiB (x16)
L2 Unified 1024 KiB (x16)
L3 Unified 36608 KiB (x1)
Load Average: 0.33, 0.51, 1.05
--------------------------------------------------------------------------------------
Benchmark Time CPU Iterations UserCounters...
--------------------------------------------------------------------------------------
bench_vv_getdelta/16/1 33.9 ns 33.9 ns 20604111 Tags=16 getDeltaTimes=1 items_per_second=29.514M/s
bench_vv_getdelta/64/1 33.5 ns 33.5 ns 20989482 Tags=64 getDeltaTimes=1 items_per_second=29.8637M/s
bench_vv_getdelta/512/1 36.5 ns 36.5 ns 19703013 Tags=512 getDeltaTimes=1 items_per_second=27.3722M/s
bench_vv_getdelta/1024/1 35.2 ns 35.2 ns 19945561 Tags=1024 getDeltaTimes=1 items_per_second=28.4083M/s
bench_vv_getdelta/16/8 6340 ns 6340 ns 110117 Tags=16 getDeltaTimes=8 items_per_second=1.26184M/s
bench_vv_getdelta/64/8 7257 ns 7257 ns 96336 Tags=64 getDeltaTimes=8 items_per_second=1.10235M/s
bench_vv_getdelta/512/8 13844 ns 13844 ns 51522 Tags=512 getDeltaTimes=8 items_per_second=577.871k/s
bench_vv_getdelta/1024/8 34612 ns 34612 ns 20470 Tags=1024 getDeltaTimes=8 items_per_second=231.137k/s
bench_vv_getdelta/16/64 200514 ns 200513 ns 3498 Tags=16 getDeltaTimes=64 items_per_second=319.182k/s
bench_vv_getdelta/64/64 500066 ns 500057 ns 1000 Tags=64 getDeltaTimes=64 items_per_second=127.985k/s
bench_vv_getdelta/512/64 570166 ns 570131 ns 1222 Tags=512 getDeltaTimes=64 items_per_second=112.255k/s
bench_vv_getdelta/1024/64 747168 ns 747156 ns 939 Tags=1024 getDeltaTimes=64 items_per_second=85.6581k/s
bench_vv_getdelta/16/512 1749315 ns 1749305 ns 401 Tags=16 getDeltaTimes=512 items_per_second=292.688k/s
bench_vv_getdelta/64/512 6656289 ns 6656249 ns 105 Tags=64 getDeltaTimes=512 items_per_second=76.9202k/s
bench_vv_getdelta/512/512 36588584 ns 36588013 ns 19 Tags=512 getDeltaTimes=512 items_per_second=13.9937k/s
bench_vv_getdelta/1024/512 37691398 ns 37691154 ns 19 Tags=1024 getDeltaTimes=512 items_per_second=13.5841k/s
bench_vv_getdelta/16/1024 3616253 ns 3616233 ns 193 Tags=16 getDeltaTimes=1024 items_per_second=283.168k/s
bench_vv_getdelta/64/1024 13715322 ns 13715233 ns 51 Tags=64 getDeltaTimes=1024 items_per_second=74.6615k/s
bench_vv_getdelta/512/1024 112346008 ns 112344280 ns 6 Tags=512 getDeltaTimes=1024 items_per_second=9.11484k/s
bench_vv_getdelta/1024/1024 157170467 ns 157169544 ns 4 Tags=1024 getDeltaTimes=1024 items_per_second=6.51526k/s
2022-03-08 15:36:32 -08:00
sfc-gh-tclinkenbeard
a32547cbbe
Merge remote-tracking branch 'origin/main' into flow-enhancements
2022-02-15 15:56:42 -08:00
Ata E Husain Bohra
591ef57857
Upgrade AES 128 GCM -> AES 256, StreamCipher code refactor ( #6314 )
...
* Upgrade AES 128 GCM -> AES 256, StreamCipher code refactor
Major changes proposed are:
1. Refactor StreamCipher code to enable instantiation of
multiple encryption keys. However, code still retains
a globalEncryption key semantics used in Backup file
encryption usecase.
2. Enhance StreamCipher to provide HMAC signature digest
generation. Further, the class implements HMAC encryption
key derivation function.
3. Upgrade StreamCipher to use AES 256 GCM mode from currently
supported AES 128 GCM mode.
Note: The code changes the encryption key size, however, the
feature is NOT currently in use, hence, should be OK.
3. Add EncryptionOps validation and benchmark toml supported
workload, it does the following:
a. Allow user to configure encrypt-decrypt of a fixed size
buffer or variable size buffer [100, 512K]
b. Allow user to configure number of interactions of the runs,
in each iteration: generate random data, derive an encryption
key using HMAC SHA256 method, encrypt data and
then decrypt data. It collects following metrics:
i) time taken to derive encryption key.
ii) time taken to encrypt the buffer.
iii) time taken to decrypt the buffer.
iv) total bytes encrypted and/or decrypted
c. Along with stats it basic basic validations on the encrypted
and decrypted buffer
d. On completion for test, records the above mentioned metrics
in trace files.
2022-01-31 19:52:44 -06:00
sfc-gh-tclinkenbeard
c834778d3d
Apply clang-format to BenchNet2.actor.cpp
2022-01-23 23:49:58 -08:00
Jon Fu
476aaa73c6
modify benchmark to avoid threadsleep and change runloop to process IO properly
2021-12-16 16:20:22 -05:00
Jon Fu
169838cec3
stub changes for IO queue and attempt at new benchmark
2021-12-16 13:28:38 -05:00
sfc-gh-tclinkenbeard
a2bb14762a
Some cleanup of BenchCallback.actor.cpp
2021-12-12 20:17:15 -08:00
sfc-gh-tclinkenbeard
c1b480bedd
Add bench_net2 benchmark to flowbench
2021-12-12 20:17:15 -08:00
sfc-gh-tclinkenbeard
cde26d2d4f
Add bench_callback to flowbench
2021-12-12 20:17:15 -08:00
Andrew Noyes
5b167729d2
Upgrade google benchmark to v1.6.0
...
This fixes a compile error with clang 13
2021-12-02 16:06:40 -08:00
Aaron Molitor
a930039952
remove (cmake version and git detached head) warnings from build logs
2021-11-29 15:11:20 -08:00