public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/96348] New: The same "C" program runtime is 50 times longer on Win10 than on Linux.
@ 2020-07-28  1:38 brianoh9999 at gmail dot com
  2020-07-28  1:43 ` [Bug c/96348] " brianoh9999 at gmail dot com
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: brianoh9999 at gmail dot com @ 2020-07-28  1:38 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96348

            Bug ID: 96348
           Summary: The same "C" program runtime is 50 times longer on
                    Win10 than on Linux.
           Product: gcc
           Version: 8.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: brianoh9999 at gmail dot com
  Target Milestone: ---

I belive that I have found what appears to be a major bug somewhere in the
compilation of an "C" program for Win10.

GCC --version shows:

gcc (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 8.1.0

The PC is an i7-8550U. The windows version is Win10 Pro, V2004-19041.388.

Compiler Command for initial run:
gcc primes.c -o primes.exe -O3
No console output from compiler.

Compiler Command for .i creation:
gcc primes.c -o primes.exe -O3 -save-temps
No console output from compiler.

This problem surfaced in a fairly simple benchmark that I wrote for various
languages including C++, Rust, Go, Dart, Java, and JS. The algorithm used is
exactly the same for all languages. The run-time on all of these languages on
Win10 ranges from 6 seconds to 15 seconds. Using GCC compiling "C", it takes
over 50 times longer than C++ (650 seconds or more vs 12.5 seconds). Assuming
it was my fault, I could see no obvious problem, so I installed WSL2 on Win10
and compiled it on Ubuntu using GCC and ran it. The result was 12.5 seconds -
the exact same code. I ran it on another Win10 i7 PC and it took 675 seconds. I
had someone (experienced in C) independently verify this, and they had the same
result both on Win10 and Linux (c. 650 seconds and 12 seconds). I compiled it
with various optimization flags including "-O", "-O3", etc. I also compiled it
using Code:Blocks (on Windows) and got the same result (runtime). The person
who verified this for me is an experienced "C" programmer.

I am an experienced programmer and have spent a lot of time researching this,
and I would therefore like to report it as a bug.

Please note. The issue is not whether the algorithm is good or bad. The issue
is that the runtime on Win10 (for 10 million) takes 50 times longer than on
Linux, and also 50 times longer than other major languages including C++.

I was unsure about your requirements as to what you do not want in regards to
the source file. You do not want:
   "A source file that #includes header files that are left out of the bug
report (see above)"
   "That source file and a collection of header files."

It was therefore unclear to me whether you want the actual source file, so I
have attached it. Well, I tried to, but it appears that you only want one
attachment.

Please note as I'm sure you will realize, this is not a question as to how good
or not the algorithm is or whether I could use the sqrt function. It is solely
about the vast discrepancy in the runtime.

I'm unsure if I selected the correct component to file this under, because the
description is "A problem with the C compiler front end". I presume it is
actually "A problem with the C compiler tool chain" or similar, but I could not
identify a more suitable component.

Please inform me as to the result of this submission.

Regards, Brian

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug c/96348] The same "C" program runtime is 50 times longer on Win10 than on Linux.
  2020-07-28  1:38 [Bug c/96348] New: The same "C" program runtime is 50 times longer on Win10 than on Linux brianoh9999 at gmail dot com
@ 2020-07-28  1:43 ` brianoh9999 at gmail dot com
  2020-07-28  1:58 ` brianoh9999 at gmail dot com
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: brianoh9999 at gmail dot com @ 2020-07-28  1:43 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96348

Brian Oh <brianoh9999 at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |brianoh9999 at gmail dot com

--- Comment #1 from Brian Oh <brianoh9999 at gmail dot com> ---
Created attachment 48939
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48939&action=edit
the source file

I could not attach the preprocessed file - too large.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug c/96348] The same "C" program runtime is 50 times longer on Win10 than on Linux.
  2020-07-28  1:38 [Bug c/96348] New: The same "C" program runtime is 50 times longer on Win10 than on Linux brianoh9999 at gmail dot com
  2020-07-28  1:43 ` [Bug c/96348] " brianoh9999 at gmail dot com
@ 2020-07-28  1:58 ` brianoh9999 at gmail dot com
  2021-07-16 22:03 ` [Bug middle-end/96348] " pinskia at gcc dot gnu.org
  2021-07-17  4:09 ` brianoh9999 at gmail dot com
  3 siblings, 0 replies; 5+ messages in thread
From: brianoh9999 at gmail dot com @ 2020-07-28  1:58 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96348

--- Comment #2 from Brian Oh <brianoh9999 at gmail dot com> ---
Created attachment 48940
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48940&action=edit
the preprocessed file (zipped)

The preprocessed file (zipped) is attached.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug middle-end/96348] The same "C" program runtime is 50 times longer on Win10 than on Linux.
  2020-07-28  1:38 [Bug c/96348] New: The same "C" program runtime is 50 times longer on Win10 than on Linux brianoh9999 at gmail dot com
  2020-07-28  1:43 ` [Bug c/96348] " brianoh9999 at gmail dot com
  2020-07-28  1:58 ` brianoh9999 at gmail dot com
@ 2021-07-16 22:03 ` pinskia at gcc dot gnu.org
  2021-07-17  4:09 ` brianoh9999 at gmail dot com
  3 siblings, 0 replies; 5+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-07-16 22:03 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96348

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
So one thing is Windows is LLP64IL32 target while x86_64 Linux is LP64 target. 
So if you are comparing windows to Linux and use long type, you might be
getting the major difference there.

There might be other things difference between the two too.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug middle-end/96348] The same "C" program runtime is 50 times longer on Win10 than on Linux.
  2020-07-28  1:38 [Bug c/96348] New: The same "C" program runtime is 50 times longer on Win10 than on Linux brianoh9999 at gmail dot com
                   ` (2 preceding siblings ...)
  2021-07-16 22:03 ` [Bug middle-end/96348] " pinskia at gcc dot gnu.org
@ 2021-07-17  4:09 ` brianoh9999 at gmail dot com
  3 siblings, 0 replies; 5+ messages in thread
From: brianoh9999 at gmail dot com @ 2021-07-17  4:09 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96348

--- Comment #4 from Brian Oh <brianoh9999 at gmail dot com> ---


On Sat, Jul 17, 2021 at 6:03 AM pinskia at gcc dot gnu.org <
gcc-bugzilla@gcc.gnu.org> wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96348
>
> --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
> So one thing is Windows is LLP64IL32 target while x86_64 Linux is LP64
> target.
> So if you are comparing windows to Linux and use long type, you might be
> getting the major difference there.
>
> There might be other things difference between the two too.
>
> --
> You are receiving this mail because:
> You are on the CC list for the bug.
> You reported the bug.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-07-17  4:09 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-28  1:38 [Bug c/96348] New: The same "C" program runtime is 50 times longer on Win10 than on Linux brianoh9999 at gmail dot com
2020-07-28  1:43 ` [Bug c/96348] " brianoh9999 at gmail dot com
2020-07-28  1:58 ` brianoh9999 at gmail dot com
2021-07-16 22:03 ` [Bug middle-end/96348] " pinskia at gcc dot gnu.org
2021-07-17  4:09 ` brianoh9999 at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).