Getting this warning on a proffie v3.9 board:
lto-wrapper.exe: warning: using serial compilation of 17 LTRANS jobs
lto-wrapper.exe: note: see the ‘-flto’ option documentation for more information
Proffie 7.14
proffieboard 4.6
Arduino 2.3.4
Smallest code
SDIO Default Speed
Serial+WebUSB
Config from 3.6 to 4.6 is the same
4.6
Sketch uses 504008 bytes (99%) of program storage space. Maximum is 507904 bytes.
3.6 (after downgrade)
Sketch uses 498010 bytes (98%) of program storage space. Maximum is 507904 bytes.
3.6 (on a different PC that hadn’t installed 4.6)
Sketch uses 414200 bytes (81%) of program storage space. Maximum is 507904 bytes.
Tried on 3 different 3.9 hilts each are seeing huge jumps in storage usage and 2 are over 101%. Proffieboard 2.2 boards, all of whom were 99% and under, are now 15k over even on OS6.
From other tests, a small amount of increase is normal, but depending on use case it seems to sometimes be an increase, sometimes a decrease.
A change from 81% to 99% seems strange and abnormal though, which makes me think something weird is going on.
Also, it is not supposed to matter if 4.6 has previously been installed or not. However, it does seem like Arduino sometimes re-uses temporary files, so if you first compile on 4.6 and then move to 3.6, it could still be using some files that were compiled on 4.6, which may explain why the size didn’t go down much when you switched from 4.6 to 3.6. Going the other way could also potentially cause problems. Unfortunately the gcc LTO format is not compatible between versions, so if the files gets mixed up, it could cause LTO to be broken or disabled.
The “LTRANS jobs” warning is normal though. (Although I’ve never seen it as high as 17 before, wonder if that means something?)
Reinstalling arduino probably won’t help.
Arduino keeps a bunch of temporary files somewhere, but you can see them if you enable verbose compilation output in settings. Once you find out where the temporary files are, try zapping them and see if that helps.
I’m not sure what is going on here, because I have not been able to reproduce your results.
I downloaded “Sabine PT1” and “Sabine PT2”, pasted them together into one gigantic 1800 line config file, compiled it and it used 93%.
However, this was with ProffieOS from github, and on linux.
So I tried it with ProffieOS 7.14, on windows, and got 94%. (This was on a pristine windows machine which has never had arduino installed before…)
I mean, 93% is more than 84%, but why are you getting 102%??
Is gcc just making up random stuff now?
Forgot for that one I had modified the prop files which probably account for the lesser memory usage.
So I tried on my never 4.6 but on 3.6 PC with no modified prop files, got to 91%. Tried it again on the 4.6 installed and with the stock prop file, still over 102% in 3 tries.
Indeed.
The weird part is that most people seems to be seeing small increases in size, with some variation based on the configuration. Some people are even seeing decreases in size. However, for some reason, a handful of people are seeing large increases in size, and the fact that I can’t reproduce those increases gives me pause…
Ok, did a full removal, went to 3.6 only and no 4.6. Memory usage about the same as before, minor increase. Update to 4.6 after, huge memory jump as expected. Tried to go back to 3.6, still same memory jump albeit a bit less. Did a full removal again, memory usage about same as pre-4.6 with minor increase, and just leaving at 3.6 for now.