Binary bloat in 7.10

2015-04-01 Thread Jeremy
Why do the 7.10 libraries take up so much more space than 7.8? For example,
using the same build options and strip --strip-unneeded, 7.8 leaves me with

15M libHSCabal-1.18.1.5.a
17M HSCabal-1.18.1.5.o

whereas 7.10 balloons to

23M HSCabal-1.22.2.0-HWT8QvVfJLn2ubvobpycJY.o
53M libHSCabal-1.22.2.0-HWT8QvVfJLn2ubvobpycJY.a



--
View this message in context: 
http://haskell.1045720.n5.nabble.com/Binary-bloat-in-7-10-tp5768067.html
Sent from the Haskell - Glasgow-haskell-users mailing list archive at 
Nabble.com.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Increased memory usage with GHC 7.10.1

2015-04-01 Thread Jan Stolarek
Forall hi,

I just uprgaded both of my machines to use GHC 7.10.1. I keep sandboxed 
installations of GHC and 
this means I had to rebuild Agda and Idris because the binaries built with GHC 
7.8.4 were stored 
inside deactivated 7.8.4 sandbox. Sadly, I had problems building both Agda and 
Idris due to GHC 
taking up all of available memory.

With Idris the problematic module was Idris.ElabTerm (~2900LOC). The 
interesting part of the story 
is that when I do a clean build of Idris GHC consumes all of memory when 
compiling that module 
and I have to kill the build. But when I restart the build after killing GHC 
the module is 
compiled using a reasonable amount of memory and within reasonable time.

With Agda the problematic module is Agda.TypeChecking.Serialise (~2000LOC). The 
trick with killing 
the build and restarting it didn't work in this case. I had to compile Agda 
with GHC 7.8.4 (which 
works without problems though the mentioned module still requires a lot of 
memory) and alter my 
setup so that Agda binary is not stored inside GHC sandbox.

I wonder if any of you came across similar issues with GHC 7.10.1? Do we have 
any performance data 
that allows to compare memory usage and performance of GHC 7.10.1 with previous 
stable releases?

All of the above happened on 64bit Debian Wheezy with 2GB of RAM.

Janek

---
Politechnika Łódzka
Lodz University of Technology

Treść tej wiadomości zawiera informacje przeznaczone tylko dla adresata.
Jeżeli nie jesteście Państwo jej adresatem, bądź otrzymaliście ją przez pomyłkę
prosimy o powiadomienie o tym nadawcy oraz trwałe jej usunięcie.

This email contains information intended solely for the use of the individual 
to whom it is addressed.
If you are not the intended recipient or if you have received this message in 
error,
please notify the sender and delete it from your system.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Jeremy
Roman Cheplyaka-2 wrote
 I'm not denying (or confirming) your claim, but it would look more
 legitimate if you compared the same version of Cabal compiled with
 different versions of GHC.
 
 At least some of this bloat could be because Cabal simply gained more
 code.

Tricky to test that because of dependencies and global package db.

I haven't measured the amount of code in Cabal, but I doubt it's increased
that much, and there has been a big jump in the installed size of every
library.



--
View this message in context: 
http://haskell.1045720.n5.nabble.com/Binary-bloat-in-7-10-tp5768067p5768080.html
Sent from the Haskell - Glasgow-haskell-users mailing list archive at 
Nabble.com.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Roman Cheplyaka
On 01/04/15 12:30, Jeremy wrote:
 Why do the 7.10 libraries take up so much more space than 7.8? For example,
 using the same build options and strip --strip-unneeded, 7.8 leaves me with
 
 15M libHSCabal-1.18.1.5.a
 17M HSCabal-1.18.1.5.o
 
 whereas 7.10 balloons to
 
 23M HSCabal-1.22.2.0-HWT8QvVfJLn2ubvobpycJY.o
 53M libHSCabal-1.22.2.0-HWT8QvVfJLn2ubvobpycJY.a

I'm not denying (or confirming) your claim, but it would look more
legitimate if you compared the same version of Cabal compiled with
different versions of GHC.

At least some of this bloat could be because Cabal simply gained more code.

Roman
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Karel Gardas


7.10.1 should IIRC support some kind of DWARF debugging information and 
IIRC it was mentioned and decided on ghc devel that the libraries will 
ship with some DWARF to easy debugging


-- but takes me lightly on it and verify if this is the case since I may 
be completely off and this may apply to GHC HEAD and not to 7.10.x


Karel

On 04/ 1/15 11:30 AM, Jeremy wrote:

Why do the 7.10 libraries take up so much more space than 7.8? For example,
using the same build options and strip --strip-unneeded, 7.8 leaves me with

15M libHSCabal-1.18.1.5.a
17M HSCabal-1.18.1.5.o

whereas 7.10 balloons to

23M HSCabal-1.22.2.0-HWT8QvVfJLn2ubvobpycJY.o
53M libHSCabal-1.22.2.0-HWT8QvVfJLn2ubvobpycJY.a



--
View this message in context: 
http://haskell.1045720.n5.nabble.com/Binary-bloat-in-7-10-tp5768067.html
Sent from the Haskell - Glasgow-haskell-users mailing list archive at 
Nabble.com.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users



___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Jeremy
It's not just binaries, even hi files have ballooned. (I should note that
(stripped) executables appear to be unaffected.)



--
View this message in context: 
http://haskell.1045720.n5.nabble.com/Binary-bloat-in-7-10-tp5768067p5768072.html
Sent from the Haskell - Glasgow-haskell-users mailing list archive at 
Nabble.com.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Jeremy
Karel Gardas wrote
 7.10.1 should IIRC support some kind of DWARF debugging information and 
 IIRC it was mentioned and decided on ghc devel that the libraries will 
 ship with some DWARF to easy debugging
 
 -- but takes me lightly on it and verify if this is the case since I may 
 be completely off and this may apply to GHC HEAD and not to 7.10.x

Stripped all debugging, didn't help.



--
View this message in context: 
http://haskell.1045720.n5.nabble.com/Binary-bloat-in-7-10-tp5768067p5768077.html
Sent from the Haskell - Glasgow-haskell-users mailing list archive at 
Nabble.com.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Jeremy
Roman Cheplyaka-2 wrote
 I'm not denying (or confirming) your claim, but it would look more
 legitimate if you compared the same version of Cabal compiled with
 different versions of GHC.
 
 At least some of this bloat could be because Cabal simply gained more
 code.

I was going to prove you wrong by identifying packages which have barely
changed for 7.10 ... and found that those packages were a similar size to
their 7.8 versions.

However, the size increase in other packages is huge, and simply gained
more code doesn't seem like an adequate explanation, with some package more
than doubling.

Here are the full results:

7.8:

34M Cabal-1.18.1.5
3.8Marray-0.5.0.0
50M base-4.7.0.2
52M bin
368Kbin-package-db-0.0.0.0
2.7Mbinary-0.7.1.0
5.4Mbytestring-0.10.4.0
9.4Mcontainers-0.5.5.1
196Kdeepseq-1.3.0.2
608Kdirectory-1.2.1.0
740Kfilepath-1.3.0.2
105Mghc-7.8.4
2.7Mghc-prim-0.3.1.0
8.7Mhaskeline-0.7.1.2
3.4Mhoopl-3.10.0.1
1020K   hpc-0.6.0.1
556Kinteger-gmp-0.5.1.0
680Kpretty-1.1.1.1
684Kprocess-1.2.0.0
1.6Mrts-1.0
13M template-haskell-2.9.0.0
1.4Mterminfo-0.4.0.0
6.1Mtime-1.4.2
4.4Mtransformers-0.3.0.0
5.2Munix-2.7.0.1

7.10:

83M Cabal_HWT8QvVfJLn2ubvobpycJY
3.7Marray_FaHmcBFfuRM8kmZLEY8D5S
52M base_I5BErHzyOm07EBNpKBEeUv
56M bin
2.9Mbinar_EKE3c9Lmxb3DQpU0fPtru6
832Kbinpa_JNoexmBMuO8C771QaIy3YN
5.7Mbytes_6vj5EoliHgNHISHCVCb069
11M conta_47ajk3tbda43DFWyeF3oHQ
432Kdeeps_FpR4obOZALU1lutWnrBldi
912Kdirec_3TcTyYedch32o1zTH2MR00
796Kfilep_5HhyRonfEZoDO205Wm9E4h
113Mghc_EMlWrQ42XY0BNVbSrKixqY
2.9Mghcpr_8TmvWUcS1U1IKHT0levwg3
8.9Mhaske_IlDhIe25uAn0WJY379Nu1M
3.4Mhoopl_JxODiSRz1e84NbH6nnZuUk
1.1Mhpc_CmUUQl5bURfBueJrdYfNs3
1.3Minteg_2aU3IZNMF9a7mQ0OzsZ0dS
1.8Mprett_7jIfj8VCGFf1WS0tIQ1XSZ
764Kproce_0hwN3CTKynhHQqQkChnSdH
1.7Mrts
19M templ_BVMCZyLwIlfGfcqqzyUAI8
1.4Mtermi_7qZwBlx3clR8sTBilJl253
6.2Mtime_Hh2clZW6in4HpYHx5bLtb7
7.3Mtrans_ALYlebOVzVI4kxbFX5SGhm
5.4Munix_G4Yo1pNtYrk8nCq1cx8P9d




--
View this message in context: 
http://haskell.1045720.n5.nabble.com/Binary-bloat-in-7-10-tp5768067p5768083.html
Sent from the Haskell - Glasgow-haskell-users mailing list archive at 
Nabble.com.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Carter Schonwald
How much of this might be attributable to longer linker symbol names? Ghc
7.10 object  code does have larger symbols!  Is there a way to easily
tabulate that?
On Apr 1, 2015 9:40 AM, Jeremy volderm...@hotmail.com wrote:

 Roman Cheplyaka-2 wrote
  I'm not denying (or confirming) your claim, but it would look more
  legitimate if you compared the same version of Cabal compiled with
  different versions of GHC.
 
  At least some of this bloat could be because Cabal simply gained more
  code.

 I was going to prove you wrong by identifying packages which have barely
 changed for 7.10 ... and found that those packages were a similar size to
 their 7.8 versions.

 However, the size increase in other packages is huge, and simply gained
 more code doesn't seem like an adequate explanation, with some package
 more
 than doubling.

 Here are the full results:

 7.8:

 34M Cabal-1.18.1.5
 3.8Marray-0.5.0.0
 50M base-4.7.0.2
 52M bin
 368Kbin-package-db-0.0.0.0
 2.7Mbinary-0.7.1.0
 5.4Mbytestring-0.10.4.0
 9.4Mcontainers-0.5.5.1
 196Kdeepseq-1.3.0.2
 608Kdirectory-1.2.1.0
 740Kfilepath-1.3.0.2
 105Mghc-7.8.4
 2.7Mghc-prim-0.3.1.0
 8.7Mhaskeline-0.7.1.2
 3.4Mhoopl-3.10.0.1
 1020K   hpc-0.6.0.1
 556Kinteger-gmp-0.5.1.0
 680Kpretty-1.1.1.1
 684Kprocess-1.2.0.0
 1.6Mrts-1.0
 13M template-haskell-2.9.0.0
 1.4Mterminfo-0.4.0.0
 6.1Mtime-1.4.2
 4.4Mtransformers-0.3.0.0
 5.2Munix-2.7.0.1

 7.10:

 83M Cabal_HWT8QvVfJLn2ubvobpycJY
 3.7Marray_FaHmcBFfuRM8kmZLEY8D5S
 52M base_I5BErHzyOm07EBNpKBEeUv
 56M bin
 2.9Mbinar_EKE3c9Lmxb3DQpU0fPtru6
 832Kbinpa_JNoexmBMuO8C771QaIy3YN
 5.7Mbytes_6vj5EoliHgNHISHCVCb069
 11M conta_47ajk3tbda43DFWyeF3oHQ
 432Kdeeps_FpR4obOZALU1lutWnrBldi
 912Kdirec_3TcTyYedch32o1zTH2MR00
 796Kfilep_5HhyRonfEZoDO205Wm9E4h
 113Mghc_EMlWrQ42XY0BNVbSrKixqY
 2.9Mghcpr_8TmvWUcS1U1IKHT0levwg3
 8.9Mhaske_IlDhIe25uAn0WJY379Nu1M
 3.4Mhoopl_JxODiSRz1e84NbH6nnZuUk
 1.1Mhpc_CmUUQl5bURfBueJrdYfNs3
 1.3Minteg_2aU3IZNMF9a7mQ0OzsZ0dS
 1.8Mprett_7jIfj8VCGFf1WS0tIQ1XSZ
 764Kproce_0hwN3CTKynhHQqQkChnSdH
 1.7Mrts
 19M templ_BVMCZyLwIlfGfcqqzyUAI8
 1.4Mtermi_7qZwBlx3clR8sTBilJl253
 6.2Mtime_Hh2clZW6in4HpYHx5bLtb7
 7.3Mtrans_ALYlebOVzVI4kxbFX5SGhm
 5.4Munix_G4Yo1pNtYrk8nCq1cx8P9d




 --
 View this message in context:
 http://haskell.1045720.n5.nabble.com/Binary-bloat-in-7-10-tp5768067p5768083.html
 Sent from the Haskell - Glasgow-haskell-users mailing list archive at
 Nabble.com.
 ___
 Glasgow-haskell-users mailing list
 Glasgow-haskell-users@haskell.org
 http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users

___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Jeremy
Carter Schonwald wrote
 How much of this might be attributable to longer linker symbol names? Ghc
 7.10 object  code does have larger symbols!  Is there a way to easily
 tabulate that?

That would explain why the hi files have also increased many-fold. Is there
any way to avoid the larger symbols?



--
View this message in context: 
http://haskell.1045720.n5.nabble.com/Binary-bloat-in-7-10-tp5768067p5768095.html
Sent from the Haskell - Glasgow-haskell-users mailing list archive at 
Nabble.com.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Daniel Trstenjak

On Wed, Apr 01, 2015 at 02:30:49AM -0700, Jeremy wrote:
 Why do the 7.10 libraries take up so much more space than 7.8? For example,
 using the same build options and strip --strip-unneeded, 7.8 leaves me with

That would be some kind of harsh april 1st joke, if everything compiled
at that day gets a bloated data section by putting lots april strings
into it. ;)


Greetings,
Daniel
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Edward Z. Yang
Yes, this does seem like a potential culprit, although
we did do some measurements and I didn't think it was too bad.
Maybe we were wrong!

Edward

Excerpts from Jeremy's message of 2015-04-01 07:26:55 -0700:
 Carter Schonwald wrote
  How much of this might be attributable to longer linker symbol names? Ghc
  7.10 object  code does have larger symbols!  Is there a way to easily
  tabulate that?
 
 That would explain why the hi files have also increased many-fold. Is there
 any way to avoid the larger symbols?
 
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Binary bloat in 7.10

2015-04-01 Thread Carter Schonwald
Mind you I'm just trying to come up with theories we can test, I'm not
assigning blame.  :)

I'm not sure how to do the apples to apples comparison, but it sounds like
some sleuthing Is In order.

I dont have a 7.10 setup yet, but if someone can put a tarballed dist build
folder for a 7.10 and the same for 7.8 for some lib that blows up,I'm happy
to try to dig i n.  Or I'll get things setup later this week to do the full
comparison locally.
On Apr 1, 2015 11:12 AM, Edward Z. Yang ezy...@mit.edu wrote:

 Yes, this does seem like a potential culprit, although
 we did do some measurements and I didn't think it was too bad.
 Maybe we were wrong!

 Edward

 Excerpts from Jeremy's message of 2015-04-01 07:26:55 -0700:
  Carter Schonwald wrote
   How much of this might be attributable to longer linker symbol names?
 Ghc
   7.10 object  code does have larger symbols!  Is there a way to easily
   tabulate that?
 
  That would explain why the hi files have also increased many-fold. Is
 there
  any way to avoid the larger symbols?
 
 ___
 Glasgow-haskell-users mailing list
 Glasgow-haskell-users@haskell.org
 http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users

___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users