Created
August 17, 2021 14:07
-
-
Save synopse/0e7275684a2e2bbd2206940c3827055c to your computer and use it in GitHub Desktop.
mORMot 2 regression tests on Oracle Cloud Ampere CPU
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ubuntu@lxde:/tmp$ ./mormot2tests | |
mORMot2 Regression Tests | |
-------------------------- | |
1. Core units | |
1.1. Core base: | |
- RecordCopy: 743 assertions passed 35us | |
- TRawUtf8List: 190,172 assertions passed 71.37ms | |
- TDynArray: 1,091,804 assertions passed 195.71ms | |
- TDynArrayHashed: 1,599,070 assertions passed 836.20ms | |
- TSynDictionary: 283,050 assertions passed 623.45ms | |
- TSynQueue: 6,541,501 assertions passed 251.82ms | |
- TSynNameValue: 40,032 assertions passed 10.07ms | |
- TRawUtf8Interning: 2,000,013 assertions passed 155.02ms | |
500000 interning 16 KB in 36.78ms i.e. 12.9M/s, aver. 73ns, 414.7 MB/s | |
500000 direct 15.2 MB in 26.57ms i.e. 17.9M/s, aver. 53ns, 574.2 MB/s | |
- TObjArray: 3,230 assertions passed 1.13ms | |
- Custom RTL: 77,552 assertions passed 593.40ms | |
FillChar in 19.06ms, 20.3 GB/s | |
Move in 9.95ms, 1.5 GB/s | |
small Move in 15.85ms, 1.3 GB/s | |
big Move in 222.41ms, 1.7 GB/s | |
FillCharFast in 8.84ms, 43.9 GB/s | |
MoveFast in 1.25ms, 12.4 GB/s | |
small MoveFast in 4.98ms, 4.3 GB/s | |
big MoveFast in 34.32ms, 11.3 GB/s | |
- Fast string compare: 41 assertions passed 11us | |
- IdemPropName: 228 assertions passed 37us | |
- Url encoding: 167 assertions passed 635us | |
- GUID: 10,019 assertions passed 4.82ms | |
- ParseCommandArguments: 232 assertions passed 24us | |
- IsMatch: 4,250 assertions passed 492us | |
- TExprParserMatch: 140 assertions passed 171us | |
- Soundex: 35 assertions passed 14us | |
- Numerical conversions: 2,543,109 assertions passed 370.76ms | |
100000 FloatToText in 46.65ms i.e. 2M/s, aver. 466ns, 38.8 MB/s | |
100000 str in 18.66ms i.e. 5.1M/s, aver. 186ns, 122.6 MB/s | |
100000 DoubleToShort in 12.29ms i.e. 7.7M/s, aver. 122ns, 162.9 MB/s | |
100000 DoubleToAscii in 11.70ms i.e. 8.1M/s, aver. 117ns, 172.8 MB/s | |
- Integers: 144,965 assertions passed 35.59ms | |
- crc32c: 310,089 assertions passed 72.10ms | |
pas 402.2 MB/s fast 851.2 MB/s armv8 13.8 GB/s | |
- Random32: 221,003 assertions passed 3.22ms | |
240000 Random32 in 3.14ms i.e. 72.7M/s, aver. 13ns, 290.8 MB/s | |
- Bloom filters: 2,010,072 assertions passed 164.49ms | |
- DeltaCompress: 87 assertions passed 5.64ms | |
- Curr 64: 20,056 assertions passed 1.58ms | |
- CamelCase: 11 assertions passed 13us | |
- Bits: 15,567 assertions passed 26.30ms | |
- Ini files: 7,028 assertions passed 32.97ms | |
- UTF8: 1,386,104 assertions passed 991.26ms | |
- Url decoding: 1,101 assertions passed 137us | |
- Mime types: 438 assertions passed 942us | |
- Baudot code: 10,007 assertions passed 34.57ms | |
- Iso 8601 date and time: 200,831 assertions passed 8.05ms | |
- Time zones: 449 assertions passed 200.20ms | |
- Quick select: 4,015 assertions passed 83.21ms | |
- TSynCache: 404 assertions passed 79us | |
- TSynFilter: 804 assertions passed 1.46ms | |
- TSynValidate: 677 assertions passed 438us | |
- TSynLogFile: 43 assertions passed 379us | |
- TSynUniqueIdentifier: 1,300,002 assertions passed 400.65ms | |
200000 ComputeNew in 9.69ms i.e. 19.6M/s, aver. 48ns | |
Total failed: 0 / 20,019,141 - Core base PASSED 5.17s | |
1.2. Core process: | |
- RTTI: 1,338 assertions passed 398us | |
- Url encoding: 200 assertions passed 340us | |
- Encode decode JSON: 432,266 assertions passed 107.63ms | |
- JSON benchmark: 100,355 assertions passed 1.51s | |
StrLen() in 1.43ms, 13.3 GB/s | |
IsValidUtf8(RawUtf8) in 11.75ms, 1.6 GB/s | |
IsValidUtf8(PUtf8Char) in 13.08ms, 1.4 GB/s | |
IsValidJson(RawUtf8) in 22.84ms, 858.2 MB/s | |
IsValidJson(PUtf8Char) in 22.93ms, 854.7 MB/s | |
JsonArrayCount(P) in 22.97ms, 853.1 MB/s | |
JsonArrayCount(P,PMax) in 22.89ms, 856.4 MB/s | |
JsonObjectPropCount() in 11.90ms, 0.9 GB/s | |
jsonUnquotedPropNameCompact in 72.35ms, 240.6 MB/s | |
jsonHumanReadable in 119.06ms, 209.4 MB/s | |
TDocVariant in 245.99ms, 79.7 MB/s | |
TDocVariant no guess in 260.57ms, 75.2 MB/s | |
TDocVariant dvoInternNames in 247.56ms, 79.1 MB/s | |
TOrmTableJson GetJsonValues in 34.88ms, 247.1 MB/s | |
TOrmTableJson expanded in 42.70ms, 459 MB/s | |
TOrmTableJson not expanded in 21.42ms, 402.4 MB/s | |
DynArrayLoadJson in 87.96ms, 222.8 MB/s | |
TOrmPeopleObjArray in 131.10ms, 149.5 MB/s | |
fpjson in 115.09ms, 17 MB/s | |
- Wiki markdown to html: 56 assertions passed 59us | |
- Variants: 108 assertions passed 49us | |
- Mustache renderer: 166 assertions passed 906us | |
- TDocVariant: 91,833 assertions passed 100.75ms | |
- TDecimal128: 17,446 assertions passed 1.77ms | |
- BSON: 245,070 assertions passed 3.97ms | |
100000 TBsonObjectID.ComputeNew in 3.43ms i.e. 27.7M/s, aver. 34ns | |
- TSelectStatement: 229 assertions passed 149us | |
- TSynMonitorUsage: 1,202 assertions passed 77us | |
Total failed: 0 / 890,269 - Core process PASSED 1.72s | |
1.3. Core collections: | |
- IList: 6,920,086 assertions passed 859.40ms | |
400000 IList<Byte> in 5.97ms i.e. 63.9M/s, aver. 14ns | |
400000 IList<Word> in 6.23ms i.e. 61.2M/s, aver. 15ns | |
400000 IList<Integer> in 6.59ms i.e. 57.8M/s, aver. 16ns | |
400000 IList<Cardinal> in 6.60ms i.e. 57.7M/s, aver. 16ns | |
400000 IList<Int64> in 8.11ms i.e. 47M/s, aver. 20ns | |
400000 IList<QWord> in 8.05ms i.e. 47.3M/s, aver. 20ns | |
400000 IList<Single> in 6.10ms i.e. 62.4M/s, aver. 15ns | |
400000 IList<Double> in 6.09ms i.e. 62.5M/s, aver. 15ns | |
400000 IList<TDateTime> in 6.11ms i.e. 62.4M/s, aver. 15ns | |
400000 IList<UTF8String> in 26.88ms i.e. 14.1M/s, aver. 67ns | |
400000 IList<UnicodeString> in 28.02ms i.e. 13.6M/s, aver. 70ns | |
400000 IList<Variant> in 24.48ms i.e. 15.5M/s, aver. 61ns | |
400000 IList<THash128> in 12.97ms i.e. 29.4M/s, aver. 32ns | |
400000 IList<TGuid> in 13.32ms i.e. 28.6M/s, aver. 33ns | |
Total failed: 0 / 6,920,086 - Core collections PASSED 859.43ms | |
1.4. Core crypto: | |
- MD5: 166 assertions passed 259us | |
- SHA1: 8 assertions passed 3.42ms | |
- SHA256: 20 assertions passed 17.71ms | |
- SHA512: 32 assertions passed 38.54ms | |
- SHA3: 8,225 assertions passed 37.62ms | |
- AES: 72,700 assertions passed 178.63ms | |
- AES_GCM: 215 assertions passed 65us | |
- RC4: 1,016 assertions passed 1.58ms | |
- Hashes: 21 assertions passed 313.99ms | |
- Base64: 12,064 assertions passed 22.50ms | |
- CompressShaAes: 1,683 assertions passed 1.91ms | |
- TAesPNRG: 262,624 assertions passed 224.42ms | |
100000 mORMot Random32 in 2.97ms i.e. 32M/s, aver. 29ns, 128 MB/s | |
mORMot FillRandom in 88us, 1 GB/s | |
100000 OpenSSL Random32 in 125.90ms i.e. 775.6K/s, aver. 1.25us, 3 MB/s | |
OpenSSL FillRandom in 117us, 815.1 MB/s | |
- CryptDataForCurrentUser: 5,000 assertions passed 4.48ms | |
2000 AES-CFB in 4.39ms i.e. 444.9K/s, aver. 2.19us, 237.5 MB/s | |
- JWT: 164,918 assertions passed 1.55s | |
1000 HS256 in 1.06ms i.e. 920.4K/s, aver. 1.06us | |
1000 HS384 in 2.73ms i.e. 356.8K/s, aver. 2.73us | |
1000 HS512 in 2.76ms i.e. 352.8K/s, aver. 2.76us | |
1000 S3224 in 1.69ms i.e. 576.1K/s, aver. 1.69us | |
1000 S3256 in 1.71ms i.e. 571K/s, aver. 1.71us | |
1000 S3384 in 1.71ms i.e. 570.7K/s, aver. 1.71us | |
1000 S3512 in 1.73ms i.e. 564.1K/s, aver. 1.73us | |
1000 S3S128 in 1.71ms i.e. 568.4K/s, aver. 1.71us | |
1000 S3S256 in 1.74ms i.e. 561.2K/s, aver. 1.74us | |
100 ES256 in 18.80ms i.e. 5.1K/s, aver. 188us | |
100 RS256 in 9.88ms i.e. 9.8K/s, aver. 98us | |
100 RS384 in 9.91ms i.e. 9.8K/s, aver. 99us | |
100 RS512 in 9.92ms i.e. 9.8K/s, aver. 99us | |
100 PS256 in 9.90ms i.e. 9.8K/s, aver. 99us | |
100 PS384 in 10.12ms i.e. 9.6K/s, aver. 101us | |
100 PS512 in 10.05ms i.e. 9.7K/s, aver. 100us | |
100 ES256 in 17.60ms i.e. 5.5K/s, aver. 176us | |
100 ES384 in 146.88ms i.e. 680/s, aver. 1.46ms | |
100 ES512 in 383.64ms i.e. 260/s, aver. 3.83ms | |
100 ES256K in 58.79ms i.e. 1.6K/s, aver. 587us | |
100 EdDSA in 12.58ms i.e. 7.7K/s, aver. 125us | |
- TBinaryCookieGenerator: 82,944 assertions passed 8.71ms | |
16384 generate in 3.09ms i.e. 5M/s, aver. 188ns | |
16384 validate in 1.58ms i.e. 9.8M/s, aver. 96ns | |
- Catalog: 210 assertions passed 46us | |
- Benchmark: 107,500 assertions passed 505.15ms | |
2500 crc32c in 259us i.e. 9.2M/s or 20 GB/s | |
2500 xxhash32 in 1.47ms i.e. 1.6M/s or 3.5 GB/s | |
2500 crc32 in 259us i.e. 9.2M/s or 20 GB/s | |
2500 adler32 in 469us i.e. 5M/s or 11 GB/s | |
2500 hash32 in 584us i.e. 4M/s or 8.9 GB/s | |
2500 md5 in 12.12ms i.e. 201.3K/s or 438.7 MB/s | |
2500 sha1 in 21.75ms i.e. 112.2K/s or 244.5 MB/s | |
2500 hmacsha1 in 23.81ms i.e. 102.5K/s or 223.4 MB/s | |
2500 sha256 in 3.41ms i.e. 714.7K/s or 1.5 GB/s | |
2500 hmacsha256 in 4.12ms i.e. 591.2K/s or 1.2 GB/s | |
2500 sha384 in 27.71ms i.e. 88K/s or 191.9 MB/s | |
2500 hmacsha384 in 32.69ms i.e. 74.6K/s or 162.7 MB/s | |
2500 sha512 in 27.73ms i.e. 88K/s or 191.8 MB/s | |
2500 hmacsha512 in 32.77ms i.e. 74.4K/s or 162.3 MB/s | |
2500 sha3_256 in 35.82ms i.e. 68.1K/s or 148.5 MB/s | |
2500 sha3_512 in 65.48ms i.e. 37.2K/s or 81.2 MB/s | |
2500 rc4 in 12.98ms i.e. 188K/s or 409.8 MB/s | |
2500 mormot aes-128-cfb in 8.84ms i.e. 276.1K/s or 601.7 MB/s | |
2500 mormot aes-128-ofb in 3.78ms i.e. 645K/s or 1.3 GB/s | |
2500 mormot aes-128-c64 in 4.39ms i.e. 555.6K/s or 1.1 GB/s | |
2500 mormot aes-128-ctr in 4.52ms i.e. 539.7K/s or 1.1 GB/s | |
2500 mormot aes-128-cfc in 9.16ms i.e. 266.3K/s or 580.4 MB/s | |
2500 mormot aes-128-ofc in 5.25ms i.e. 465K/s or 0.9 GB/s | |
2500 mormot aes-128-ctc in 5.74ms i.e. 425.1K/s or 0.9 GB/s | |
2500 mormot aes-128-gcm in 7.52ms i.e. 324.5K/s or 707.2 MB/s | |
2500 mormot aes-256-cfb in 9.52ms i.e. 256.2K/s or 558.4 MB/s | |
2500 mormot aes-256-ofb in 4.71ms i.e. 517.6K/s or 1.1 GB/s | |
2500 mormot aes-256-c64 in 5.30ms i.e. 460.5K/s or 0.9 GB/s | |
2500 mormot aes-256-ctr in 5.33ms i.e. 457.5K/s or 0.9 GB/s | |
2500 mormot aes-256-cfc in 10.04ms i.e. 243K/s or 529.5 MB/s | |
2500 mormot aes-256-ofc in 6.11ms i.e. 399K/s or 869.6 MB/s | |
2500 mormot aes-256-ctc in 6.77ms i.e. 360.4K/s or 785.5 MB/s | |
2500 mormot aes-256-gcm in 8.38ms i.e. 291.1K/s or 634.4 MB/s | |
2500 openssl aes-128-cfb in 4.94ms i.e. 493.4K/s or 1 GB/s | |
2500 openssl aes-128-ofb in 4.12ms i.e. 591.2K/s or 1.2 GB/s | |
2500 openssl aes-128-ctr in 1.94ms i.e. 1.2M/s or 2.6 GB/s | |
2500 openssl aes-128-gcm in 3.18ms i.e. 767K/s or 1.6 GB/s | |
2500 openssl aes-256-cfb in 5.83ms i.e. 418.5K/s or 912.1 MB/s | |
2500 openssl aes-256-ofb in 5.04ms i.e. 484.1K/s or 1 GB/s | |
2500 openssl aes-256-ctr in 2.42ms i.e. 0.9M/s or 2.1 GB/s | |
2500 openssl aes-256-gcm in 3.66ms i.e. 667K/s or 1.4 GB/s | |
2500 shake128 in 29.63ms i.e. 82.3K/s or 179.5 MB/s | |
2500 shake256 in 35.07ms i.e. 69.5K/s or 151.6 MB/s | |
Total failed: 0 / 719,346 - Core crypto PASSED 2.90s | |
1.5. Core ecc: | |
- Reference vectors: 23 assertions passed 7.06ms | |
- ECC: 1,803 assertions passed 172.96ms | |
300 Ecc256r1MakeKey in 8.55ms i.e. 34.2K/s, aver. 28us | |
300 Ecc256r1Sign in 13.73ms i.e. 21.3K/s, aver. 45us | |
300 Ecc256r1Verify in 55.91ms i.e. 5.2K/s, aver. 186us | |
598 Ecc256r1SharedSecret in 90.32ms i.e. 6.4K/s, aver. 151us | |
- Certificates and signatures: 91 assertions passed 6.92ms | |
- Ecc command line tool: 704 assertions passed 72.56ms | |
- ECDHE stream protocol: 63,393 assertions passed 466.81ms | |
100 efAesCrc128 in 3.36ms i.e. 29K/s, aver. 33us, 547.7 MB/s | |
100 efAesCfb128 in 1.60ms i.e. 60.9K/s, aver. 16us, 1.1 GB/s | |
100 efAesOfb128 in 1.65ms i.e. 59.1K/s, aver. 16us, 1 GB/s | |
100 efAesCtr128 in 858us i.e. 113.8K/s, aver. 8.58us, 2 GB/s | |
100 efAesCbc128 in 1ms i.e. 96.7K/s, aver. 10us, 1.7 GB/s | |
100 efAesCrc256 in 3.68ms i.e. 26.5K/s, aver. 36us, 501 MB/s | |
100 efAesCfb256 in 1.85ms i.e. 52.5K/s, aver. 18us, 0.9 GB/s | |
100 efAesOfb256 in 1.97ms i.e. 49.5K/s, aver. 19us, 0.9 GB/s | |
100 efAesCtr256 in 1.01ms i.e. 96.3K/s, aver. 10us, 1.7 GB/s | |
100 efAesCbc256 in 1.26ms i.e. 77.1K/s, aver. 12us, 1.4 GB/s | |
100 efAesGcm128 in 1.02ms i.e. 95.6K/s, aver. 10us, 1.7 GB/s | |
100 efAesGcm256 in 1.20ms i.e. 81.3K/s, aver. 12us, 1.5 GB/s | |
100 efAesCtc128 in 2ms i.e. 48.6K/s, aver. 20us, 919.1 MB/s | |
100 efAesCtc256 in 2.42ms i.e. 40.3K/s, aver. 24us, 761.9 MB/s | |
- OpenSSL: 532 assertions passed 895.37ms | |
3 RSA 2048 Generation in 268ms i.e. 11/s, aver. 89.33ms | |
30 RSA 2048 Sign in 108.70ms i.e. 275/s, aver. 3.62ms | |
30 RSA 2048 Verify in 2.91ms i.e. 10K/s, aver. 97us | |
3 RSA-PSS 2048 Generation in 343.18ms i.e. 8/s, aver. 114.39ms | |
30 RSA-PSS 2048 Sign in 108.70ms i.e. 275/s, aver. 3.62ms | |
30 RSA-PSS 2048 Verify in 2.92ms i.e. 10K/s, aver. 97us | |
100 prime256v1 Generation in 8.19ms i.e. 11.9K/s, aver. 81us | |
100 prime256v1 Sign in 6.90ms i.e. 14.1K/s, aver. 69us | |
100 prime256v1 Verify in 17.40ms i.e. 5.6K/s, aver. 174us | |
100 ed25519 Generation in 5.53ms i.e. 17.6K/s, aver. 55us | |
100 ed25519 Sign in 10.04ms i.e. 9.7K/s, aver. 100us | |
100 ed25519 Verify in 12.29ms i.e. 7.9K/s, aver. 122us | |
Total failed: 0 / 66,546 - Core ecc PASSED 1.62s | |
1.6. Core compression: | |
- In memory compression: 21 assertions passed 393.43ms | |
- GZIP format: 30 assertions passed 113.01ms | |
- ZIP format: 856 assertions passed 1.42s | |
- SynLZ: 14,175 assertions passed 71.93ms | |
- TAlgoCompress: 914 assertions passed 599.79ms | |
TAlgoSynLZ 3.8 MB->2 MB: comp 287:151MB/s decomp 215:409MB/s | |
TAlgoLizard 3.8 MB->1.9 MB: comp 18:9MB/s decomp 857:1667MB/s | |
TAlgoLizardFast 3.8 MB->2.3 MB: comp 193:116MB/s decomp 1282:2135MB/s | |
TAlgoLizardHuffman 3.8 MB->1.8 MB: comp 84:40MB/s decomp 394:827MB/s | |
TAlgoDeflate 3.8 MB->1.5 MB: comp 30:12MB/s decomp 78:196MB/s | |
TAlgoDeflateFast 3.8 MB->1.6 MB: comp 48:20MB/s decomp 73:174MB/s | |
Total failed: 0 / 15,996 - Core compression PASSED 2.60s | |
1.7. Network protocols: | |
- Rtsp over http: 1,900 assertions passed 1.21s | |
Total failed: 0 / 1,900 - Network protocols PASSED 1.21s | |
2. ORM | |
2.1. Orm core: | |
- TOrm: 93 assertions passed 321us | |
- TOrmSigned: 200 assertions passed 615us | |
- TOrmModel: 16 assertions passed 27us | |
- TRestServerFullMemory: 1,130,745 assertions passed 856.30ms | |
Total failed: 0 / 1,131,054 - Orm core PASSED 857.31ms | |
2.2. Sqlite file: | |
- Database direct access: 22,284 assertions passed 63.25ms | |
- Virtual table direct access: 12 assertions passed 498us | |
- TOrmTableJson: 144,083 assertions passed 60.71ms | |
- TRestClientDB: 608,198 assertions passed 787.42ms | |
- Regexp function: 6,015 assertions passed 11.23ms | |
- TRecordVersion: 20,060 assertions passed 51.12ms | |
Total failed: 0 / 800,652 - Sqlite file PASSED 974.32ms | |
2.3. Sqlite file WAL: | |
- Database direct access: 22,284 assertions passed 64.29ms | |
- Virtual table direct access: 12 assertions passed 357us | |
- TOrmTableJson: 144,083 assertions passed 60.22ms | |
- TRestClientDB: 608,198 assertions passed 794.85ms | |
- Regexp function: 6,015 assertions passed 11.19ms | |
- TRecordVersion: 20,060 assertions passed 51.02ms | |
Total failed: 0 / 800,652 - Sqlite file WAL PASSED 982.03ms | |
2.4. Sqlite file memory map: | |
- Database direct access: 22,264 assertions passed 55.40ms | |
- Virtual table direct access: 12 assertions passed 347us | |
- TOrmTableJson: 144,083 assertions passed 60.25ms | |
- TRestClientDB: 608,196 assertions passed 783.02ms | |
- Regexp function: 6,015 assertions passed 11.07ms | |
- TRecordVersion: 20,060 assertions passed 51.28ms | |
Total failed: 0 / 800,630 - Sqlite file memory map PASSED 961.45ms | |
2.5. Sqlite memory: | |
- Database direct access: 22,264 assertions passed 54.20ms | |
- Virtual table direct access: 12 assertions passed 303us | |
- TOrmTableJson: 144,083 assertions passed 59.53ms | |
- TRestClientDB: 676,505 assertions passed 1.26s | |
- Regexp function: 6,015 assertions passed 11.15ms | |
- TRecordVersion: 20,060 assertions passed 50.87ms | |
- TOrmTableWritable: 24,056 assertions passed 3.28ms | |
- RTree: 280,024 assertions passed 1.01s | |
10000 With RTree in 514.19ms i.e. 18.9K/s, aver. 51us | |
10000 With RTreeInteger in 496.87ms i.e. 19.6K/s, aver. 49us | |
- Shard write: 10,602 assertions passed 116.65ms | |
- Shard read: 140,001 assertions passed 187.05ms | |
- Shard read after purge: 114,003 assertions passed 149.98ms | |
- MaxShardCount: 144,002 assertions passed 163.18ms | |
Total failed: 0 / 1,581,627 - Sqlite memory PASSED 3.07s | |
2.6. External database: | |
- SynDBRemote: 28,471 assertions passed 94.60ms | |
- DB properties persistence: 7 assertions passed 305us | |
- External records: 2 assertions passed 252us | |
- Auto adapt SQL: 1,041 assertions passed 1.71ms | |
- Crypted database: 253,277 assertions passed 107.96ms | |
- External via REST: 170,355 assertions passed 607.94ms | |
- External via virtual table: 170,355 assertions passed 938.03ms | |
- External via REST with change tracking: 180,455 assertions passed 1.23s | |
Total failed: 0 / 803,963 - External database PASSED 2.99s | |
2.7. Client server access: | |
- TRestHttpServer: 2 assertions passed 1.89ms | |
using Ubuntu 5.8.0 epoll | |
- TRestHttpClient: 4 assertions passed 9.27ms | |
using TRestHttpClientSocket | |
- HTTP client keep alive: 4,088 assertions passed 60.71ms | |
4.7 KB, first 1.34ms, done 55.53ms i.e. 18005/s, aver. 55us, 82.8 MB/s | |
- HTTP client multi connect: 4,088 assertions passed 207.83ms | |
4.7 KB, first 566us, done 199.78ms i.e. 5005/s, aver. 199us, 23 MB/s | |
- HTTP client encrypted: 4,088 assertions passed 78.45ms | |
4.7 KB, first 498us, done 72.88ms i.e. 13719/s, aver. 72us, 63.1 MB/s | |
- Direct in process access: 4,057 assertions passed 18.42ms | |
4.7 KB, first 40us, done 16.40ms i.e. 60942/s, aver. 16us, 280.2 MB/s | |
- HTTP several DB servers: 12,607 assertions passed 199.03ms | |
4.7 KB, first 213us, done 53.70ms i.e. 18618/s, aver. 53us, 85.6 MB/s | |
4.7 KB, first 239us, done 54.03ms i.e. 18508/s, aver. 54us, 85.1 MB/s | |
4.7 KB, first 266us, done 53.64ms i.e. 18640/s, aver. 53us, 85.7 MB/s | |
Total failed: 0 / 28,934 - Client server access PASSED 582.27ms | |
2.8. Multi thread process: | |
- Create thread pool: 1 assertion passed 1.30ms | |
- TRestServerDB: 7,302 assertions passed 98.84ms | |
1=40983/s 2=44612/s 5=35184/s 10=32152/s 30=37764/s 50=37957/s | |
- TRestClientDB: 7,302 assertions passed 184.92ms | |
1=57903/s 2=15295/s 5=17194/s 10=17453/s 30=21810/s 50=17023/s | |
- TCP sockets: 7,302 assertions passed 390.90ms | |
1=13903/s 2=6478/s 5=9085/s 10=13306/s 30=10637/s 50=7895/s | |
- Unix domain sockets: 7,302 assertions passed 331.97ms | |
1=19508/s 2=6360/s 5=12102/s 10=13961/s 30=12842/s 50=10478/s | |
- Websockets: 3,612 assertions passed 200ms | |
1=10897/s 2=8336/s 5=9508/s | |
- Locked: 7,298 assertions passed 222.65ms | |
1=57142/s 2=12507/s 5=12359/s 10=13109/s 30=18496/s 50=17593/s | |
- Unlocked: 7,302 assertions passed 219.45ms | |
1=58416/s 2=13118/s 5=10442/s 10=13540/s 30=20557/s 50=20600/s | |
- Main thread: 7,302 assertions passed 92.71ms | |
1=36870/s 2=46816/s 5=44802/s 10=43265/s 30=39331/s 50=33917/s | |
- Background thread: 7,302 assertions passed 164.48ms | |
1=28567/s 2=29914/s 5=28570/s 10=24390/s 30=19270/s 50=13847/s | |
Total failed: 0 / 62,025 - Multi thread process PASSED 1.96s | |
3. SOA | |
3.1. Service oriented architecture: | |
- Weak interfaces: 56 assertions passed 101us | |
- Service initialization: 268 assertions passed 2.15ms | |
- Direct call: 1,340,517 assertions passed 20.57ms | |
- Server side: 1,340,537 assertions passed 21.36ms | |
- Client side REST: 1,787,383 assertions passed 592.72ms | |
- Client side REST as json object: 1,787,377 assertions passed 620.73ms | |
- Client side REST sessions stats: 1,787,377 assertions passed 661.71ms | |
- Client side REST locked: 1,787,381 assertions passed 596.12ms | |
- Client side REST main thread: 1,787,381 assertions passed 2.25s | |
- Client side REST background thread: 1,787,381 assertions passed 2.34s | |
- Client side REST sign with crc 32c: 1,787,377 assertions passed 588.92ms | |
- Client side REST sign with xxhash: 1,787,377 assertions passed 591.10ms | |
- Client side REST sign with md 5: 1,787,377 assertions passed 616.98ms | |
- Client side REST sign with sha 256: 1,787,377 assertions passed 611.77ms | |
- Client side REST sign with sha 512: 1,787,377 assertions passed 693.66ms | |
- Client side REST weak authentication: 1,787,377 assertions passed 566.29ms | |
- Client side REST basic authentication: 1,787,377 assertions passed 748.19ms | |
- Client side REST custom record layout: 1,787,377 assertions passed 624.83ms | |
- Client side REST service log to DB: 1,787,377 assertions passed 800.67ms | |
- Client side json RPC: 1,787,377 assertions passed 639.31ms | |
- Test over HTTP: 15,938 assertions passed 136.84ms | |
- Security: 139 assertions passed 1.17ms | |
- Mocks and stubs: 30,030 assertions passed 38.25ms | |
Total failed: 0 / 31,325,535 - Service oriented architecture PASSED 13.77s | |
3.2. Bidirectional remote connection: | |
- Websockets protocols: 30,000 assertions passed 8.03ms | |
- Run http server: 2 assertions passed 2.67ms | |
- Soa callback on server side: 4,580 assertions passed 1.77ms | |
- Soa callback via json websockets: 6,898 assertions passed 237.18ms | |
- Soa callback via binary websockets: 6,898 assertions passed 237.85ms | |
- Relay start: 4 assertions passed 5.95ms | |
- Relay soa callback via json websockets: 6,899 assertions passed 663.72ms | |
- Relay connection recreate: 1 assertion passed 2.91ms | |
- Relay soa callback via binary websockets: 6,899 assertions passed 733.02ms | |
- Relay shutdown: 2 assertions passed 125.57ms | |
- TRecordVersion: 20,068 assertions passed 79.86ms | |
Total failed: 0 / 82,251 - Bidirectional remote connection PASSED 2.10s | |
Ubuntu 20.04.2 LTS - Linux 5.8.0-1037-oracle (cp utf8) | |
2 x ARM Neoverse-N1 (aarch64) | |
on QEMU KVM Virtual Machine virt-4.2 | |
Using mORMot 2.0.1 | |
TSqlite3LibraryStatic 3.36.0 with internal MM | |
Generated with: Free Pascal 3.2 64 bit Linux compiler | |
Time elapsed for all tests: 44.38s | |
Performed 2021-08-17 13:44:09 by ubuntu on lxde | |
Total assertions failed for all test suits: 0 / 66,050,607 | |
! All tests passed successfully. | |
ubuntu@lxde:/tmp$ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment