Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Internal] Thin Client Integration: Adds thinclient mode and performance tests. #4926

Draft
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

aavasthy
Copy link
Contributor

@aavasthy aavasthy commented Dec 10, 2024

Pull Request Template

Description

This PR is an ongoing effort to integrate the thin client into the existing codebase.
Performance test results when hitting stage endpoint:
VM: Standard F4s v2 (4 vcpus, 8 GiB memory)
Location: East US 2
Mode: Direct Mode

Method InvocationCount UnrollFactor Mean Error StdDev Q3 P80 P85 P90 P95 P100 Op/s Completed Work Items Lock Contentions Allocated
CreateItemAsync Default 16 4.27 ms (4266 us) 0.79 ms (790 us) 0.04 ms (43 us) 4.29 ms (4291 us) 4.29 ms (4292 us) 4.29 ms (4294 us) 4.30 ms (4295 us) 4.30 ms (4297 us) 4.30 ms (4298 us) 234.4 3.0000 0.0078 43.73 KB
CreateItemStreamAsync Default 16 4.09 ms (4094 us) 2.73 ms (2734 us) 0.15 ms (150 us) 4.17 ms (4170 us) 4.18 ms (4184 us) 4.20 ms (4199 us) 4.21 ms (4213 us) 4.23 ms (4228 us) 4.24 ms (4242 us) 244.2 3.0156 - 32.24 KB
ReadItemAsync Default 16 0.95 ms (948 us) 0.37 ms (365 us) 0.02 ms (20 us) 0.96 ms (958 us) 0.96 ms (960 us) 0.96 ms (962 us) 0.96 ms (964 us) 0.97 ms (966 us) 0.97 ms (968 us) 1,054.5 3.0000 - 43.42 KB
ReadItemStreamAsync Default 16 0.92 ms (915 us) 0.68 ms (684 us) 0.04 ms (38 us) 0.93 ms (929 us) 0.93 ms (934 us) 0.94 ms (940 us) 0.95 ms (946 us) 0.95 ms (952 us) 0.96 ms (958 us) 1,092.5 3.0039 0.0039 33.30 KB
UpsertItemAsync Default 16 4.47 ms (4474 us) 0.58 ms (579 us) 0.03 ms (32 us) 4.49 ms (4493 us) 4.49 ms (4493 us) 4.49 ms (4493 us) 4.49 ms (4493 us) 4.49 ms (4493 us) 4.49 ms (4493 us) 223.5 3.0156 - 43.56 KB
UpsertItemStreamAsync Default 16 4.54 ms (4540 us) 0.50 ms (500 us) 0.03 ms (27 us) 4.55 ms (4550 us) 4.55 ms (4554 us) 4.56 ms (4559 us) 4.56 ms (4563 us) 4.57 ms (4567 us) 4.57 ms (4572 us) 220.2 3.0156 - 32.30 KB
ReplaceItemAsync Default 16 4.50 ms (4502 us) 0.75 ms (754 us) 0.04 ms (41 us) 4.52 ms (4524 us) 4.53 ms (4527 us) 4.53 ms (4530 us) 4.53 ms (4533 us) 4.54 ms (4535 us) 4.54 ms (4538 us) 222.1 3.0156 - 43.80 KB
ReplaceItemStreamAsync Default 16 4.13 ms (4127 us) 1.47 ms (1472 us) 0.08 ms (81 us) 4.17 ms (4169 us) 4.18 ms (4176 us) 4.18 ms (4183 us) 4.19 ms (4189 us) 4.20 ms (4196 us) 4.20 ms (4202 us) 242.3 3.0078 - 32.46 KB
DeleteItemAsync 1 1 4.58 ms (4578 us) 3.68 ms (3679 us) 0.20 ms (202 us) 4.68 ms (4679 us) 4.70 ms (4699 us) 4.72 ms (4719 us) 4.74 ms (4738 us) 4.76 ms (4758 us) 4.78 ms (4777 us) 218.5 3.0000 - 31.41 KB
DeleteItemStreamAsync 1 1 4.08 ms (4080 us) 4.91 ms (4908 us) 0.27 ms (269 us) 4.19 ms (4190 us) 4.23 ms (4229 us) 4.27 ms (4267 us) 4.30 ms (4304 us) 4.34 ms (4342 us) 4.38 ms (4380 us) 245.1 3.0000 - 30.91 KB

VM: Standard F4s v2 (4 vcpus, 8 GiB memory)
Location: East US 2
Mode: Gateway mode with thinclient enabled

Method InvocationCount UnrollFactor Mean Error StdDev Q3 P80 P85 P90 P95 P100 Op/s Completed Work Items Lock Contentions Allocated
CreateItemAsync Default 16 4.734 ms 1.7061 ms 0.0935 ms 4.781 ms 4.790 ms 4.799 ms 4.808 ms 4.818 ms 4.827 ms 211.3 2.0000 - 43.93 KB
CreateItemStreamAsync Default 16 5.054 ms 2.7802 ms 0.1524 ms 5.119 ms 5.139 ms 5.160 ms 5.181 ms 5.201 ms 5.222 ms 197.9 2.0000 - 32.48 KB
ReadItemAsync Default 16 2.096 ms 1.2775 ms 0.0700 ms 2.136 ms 2.138 ms 2.140 ms 2.142 ms 2.144 ms 2.146 ms 477.1 2.0000 - 45.86 KB
ReadItemStreamAsync Default 16 1.976 ms 1.8893 ms 0.1036 ms 2.027 ms 2.038 ms 2.049 ms 2.060 ms 2.072 ms 2.083 ms 505.9 2.0039 - 35.71 KB
UpsertItemAsync Default 16 5.237 ms 1.8037 ms 0.0989 ms 5.293 ms 5.297 ms 5.302 ms 5.306 ms 5.310 ms 5.314 ms 190.9 2.0000 - 43.86 KB
UpsertItemStreamAsync Default 16 5.391 ms 3.2129 ms 0.1761 ms 5.447 ms 5.476 ms 5.505 ms 5.535 ms 5.564 ms 5.594 ms 185.5 2.0000 - 32.47 KB
ReplaceItemAsync Default 16 5.292 ms 0.9327 ms 0.0511 ms 5.321 ms 5.323 ms 5.324 ms 5.326 ms 5.328 ms 5.330 ms 189.0 2.0000 - 44.26 KB
ReplaceItemStreamAsync Default 16 5.019 ms 1.2404 ms 0.0680 ms 5.040 ms 5.051 ms 5.063 ms 5.074 ms 5.086 ms 5.097 ms 199.3 2.0000 - 32.89 KB
DeleteItemAsync 1 1 5.128 ms 8.3417 ms 0.4572 ms 5.375 ms 5.407 ms 5.439 ms 5.471 ms 5.503 ms 5.535 ms 195.0 2.0000 - 31.13 KB
DeleteItemStreamAsync 1 1 4.944 ms 8.1300 ms 0.4456 ms 5.193 ms 5.216 ms 5.238 ms 5.260 ms 5.283 ms 5.305 ms 202.3 2.0000 - 30.66 KB

VM: Standard D16s v3 (16 vcpus, 64 GiB memory)
Location: East US 2
Mode: Gateway mode with thinclient enabled

Below are results for the performance tests when using thinclient mode in stage.

Method InvocationCount UnrollFactor Mean Error StdDev Q3 P80 P85 P90 P95 P100 Op/s Completed Work Items Lock Contentions Allocated
CreateItemAsync Default 16 5.463 ms 3.323 ms 0.1821 ms 5.568 ms 5.572 ms 5.576 ms 5.580 ms 5.585 ms 5.589 ms 183.0 2.0000 - 43.73 KB
CreateItemStreamAsync Default 16 5.456 ms 2.080 ms 0.1140 ms 5.519 ms 5.526 ms 5.532 ms 5.539 ms 5.546 ms 5.553 ms 183.3 2.0000 - 32.34 KB
ReadItemAsync Default 16 2.214 ms 2.401 ms 0.1316 ms 2.281 ms 2.293 ms 2.306 ms 2.318 ms 2.330 ms 2.343 ms 451.7 2.0000 - 45.71 KB
ReadItemStreamAsync Default 16 2.040 ms 1.522 ms 0.0834 ms 2.088 ms 2.089 ms 2.091 ms 2.093 ms 2.095 ms 2.097 ms 490.3 2.0000 - 35.61 KB
UpsertItemAsync Default 16 6.058 ms 1.199 ms 0.0657 ms 6.095 ms 6.097 ms 6.099 ms 6.101 ms 6.103 ms 6.105 ms 165.1 2.0078 - 43.8 KB
UpsertItemStreamAsync Default 16 5.541 ms 3.061 ms 0.1678 ms 5.630 ms 5.643 ms 5.657 ms 5.670 ms 5.683 ms 5.696 ms 180.5 2.0000 - 32.6 KB
ReplaceItemAsync Default 16 6.029 ms 1.203 ms 0.0660 ms 6.049 ms 6.061 ms 6.072 ms 6.083 ms 6.094 ms 6.105 ms 165.9 2.0000 - 44.38 KB
ReplaceItemStreamAsync Default 16 5.862 ms 1.105 ms 0.0606 ms 5.895 ms 5.899 ms 5.903 ms 5.907 ms 5.911 ms 5.915 ms 170.6 2.0000 - 32.71 KB
DeleteItemAsync 1 1 6.196 ms 2.730 ms 0.1496 ms 6.246 ms 6.270 ms 6.294 ms 6.319 ms 6.343 ms 6.368 ms 161.4 2.0000 - 31 KB
DeleteItemStreamAsync 1 1 5.757 ms 6.294 ms 0.3450 ms 5.915 ms 5.957 ms 5.999 ms 6.041 ms 6.082 ms 6.124 ms 173.7 2.0000 - 30.54 KB
image

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)

Closing issues

To automatically close an issue: closes #4927

@aavasthy aavasthy changed the title Users/aavasthy/4571 thin client perftests [Internal] Thinclient Integration: Adds thinclient mode and performance tests. Dec 10, 2024
@aavasthy aavasthy changed the title [Internal] Thinclient Integration: Adds thinclient mode and performance tests. [Internal] Thin Client Integration: Adds thinclient mode and performance tests. Dec 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Thin Client Integration] Add performance tests when thinclient mode is enabled.
2 participants