> From: Bogdan Sirb <
bogdans91@yahoo.com>
>
> I noticed a performace issue with emacs 25.1 (built with MinGW on
> windows 10, but I used the one at
>
https://sourceforge.net/projects/emacsbinw64/).
>
> I created a small c++ program to read from stdin:
>
> std::cin >> fileSizeStr;
> std::streamsize length = std::stoi(fileSizeStr);
> char *content = (char *)malloc(length);
> std::cin.read(content, length);
>
> and sent data to it with the follogiwn emacs code :
>
> ;; added this in the middle of a 162 kb file and eval'd it:
> (setq proc (start-process "Test" nil "./test.exe"))
> (process-send-string
> proc
> (format "%d\n%s\n" (point-max)
> (buffer-substring (point-min) (point-max))))
>
> I used elp-instrument-function for process-send-string and I got this
> results (emacs 25.1 built by me vs emacs 24.5 found in msys2+mingw64
> repo, compiled with the same flags):
>
> * emacs 25.1: 0.510064 seconds/call
> * emacs 24.5: 0.037496 seconds/call
>
> And for a simple C program with fread(..., stdin) instead of std::cin
>
> * emacs 25.1: 0.547136 seconds/call
> * emacs 24.5: 0.031285 seconds/call
>
> In GNU Emacs 25.1.1 (x86_64-w64-mingw32)
> of 2016-08-01 built on CSIRB-DEV
> Windowing system distributor 'Microsoft Corp.', version 10.0.10586
> Configured using:
> 'configure --build=x86_64-w64-mingw32 --with-wide-int=yes
> --with-sound=yes --with-file-notification=yes --without-gpm
> --without-gconf --without-gsettings --without-selinux --with-modules
> 'CFLAGS=-march=native -mtune=native -pipe -O3 -fomit-frame-pointer
> -funroll-loops' 'CPPFLAGS=-mtune=native -march=native -DNDEBUG -isystem
> /mingw64/include' 'LDFLAGS=-s -Wl,-s''