> ** Fresh Win7 on my PC: *
> - ICS: Upload Duration: 34.39 secs/132,417 chars/sec
> - SYN: Upload Duration: 2.03 secs/Speed: 2,241,135 chars/sec
> ** Fresh Win10 on my PC**
> - ICS: Upload Duration: 1.88 secs/ 2,427,498 chars/sec
> - SYN: Upload Duration: 2.02 secs/Speed: 2,257,802 chars/sec
Does not really make sense to me, but could be down to improved async
winsock with Windows 10. ICS always uses async, Indy and Synapse are
blocking sync calls using threads. Windows must be creating a thread
itself to offer async, and maybe this is now better.
WinInet is a special case and probably handles TCP/IP as a driver or
something we can not do.
Microsoft does mess this stuff up, a few years ago a new ADO/SQL client
introduced a handle leak for each async call, took me six month to
convince them, another six months for a fix, by which time I changed my
application to use a thread instead so I did not run out of memory when
250,000 handles were allocated.
> As for the GET, the 2 ICS links seem a bit slower than the IIS.
> Did a GET test on a 5MB file:
> Both ICS and SYN took around 4.1-4.3s, no issues with http
> downloads I think.
As I would expect, IIS uses Kernel mode drivers for performance, ICS is
stuck with winsock API so is slightly slower.
One puzzle here is your testing of www1 is to Windows 2008 which is
effectively Vista (the server has been running with the ICS SVN since
November 2008, down time 1 hour since then), so should be slow with
async winsock if Windows 7 is slow. You can also test uploads to www
which is Windows 2012 R2 and only a year old, but is not the latest ICS
since it's my main live server and the new OpenSSL is not stable yet.
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be