Thread overview
[Issue 17093] gdc compilation performance on the Raspbery Pi leaves to be desired
Jan 16, 2017
Ion Todirel
Jan 16, 2017
Ion Todirel
Jan 16, 2017
Iain Buclaw
Mar 21, 2019
Iain Buclaw
January 16, 2017
https://issues.dlang.org/show_bug.cgi?id=17093

--- Comment #1 from Ion Todirel <iontodirel@gmail.com> ---
This is a Raspberry Pi 3

--
January 16, 2017
https://issues.dlang.org/show_bug.cgi?id=17093

--- Comment #2 from Ion Todirel <iontodirel@gmail.com> ---
P.S. running Raspbian Jessie

--
January 16, 2017
https://issues.dlang.org/show_bug.cgi?id=17093

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ibuclaw@gdcproject.org

--- Comment #3 from Iain Buclaw <ibuclaw@gdcproject.org> ---
Any comparative examples of C vs. D would be useful.  If it's slow on Raspi, then it'll be slow on any other host system, just not as pronounced.

Assuming you mean time to compile, could be any of three components which it's spending most of it's time in.

1) Compiler:
  If here, try compiling with -v -ftime-report -ftime-report-details, and we'll
see if there's any semantic / pass that it is taking longer than others.

2) Assembler:
  If here, then it's not a bug, and you've just underestimated just how much
code is generated.  Here's a contrived example: https://goo.gl/Ya6lXB

3) Linker:
  Again, it's not a bug.  But chances am you are linking to druntime/phobos
statically, this is would be a very IO and CPU intensive on a poor Raspi.
Compiling with -shared-libphobos should sort that out and bring you back up to
speed with gcc.  (Debian turns on -shared-libphobos by default, but in upstream
for now it is still default disabled while it undergoes more testing).

--
March 21, 2019
https://issues.dlang.org/show_bug.cgi?id=17093

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |WONTFIX

--