Awesomeness! I really appreciate all the posting on this. It was informative to observe the process even if I didn’t participate.
-- Scott Morrow Elementary Software (Now with 20% less chalk dust!) web https://elementarysoftware.com/ email sc...@elementarysoftware.com booth 1-800-615-0867 ------------------------------------------------------ > On Apr 11, 2020, at 8:41 AM, Mark Waddingham via use-livecode > <use-livecode@lists.runrev.com> wrote: > > On 2020-04-11 13:54, Neville Smythe via use-livecode wrote: >> Sorry Brian, I uploaded from the wrong folder. Here is the update test >> set. But the only difference is that you don’t need to hold down the >> shift key to see the binary save timing. >> https://www.dropbox.com/sh/cb2r9jbohxqv6bp/AAAQ1weLLlzrKYQ21yn1apf9a?dl=0 >> <https://www.dropbox.com/sh/cb2r9jbohxqv6bp/AAAQ1weLLlzrKYQ21yn1apf9a?dl=0> >> Colin, the test set here shows the timing of saving of stacks; the >> times for Windows 10 are a large multiple of Mac/Unix and we >> discussing possible reasons before updating the bug report bug 21305 >> <https://quality.livecode.com/show_bug.cgi?id=21305> for Quality >> Control > > So I also had a look at this today - using Visual Studio's builtin CPU > profiling diagnostic when running the engine in release mode. > > There appear to be two reasons for the difference: > > 1) When saving each style run (block) in a field the engine is making three > Win32 API calls. > > 2) The saving method uses (and always has used) direct Win32 system calls to > manipulate files without any buffering (on other platforms we wrap the > standard C library stdio FILE which has its own buffer). > > I tested your very neat little stack with 1323 cards (about 36Mb of data). > > On my machine with the engine as it is it takes: > > - Windows 10 (VM) [ Community 'develop' ] - 10s > > - macOS Catalina (Native) [ Business 9.5.0 ] - 0.45s > > After doing a hacky patch to the sites using the Win32 API calls (i.e. > caching the results and only calling them once) I got: > > - Windows 10 (VM) [ Community 'develop' ] - 1.8s > > After adding a very simple write buffer to the Win32 implementation of the > system file stream class we have. I got: > > - Windows 10 (VM) [ Community 'develop' ] - 0.4s > > Anyway, the patches I've made are quite rough at the moment, but I'll > endeavour to submit them as PRs in the next few days :) > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ m...@livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode