Created
October 10, 2018 13:24
-
-
Save synopse/dccddcff42ada480f1da13abf1376bc7 to your computer and use it in GitHub Desktop.
mORMot Windows XP
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
Synopse mORMot Framework Automated tests | |
------------------------------------------ | |
1. Synopse libraries | |
1.1. Low level common: | |
- System copy record: 82 assertions passed 3us | |
- TRawUTF8List: 130,009 assertions passed 375.15ms | |
- TDynArray: 1,089,783 assertions passed 575.18ms | |
- TDynArrayHashed: 1,200,629 assertions passed 355.41ms | |
- TObjectListHashed: 999,866 assertions passed 1.05s | |
- TObjectListSorted: 79,912 assertions passed 372.01ms | |
- TSynNameValue: 40,032 assertions passed 27.67ms | |
- TRawUTF8Interning: 2,000,013 assertions passed 702.37ms | |
500000 interning 8 KB in 189.67ms i.e. 2636046/s, aver. 0us, 40.2 MB/s | |
500000 direct 7.6 MB in 53.84ms i.e. 9286430/s, aver. 0us, 141.7 MB/s | |
- TObjectDynArrayWrapper: 167,501 assertions passed 76.13ms | |
- TObjArray: 3,230 assertions passed 8.72ms | |
- Fast string compare: 71 assertions passed 102us | |
- IdemPropName: 199 assertions passed 681us | |
- Url encoding: 150 assertions passed 6.36ms | |
- GUID: 9,007 assertions passed 15.81ms | |
- IsMatch: 1,109 assertions passed 519us | |
- Soundex: 35 assertions passed 190us | |
- Numerical conversions: 2,344,207 assertions passed 1.14s | |
- Integers: 33,828 assertions passed 163.43ms | |
- crc32c: 290,057 assertions passed 290.53ms | |
pas 141.6 MB/s fast 0.9 GB/s sse42 1 GB/s | |
- Random32: 201,002 assertions passed 14.83ms | |
- Bloom filters: 2,010,072 assertions passed 757.07ms | |
- DeltaCompress: 87 assertions passed 16.48ms | |
- Curr 64: 20,056 assertions passed 5.31ms | |
- CamelCase: 11 assertions passed 92us | |
- Bits: 4,774 assertions passed 210us | |
- Ini files: 7,009 assertions passed 85.85ms | |
- UTF8: 134,209 assertions passed 2.69s | |
- Baudot code: 10,007 assertions passed 78.27ms | |
- Iso 8601 date and time: 76,021 assertions passed 23.45ms | |
- Time zones: 408 assertions passed 208.63ms | |
- Url decoding: 1,100 assertions passed 491us | |
- Mime types: 30 assertions passed 84us | |
- Quick select: 4,015 assertions passed 299.40ms | |
- TSynTable: 875 assertions passed 13.92ms | |
- TSynCache: 404 assertions passed 301us | |
- TSynFilter: 1,005 assertions passed 11.09ms | |
- TSynValidate: 677 assertions passed 2.26ms | |
- TSynLogFile: 49 assertions passed 569us | |
- TSynUniqueIdentifier: 1,300,002 assertions passed 1.92s | |
- TSynDictionary: 119,930 assertions passed 165.17ms | |
- TSynQueue: 6,541,501 assertions passed 1s | |
Total failed: 0 / 18,822,964 - Low level common PASSED 12.49s | |
1.2. Low level types: | |
- RTTI: 443 assertions passed 607us | |
- Url encoding: 200 assertions passed 1.57ms | |
- Encode decode JSON: 416,595 assertions passed 586.23ms | |
- Variants: 66 assertions passed 86us | |
- Mustache renderer: 147 assertions passed 4.07ms | |
- TDocVariant: 71,777 assertions passed 776.77ms | |
- TDecimal128: 17,446 assertions passed 7.20ms | |
- BSON: 245,070 assertions passed 23.73ms | |
100000 TBSONObjectID.ComputeNew in 20.64ms i.e. 4843084/s, aver. 0us | |
- TSynTableStatement: 221 assertions passed 241us | |
- TSynMonitorUsage: 1,202 assertions passed 277us | |
Total failed: 0 / 753,167 - Low level types PASSED 1.40s | |
1.3. Big table: | |
- TSynBigTable: 19,207 assertions passed 659.75ms | |
- TSynBigTableString: 16,126 assertions passed 143.12ms | |
- TSynBigTableMetaData: 475,563 assertions passed 5.42s | |
- TSynBigTableRecord: 375,563 assertions passed 8.46s | |
Total failed: 0 / 886,459 - Big table PASSED 14.70s | |
1.4. Synopse PDF: | |
- TPdfDocument: 4 assertions passed 2.04ms | |
- TPdfDocumentGDI: 8 assertions passed 14.26ms | |
Total failed: 0 / 12 - Synopse PDF PASSED 17.03ms | |
1.5. Cryptographic routines: | |
- Adler32: 1 assertion passed 61us | |
- MD5: 167 assertions passed 4.61ms | |
- SHA1: 17 assertions passed 37.03ms | |
- SHA256: 20 assertions passed 107.92ms | |
- SHA512: 27 assertions passed 101.95ms | |
- SHA3: 8,225 assertions passed 124.91ms | |
- AES256: 22,762 assertions passed 1.19s | |
cypher 1..450 bytes with AES-NI: 2.10ms, without: 5.55ms | |
- RC4: 1,011 assertions passed 8.78ms | |
- Base64: 13,992 assertions passed 491.56ms | |
- CompressShaAes: 1,683 assertions passed 9.60ms | |
- TAESPNRG: 27,303 assertions passed 174.22ms | |
- CryptDataForCurrentUser: 5,000 assertions passed 27.72ms | |
2000 AES-CFB in 23.77ms i.e. 84111/s, aver. 11us, 43.8 MB/s | |
- CryptDataForCurrentUserAPI: 5,000 assertions passed 3.10s | |
2000 DPAPI in 3.09s i.e. 645/s, aver. 1.54ms, 359.8 KB/s | |
- JWT: 162,738 assertions passed 1.79s | |
1000 HS256 in 7.08ms i.e. 141083/s, aver. 7us | |
1000 HS384 in 5.66ms i.e. 176429/s, aver. 5us | |
1000 HS512 in 5.60ms i.e. 178539/s, aver. 5us | |
1000 S3224 in 3.99ms i.e. 250250/s, aver. 3us | |
1000 S3256 in 3.91ms i.e. 255689/s, aver. 3us | |
1000 S3384 in 4.48ms i.e. 222816/s, aver. 4us | |
1000 S3512 in 3.43ms i.e. 290951/s, aver. 3us | |
1000 S3S128 in 4.23ms i.e. 236016/s, aver. 4us | |
1000 S3S256 in 3.55ms i.e. 281135/s, aver. 3us | |
100 ES256 in 688.23ms i.e. 145/s, aver. 6.88ms | |
- Benchmark: 55,000 assertions passed 1.01s | |
2500 crc32c in 3.61ms i.e. 691562/s or 1.4 GB/s | |
2500 xxhash32 in 2.36ms i.e. 1057529/s or 2.1 GB/s | |
2500 md5 in 11.03ms i.e. 226613/s or 482.2 MB/s | |
2500 sha1 in 65.70ms i.e. 38051/s or 80.9 MB/s | |
2500 hmacsha1 in 65.20ms i.e. 38342/s or 81.6 MB/s | |
2500 sha256 in 109.79ms i.e. 22770/s or 48.4 MB/s | |
2500 hmacsha256 in 120.69ms i.e. 20714/s or 44 MB/s | |
2500 sha512 in 44.26ms i.e. 56478/s or 120.1 MB/s | |
2500 hmacsha512 in 49.36ms i.e. 50644/s or 107.7 MB/s | |
2500 sha3_256 in 65.07ms i.e. 38419/s or 81.7 MB/s | |
2500 sha3_512 in 109.56ms i.e. 22818/s or 48.5 MB/s | |
2500 rc4 in 21.07ms i.e. 118612/s or 252.4 MB/s | |
2500 aes128cfb in 15.35ms i.e. 162866/s or 346.6 MB/s | |
2500 aes128ofb in 15.29ms i.e. 163420/s or 347.7 MB/s | |
2500 aes128cfbcrc in 32ms i.e. 78120/s or 166.2 MB/s | |
2500 aes128ofbcrc in 38.82ms i.e. 64391/s or 137 MB/s | |
2500 aes256cfb in 18.84ms i.e. 132633/s or 282.2 MB/s | |
2500 aes256ofb in 19.06ms i.e. 131144/s or 279.1 MB/s | |
2500 aes256cfbcrc in 30.96ms i.e. 80744/s or 171.8 MB/s | |
2500 aes256ofbcrc in 34.93ms i.e. 71561/s or 152.2 MB/s | |
2500 shake128 in 62.19ms i.e. 40193/s or 85.5 MB/s | |
2500 shake256 in 77.55ms i.e. 32236/s or 68.6 MB/s | |
Total failed: 0 / 302,946 - Cryptographic routines PASSED 8.20s | |
1.6. ECC cryptography: | |
- Reference vectors: 23 assertions passed 58.15ms | |
- ecc_make_key: 50 assertions passed 281.64ms | |
- ecdsa_sign: 50 assertions passed 312.77ms | |
- ecdsa_verify: 50 assertions passed 349.88ms | |
- ecdh_shared_secret: 147 assertions passed 602.92ms | |
- Certificates and signatures: 91 assertions passed 254.18ms | |
- ECC command line tool: 118 assertions passed 386.27ms | |
- ECDHE stream protocol: 521,295 assertions passed 1.73s | |
Total failed: 0 / 521,824 - ECC cryptography PASSED 3.98s | |
1.7. Compression: | |
- In memory compression: 12 assertions passed 1.38s | |
- GZIP format: 29 assertions passed 2.76s | |
- ZIP format: 76 assertions passed 10.44s | |
- SynLZO: 3,006 assertions passed 297.68ms | |
- SynLZ: 23,412 assertions passed 492.91ms | |
- TAlgoCompress: 458 assertions passed 86.45ms | |
TAlgoSynLZ 169.1 KB->78.6 KB: comp 72:33MB/s decomp 58:125MB/s | |
TAlgoDeflate 169.1 KB->38 KB: comp 5:1MB/s decomp 11:50MB/s | |
TAlgoDeflateFast 169.4 KB->46.9 KB: comp 14:4MB/s decomp 12:46MB/s | |
Total failed: 0 / 26,993 - Compression PASSED 15.48s | |
1.8. Protocols: | |
- RTSP over HTTP: 1,900 assertions passed 238.35ms | |
Total failed: 0 / 1,900 - Protocols PASSED 239.09ms | |
2. mORMot | |
2.1. File based: | |
- Database direct access: 22,278 assertions passed 588.09ms | |
- Virtual table direct access: 12 assertions passed 1.73ms | |
- TSQLTableJSON: 149,085 assertions passed 355.36ms | |
- TSQLRestClientDB: 615,201 assertions passed 7.26s | |
- Regexp function: 6,016 assertions passed 57.48ms | |
- TRecordVersion: 20,060 assertions passed 289.67ms | |
Total failed: 0 / 812,652 - File based PASSED 8.55s | |
2.2. File based memory map: | |
- Database direct access: 22,258 assertions passed 535.71ms | |
- Virtual table direct access: 12 assertions passed 1.64ms | |
- TSQLTableJSON: 149,085 assertions passed 358.19ms | |
- TSQLRestClientDB: 615,199 assertions passed 6.48s | |
- Regexp function: 6,016 assertions passed 61.70ms | |
- TRecordVersion: 20,060 assertions passed 286.58ms | |
Total failed: 0 / 812,630 - File based memory map PASSED 7.72s | |
2.3. File based WAL: | |
- Database direct access: 22,278 assertions passed 710.17ms | |
- Virtual table direct access: 12 assertions passed 1.67ms | |
- TSQLTableJSON: 149,085 assertions passed 355.11ms | |
- TSQLRestClientDB: 615,201 assertions passed 7.28s | |
- Regexp function: 6,016 assertions passed 61.96ms | |
- TRecordVersion: 20,060 assertions passed 291.32ms | |
Total failed: 0 / 812,652 - File based WAL PASSED 8.72s | |
2.4. Memory based: | |
- Database direct access: 22,258 assertions passed 538.39ms | |
- Virtual table direct access: 12 assertions passed 1.43ms | |
- TSQLTableJSON: 149,085 assertions passed 358.03ms | |
- TSQLRestClientDB: 683,507 assertions passed 9.47s | |
- Regexp function: 6,016 assertions passed 132.10ms | |
- TRecordVersion: 20,060 assertions passed 416.93ms | |
- TSQLTableWritable: 24,056 assertions passed 17.28ms | |
- RTree: 280,024 assertions passed 7.23s | |
10000 With RTree in 3.56s i.e. 2808/s, aver. 356us | |
10000 With RTreeInteger in 3.66s i.e. 2728/s, aver. 366us | |
- Shard write: 10,602 assertions passed 611.04ms | |
- Shard read: 140,001 assertions passed 1.04s | |
- Shard read after purge: 114,003 assertions passed 834.52ms | |
- MaxShardCount: 144,002 assertions passed 823.38ms | |
Total failed: 0 / 1,593,626 - Memory based PASSED 21.51s | |
2.5. Basic classes: | |
- TSQLRecord: 88 assertions passed 3.09ms | |
- TSQLRecordSigned: 200 assertions passed 10.87ms | |
- TSQLModel: 16 assertions passed 156us | |
- TSQLRestServerFullMemory: 1,222,461 assertions passed 4.71s | |
Total failed: 0 / 1,222,765 - Basic classes PASSED 4.73s | |
2.6. Client server access: | |
- TSQLHttpServer: 2 assertions passed 5.24ms | |
using HTTP API 1.0 | |
- TSQLHttpClient: 3 assertions passed 62.38ms | |
using TSQLHttpClientWinHTTP | |
- HTTP client keep alive: 3,087 assertions passed 433.93ms | |
4.7 KB, first 9.06ms, done 401.70ms i.e. 2489/s, aver. 401us, 11.6 MB/s | |
- HTTP client multi connect: 3,087 assertions passed 615.40ms | |
4.7 KB, first 742us, done 587.98ms i.e. 1700/s, aver. 587us, 7.9 MB/s | |
- HTTP client encrypted: 3,087 assertions passed 446.82ms | |
4.7 KB, first 1.23ms, done 424.40ms i.e. 2356/s, aver. 424us, 11 MB/s | |
- HTTP client custom encryption aes sha: 3,087 assertions passed 455.98ms | |
4.7 KB, first 4.20ms, done 428.23ms i.e. 2335/s, aver. 428us, 10.9 MB/s | |
- HTTP client custom encryption aes: 3,087 assertions passed 445.55ms | |
4.7 KB, first 388us, done 424.24ms i.e. 2357/s, aver. 424us, 11 MB/s | |
- HTTP client custom encryption sha: 3,087 assertions passed 455.12ms | |
4.7 KB, first 452us, done 429.35ms i.e. 2329/s, aver. 429us, 10.8 MB/s | |
- Named pipe access: 3,089 assertions passed 670.01ms | |
4.7 KB, first 246.57ms, done 199.54ms i.e. 5011/s, aver. 199us, 23.4 MB/s | |
- Local window messages: 3,088 assertions passed 145.81ms | |
4.7 KB, first 252us, done 132.99ms i.e. 7518/s, aver. 132us, 35.1 MB/s | |
- Direct in process access: 3,056 assertions passed 134.83ms | |
4.7 KB, first 94us, done 96.48ms i.e. 10364/s, aver. 96us, 48.4 MB/s | |
- HTTP several DB servers: 9,604 assertions passed 1.70s | |
4.7 KB, first 1.03ms, done 538.49ms i.e. 1857/s, aver. 538us, 8.6 MB/s | |
4.7 KB, first 1.45ms, done 529.14ms i.e. 1889/s, aver. 529us, 8.8 MB/s | |
4.7 KB, first 1.05ms, done 435.77ms i.e. 2294/s, aver. 435us, 10.7 MB/s | |
Total failed: 0 / 37,364 - Client server access PASSED 5.59s | |
2.7. Service oriented architecture: | |
- Weak interfaces: 56 assertions passed 715us | |
- Service initialization: 267 assertions passed 13.42ms | |
- Direct call: 606,564 assertions passed 140.15ms | |
- Server side: 606,584 assertions passed 143.48ms | |
- Client side REST: 808,779 assertions passed 4.09s | |
- Client side REST as JSON object: 808,773 assertions passed 4.53s | |
- Client side REST sessions stats: 808,773 assertions passed 5.51s | |
- Client side REST locked: 808,777 assertions passed 4.79s | |
- Client side REST main thread: 808,777 assertions passed 5.30s | |
- Client side REST background thread: 808,777 assertions passed 4.26s | |
- Client side REST sign with crc 32c: 808,773 assertions passed 3.74s | |
- Client side REST sign with xxhash: 808,773 assertions passed 3.71s | |
- Client side REST sign with md 5: 808,773 assertions passed 3.76s | |
- Client side REST sign with sha 256: 808,773 assertions passed 4.15s | |
- Client side REST sign with sha 512: 808,773 assertions passed 4.44s | |
- Client side REST weak authentication: 808,773 assertions passed 3.56s | |
- Client side REST basic authentication: 808,773 assertions passed 4.11s | |
- Client side REST custom record layout: 808,773 assertions passed 3.68s | |
- Client side REST service log to DB: 808,773 assertions passed 6.96s | |
- Client side JSONRPC: 808,773 assertions passed 3.80s | |
- Test over HTTP: 10,987 assertions passed 734.70ms | |
- Security: 139 assertions passed 5.72ms | |
- Mocks and stubs: 30,032 assertions passed 150.10ms | |
Total failed: 0 / 14,195,015 - Service oriented architecture PASSED 1m11 | |
2.8. Bidirectional remote connection: | |
- Websockets JSON protocol: 60 assertions passed 175us | |
- Websockets binary protocol: 240 assertions passed 354us | |
- Run http server: 2 assertions passed 2.34ms | |
- SOA callback on server side: 4,580 assertions passed 25.09ms | |
- SOA callback via JSON websockets: 4,583 assertions passed 227.48ms | |
- SOA callback via binary websockets: 4,583 assertions passed 218.85ms | |
- TRecordVersion: 20,068 assertions passed 360.78ms | |
Total failed: 0 / 34,116 - Bidirectional remote connection PASSED 839.71ms | |
2.9. External database: | |
- TQuery: 2,003 assertions passed 14.08ms | |
- SynDBRemote: 42,707 assertions passed 631.52ms | |
- DB properties persistence: 7 assertions passed 403us | |
- External records: 2 assertions passed 306us | |
- Auto adapt SQL: 942 assertions passed 212.99ms | |
- Crypted database: 253,277 assertions passed 508.80ms | |
- External via REST: 170,355 assertions passed 2.56s | |
- External via virtual table: 170,355 assertions passed 4.23s | |
- External via REST with change tracking: 180,455 assertions passed 6.17s | |
! External database - JET database | |
! Exception ESQLite3Exception raised with messsage: | |
! Error SQLITE_ERROR (1) [Step] using 3.25.2 - TSQLRestStorageExternal.Create: | |
TSQLRecordPeople: unable to create external missing field People.FirstName - SQL | |
="ALTER TABLE People ADD FirstName LongText"8m7☺, extended_errcode=1 | |
2.10. Multi thread process: | |
- Create thread pool: 1 assertion passed 4.16ms | |
- TSQLRestServerDB: 4,822 assertions passed 1.09s | |
1=14361/s 2=10014/s 5=8011/s 10=4003/s 30=1175/s 50=797/s | |
- TSQLRestClientDB: 4,822 assertions passed 1.06s | |
1=10469/s 2=10030/s 5=8004/s 10=4005/s 30=1333/s 50=811/s | |
- TSQLRestClientURINamedPipe: 2,412 assertions passed 1.64s | |
1=1302/s 2=1100/s 5=523/s | |
- TSQLRestClientURIMessage: 3,222 assertions passed 385.79ms | |
1=5713/s 2=7077/s 5=4028/s 10=2635/s | |
- Windows API: 4,822 assertions passed 1.28s | |
1=3511/s 2=3434/s 5=3501/s 10=3244/s 30=1351/s 50=803/s | |
- Socket API: 4,822 assertions passed 1.27s | |
1=5441/s 2=5158/s 5=4836/s 10=4112/s 30=1338/s 50=802/s | |
- Websockets: 4,822 assertions passed 1.27s | |
1=4540/s 2=5699/s 5=5020/s 10=4003/s 30=1333/s 50=803/s | |
- Locked: 4,822 assertions passed 1.08s | |
1=8497/s 2=10114/s 5=8194/s 10=4003/s 30=1333/s 50=792/s | |
- Unlocked: 4,822 assertions passed 1.05s | |
1=8955/s 2=10013/s 5=8018/s 10=4002/s 30=1333/s 50=806/s | |
- Main thread: 4,822 assertions passed 1.26s | |
1=10635/s 2=8097/s 5=3830/s 10=2611/s 30=1124/s 50=724/s | |
- Background thread: 4,822 assertions passed 1.06s | |
1=12061/s 2=12450/s 5=7769/s 10=4007/s 30=1333/s 50=795/s | |
Total failed: 0 / 49,033 - Multi thread process PASSED 12.53s | |
2.11. DDD shared units: | |
- User model: 3,276 assertions passed 1.28ms | |
- Authentication model: 20,006 assertions passed 270.22ms | |
- Email validation process: 55 assertions passed 78.72ms | |
- User CQRS repository: 57,106 assertions passed 1.01s | |
Total failed: 0 / 80,443 - DDD shared units PASSED 1.36s | |
2.12. DDD multi thread: | |
- Delete old database: 1 assertion passed 998us | |
- Start server: 1 assertion passed 35.12ms | |
- Single client test: 1,002 assertions passed 380.36ms | |
- Multi threaded clients test: 21 assertions passed 629.52ms | |
Total failed: 0 / 1,025 - DDD multi thread PASSED 1.05s | |
Windows XP SP3 (5.1.2600) (cp1252) | |
1 x Intel(R) Core(TM) i7-3517U CPU @ 1.90GHz (x86) | |
Using mORMot 1.18.4842 | |
TSQLite3LibraryStatic 3.25.2 with internal MM | |
Generated with: Delphi XE8 32 bit compiler | |
Time elapsed for all tests: 3m35 | |
Performed 2018-10-10 15:23:41 by User1 on XP1VM | |
Total assertions failed for all test suits: 0 / 41,787,690 | |
! Some tests FAILED: please correct the code. | |
Done - Press ENTER to Exit |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment