-
Content Count
235 -
Joined
-
Last visited
-
Days Won
1
RDP1974 last won the day on September 29 2021
RDP1974 had the most liked content!
Community Reputation
40 ExcellentRecent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
-
there is a generic all in one https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170#visual-studio-2015-2017-2019-and-2022 installing this solved, probably db clients dll are binded to ucrt so needing this
-
I had a similar problem with firedac mysql solved installing visual c++ redistributable
-
chatgpt can convert 32bit asm into 64bit
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
indeed the quality of the system rtl of D12 is outstanding -
question do you remember the good old https://fastcode.sourceforge.net/ ? (2007 project) I asked chatgpt to convert asm32 to asm64 delphi, look at this example: procedure MoveJOH_SSE2_10(const Source; var Dest; Count : Integer); asm cmp ecx, TINYSIZE ja @@Large {Count > TINYSIZE or Count < 0} cmp eax, edx jbe @@SmallCheck add eax, ecx add edx, ecx jmp SmallForwardMove_10 @@SmallCheck: jne SmallBackwardMove_10 ret {For Compatibility with Delphi's move for Source = Dest} @@Large: jng @@Done {For Compatibility with Delphi's move for Count < 0} cmp eax, edx ja Forwards_SSE2_10 je @@Done {For Compatibility with Delphi's move for Source = Dest} sub edx, ecx cmp eax, edx lea edx, [edx+ecx] jna Forwards_SSE2_10 jmp Backwards_SSE2_10 {Source/Dest Overlap} @@Done: end; {MoveJOH_SSE2} chat gpt rewrite this in 64bit: procedure MoveJOH_SSE2_10(const Source; var Dest; Count: Integer); asm cmp r8d, TINYSIZE // Compare Count (R8D) with TINYSIZE ja @@Large // If Count > TINYSIZE or Count < 0, jump to @@Large cmp rcx, rdx // Compare Source (RCX) with Dest (RDX) jbe @@SmallCheck add rcx, r8 // Adjust Source address: Source + Count add rdx, r8 // Adjust Dest address: Dest + Count jmp SmallForwardMove_10 // Jump to small forward move @@SmallCheck: jne SmallBackwardMove_10 // If Source ≠ Dest, use backward move ret // If Source = Dest, exit (compatible with Delphi’s Move) @@Large: jng @@Done // If Count < 0, exit (compatible with Delphi’s Move) cmp rcx, rdx ja Forwards_SSE2_10 // If Source > Dest, use forward move je @@Done // If Source = Dest, exit sub rdx, r8 // Adjust Dest address: Dest - Count cmp rcx, rdx lea rdx, [rdx + r8] // Restore original Dest address jna Forwards_SSE2_10 // If no overlap, use forward move jmp Backwards_SSE2_10 // If overlap, use backward move @@Done: end; opinions? does this make sense to you? can we take the winners of fastcode 32bit and convert them in 64bit so easily? chatgpt then owns the copyright?
-
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
I feel dumb, want edit first post, can't find how to want erase one post, seems impossible! 😕 -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
thank you -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
I don't find where to rename the topic 😕 -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
how to? -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
lowering the size of the output to 2.5kB (json blob) instead of 46kB, isapi has this throughput (cpu near old 9th 14nm i9900-kf) Concurrency Level: 100 Time taken for tests: 0.398 seconds Complete requests: 10000 Failed requests: 0 Keep-Alive requests: 10000 Total transferred: 27800000 bytes HTML transferred: 26100000 bytes Requests per second: 25106.45 [#/sec] (mean) Time per request: 3.983 [ms] (mean) Time per request: 0.040 [ms] (mean, across all concurrent requests) Transfer rate: 68160.09 [Kbytes/sec] received -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
with keep-alive isapi app Concurrency Level: 100 Time taken for tests: 4.763 seconds Complete requests: 10000 Failed requests: 0 Keep-Alive requests: 10000 Total transferred: 431790000 bytes HTML transferred: 430080000 bytes Requests per second: 2099.45 [#/sec] (mean) Time per request: 47.631 [ms] (mean) Time per request: 0.476 [ms] (mean, across all concurrent requests) Transfer rate: 88527.55 [Kbytes/sec] received in project source: Application.MaxConnections:=1000; Application.CacheConnections:=True; -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
please tell me if these test are disturbing or inapropriate if so will delete them -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
single request latest oneapi v.2022 (see first page) Concurrency Level: 1 Time taken for tests: 0.004 seconds Complete requests: 1 Failed requests: 0 Keep-Alive requests: 0 Total transferred: 43146 bytes HTML transferred: 43008 bytes Requests per second: 285.06 [#/sec] (mean) Time per request: 3.508 [ms] (mean) Time per request: 3.508 [ms] (mean, across all concurrent requests) Transfer rate: 12011.05 [Kbytes/sec] received -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
latest oneapi v.2022 intel tbbmalloc with zlib deflate ac: https://github.com/RDP1974/Delphi64RTL Server Software: Microsoft-IIS/10.0 Server Hostname: 192.168.1.110 Server Port: 80 Document Path: /isapi/testisapi.dll Document Length: 8416 bytes Concurrency Level: 100 Time taken for tests: 5.478 seconds Complete requests: 10000 Failed requests: 0 Total transferred: 86170000 bytes HTML transferred: 84160000 bytes Requests per second: 1825.64 [#/sec] (mean) Time per request: 54.775 [ms] (mean) Time per request: 0.548 [ms] (mean, across all concurrent requests) Transfer rate: 15362.84 [Kbytes/sec] received without zlib deflate Document Path: /isapi/testisapi.dll Document Length: 43008 bytes Concurrency Level: 100 Time taken for tests: 5.236 seconds Complete requests: 10000 Failed requests: 0 Total transferred: 431740000 bytes HTML transferred: 430080000 bytes Requests per second: 1909.82 [#/sec] (mean) Time per request: 52.361 [ms] (mean) Time per request: 0.524 [ms] (mean, across all concurrent requests) Transfer rate: 80522.17 [Kbytes/sec] received -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
btw. I'll provide intel one api accelerated zlib.so library for linux too -
New mem manager test using indy http, json, memtables, etc
RDP1974 replied to RDP1974's topic in RTL and Delphi Object Pascal
look this -> using zlib accelerated deflate (RDPMM64 repo zip.dll) msheap, isapi dll Document Path: /isapi/testisapi.dll Document Length: 8416 bytes Concurrency Level: 100 Time taken for tests: 0.609 seconds Complete requests: 1000 Failed requests: 0 Total transferred: 8617000 bytes HTML transferred: 8416000 bytes Requests per second: 1641.52 [#/sec] (mean) Time per request: 60.919 [ms] (mean) Time per request: 0.609 [ms] (mean, across all concurrent requests) Transfer rate: 13813.49 [Kbytes/sec] received added: uses JsonDataObjects, DataSet.Serialize, RDPWebbroker64; in response method: Response.ContentType:='application/json; charset="UTF-8"'; Response.ZlibDeflate; end; response reduced in real time from 43kb to 8kb (thus saving time from server -> to browser and bandwidth cloud cost) while keeping throughput reqs/s unchanged