Page MenuHomeSolus

Update dolphin-emu to October progress report adn enable LTO
ClosedPublic

Authored by Jacalz on Jun 3 2019, 9:13 AM.

Details

Summary

Progress Reports:

Packaging Changes:

  • Add Link Time Optimizations for a slight bump in performance and 12% smaller package size.
Test Plan
  • Testing with Wii Sports, Super Mario Galaxy, New Super Mario Bros and Mario Cart Wii.

Diff Detail

Repository
R654 dolphin-emu
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Jacalz created this revision.Jun 3 2019, 9:13 AM
Jacalz requested review of this revision.Jun 3 2019, 9:13 AM

I want to take advantage of this differential to ask Core Team if we have any policy about optimization flags.

Jacek added a subscriber: Jacek.Jun 10 2019, 5:54 AM
Jacalz updated this revision to Diff 16244.EditedJul 18 2019, 6:52 PM
  • Update against new LLVM-8 updates in unstable
Jacalz updated this revision to Diff 16261.Jul 19 2019, 8:43 AM
  • Move optimizations to make sure that they always are done
Jacalz retitled this revision from Update dolphin-emu to May 2019 progress report and enable optimizations to Update dolphin-emu to May 2019 progress report (with libusb hotfix) and enable optimizations.Jul 19 2019, 8:45 AM
Jacalz edited the summary of this revision. (Show Details)
Jacalz edited the test plan for this revision. (Show Details)
Jacalz updated this revision to Diff 16546.Aug 7 2019, 1:40 PM
  • Update to the June/July progress report
Jacalz retitled this revision from Update dolphin-emu to May 2019 progress report (with libusb hotfix) and enable optimizations to Update dolphin-emu to June/July 2019 progress report and enable optimizations.Aug 7 2019, 6:23 PM
Jacalz edited the summary of this revision. (Show Details)
Jacalz edited the summary of this revision. (Show Details)
Jacalz edited the test plan for this revision. (Show Details)

Built and tested with several games, works perfectly for me.

Built and tested with several games, works perfectly for me.

Wonderful that you are seeing the same results and thanks for the extra testing ๐Ÿ‘

Jacalz updated this revision to Diff 16716.Aug 17 2019, 8:44 AM
  • Correctly rebase on top of LLVM-8 update
Jacalz edited the summary of this revision. (Show Details)Aug 17 2019, 8:46 AM
Jacalz updated this revision to Diff 16971.Aug 31 2019, 7:15 PM
  • Remove optimizations because size increase is not worth it
Jacalz retitled this revision from Update dolphin-emu to June/July 2019 progress report and enable optimizations to Update dolphin-emu to June/July 2019 progress report.Aug 31 2019, 7:15 PM
Jacalz edited the test plan for this revision. (Show Details)
Jacalz edited the summary of this revision. (Show Details)

In general, LTO gives a reduction is size, although often negligible. Why did you remove it as well?

Jacalz added a comment.Sep 1 2019, 5:02 PM

In general, LTO gives a reduction is size, although often negligible. Why did you remove it as well?

I am honestly tired of compiling, testing and repeating it over and over again for this package. I am putting it back to how it was before I started optimizing it. Might (almost certainly) come back to this in the next update revision and see about using LTO...

I am having problems building the latest progress report version due to high memory usage during the build. Any chance we could get it merged in it's current state please?

I am having problems building the latest progress report version due to high memory usage during the build. Any chance we could get it merged in it's current state please?

Did you try to set up a, say, 4 GB swap file? I use it every time I have to build Rust or MAME.

Jacek removed a subscriber: Jacek.Oct 19 2019, 1:37 PM

I am having problems building the latest progress report version due to high memory usage during the build. Any chance we could get it merged in it's current state please?

Did you try to set up a, say, 4 GB swap file? I use it every time I have to build Rust or MAME.

No I haven't tried that. I have 16GB ram and uses up all of it when it's at the second last file in the build. Do you think that it would make a difference?
I will try to build the last monthly update and a new git commit after that to see if it's some new issue in that commit or something else.

livingsilver94 added a comment.EditedOct 22 2019, 6:35 PM

No I haven't tried that. I have 16GB ram and uses up all of it when it's at the second last file in the build. Do you think that it would make a difference?
I will try to build the last monthly update and a new git commit after that to see if it's some new issue in that commit or something else.

If you run out of RAM while compiling, you can also try to reduce the number of jobs. If instead you're linking, then there's nothing to do but increasing virtual memory. Try with a 2 or 4 gigs of swap.

Jacalz updated this revision to Diff 18228.Fri, Nov 8, 8:10 PM
  • Update to october progress report
Jacalz retitled this revision from Update dolphin-emu to June/July 2019 progress report to Update dolphin-emu to October progress report.Fri, Nov 8, 8:26 PM
Jacalz edited the summary of this revision. (Show Details)
Jacalz updated this revision to Diff 18229.Fri, Nov 8, 8:39 PM
  • Add LTO to get 12% lower package size and slightly better performace
Jacalz retitled this revision from Update dolphin-emu to October progress report to Update dolphin-emu to October progress report adn enable LTO.Fri, Nov 8, 8:40 PM
Jacalz edited the summary of this revision. (Show Details)
Jacalz added a comment.EditedFri, Nov 8, 8:43 PM

It would be very cool if this revision could get merged soon. It has been open for a couple months now and it is ready to land.
I just added Link Time Optimizations because they give a slight performance bump (big enough for me to not drop from 60 to 58 fps when opening the Wii menu ) and just over a 12% decrease in package size ๐Ÿ‘

DataDrake accepted this revision.Sun, Nov 10, 2:49 PM
DataDrake added a subscriber: DataDrake.

LGTM. Sorry for the wait!

This revision is now accepted and ready to land.Sun, Nov 10, 2:49 PM
This revision was automatically updated to reflect the committed changes.