Skip navigation.

exploreopera

| Help

Sign up | Help

Opera Desktop Team

avatar

Profile-Guided Optimizations

, , ,

Today's snapshot is significantly faster on Windows thanks to a technique called profile-guided optimization (PGO). Compiler optimizers sometimes make tweaks that are controversial: they improve performance in what it perceives as the most common case, but make it worse in the perceived least common case. The result can be much better if the compiler is given some hints. That's what PGO is about. With this technique, Opera is compiled twice. The first compilation creates a specially instrumented build that gathers statistics about which code is called and which variables are used most often. The instrumented build loads sites automatically using "URL player", a testing feature available in every Opera build (more information about that in a later blog post). This information is dumped into files and used to produce the final build that's optimized based on the gathered statistics.

Opera uses Microsoft's Visual Studio C++ compiler on Windows and gcc on UNIX and OS X, both of which support PGO. On Windows, setting up PGO builds was straight-forward. PGO in gcc is a different story. On both UNIX and OS X, the first PGO builds crashed. Work continues to resolve this issue.

WARNING: These are development snapshots: they contain the latest changes, but they also have severe known issues, including crashes and data loss situations. In fact, they may not work at all.

Known Issues
  • [Bug 327180] Dragonfly does not work when JavaScript is disabled.
  • [Bug 324985] International installer on Windows is broken when using some languages.
  • [Bug 324377] Save Linked Content As fails sporadically.
  • [Bug 327333] Some SVGs do not paint on Windows.
  • [Bug 328186] Crash when using Master Password.
  • [Bug 324727] The Octoshape plug-in causes Opera to crash on start-up.
  • The tab bar on Mac may mix up favicon/text placement.


Changelog
  • Fix for reloading inline elements.
  • Fixed cookie settings for local server names.
  • Fixed forwarding, replying and redirecting of HTML-only mails.
  • Fixed high CPU usage when subscribed only to the IMAP Inbox folder on GMail.
  • F8 now works again to focus address field when focus is in panels.
  • [Bug 328318] Wand button is fixed again.
  • Fixed extensions in File > Save As and File > Open dialogs.


UNIX specific:
  • Fixed updating of Google Maps when panning
  • CJK fonts should now look better in the default setup


Download
Windows
Windows Classic
Macintosh
UNIX

Getting ready for Dragonfly...

Comments

avatar
thanks for the new snapshot.

By lamarca, # 9. May 2008, 15:15:52

avatar
I like new builds!

By elitegeek, # 9. May 2008, 15:15:55

avatar
What does "reloading inline elements" mean?

By rseiler, # 9. May 2008, 15:20:30

avatar
Wow, thanks :smile: Something new to play with !!

By Irontiger, # 9. May 2008, 15:22:15

avatar
Thank you! :smile:

By grv02, # 9. May 2008, 15:27:16

avatar
news reader does not work since last build, can not login (problem with password?).

By sapito, # 9. May 2008, 15:28:47

avatar
Thanks :up:

By Kanel, # 9. May 2008, 15:36:06

avatar
@rseiler: Reloading images, for instance.

By Junyor, # 9. May 2008, 15:38:24

avatar
pgo - question for windows users (as I'm a Linux'er), do you see the aforementioned performance increase in this build?

By Bill_P, # 9. May 2008, 15:40:26

avatar
Great! Thanks for wand working again. That was serious pain...

By Alnag, # 9. May 2008, 15:40:29

avatar
still cant set opera to delete new cookies on exit.

By lamarca, # 9. May 2008, 15:41:00

avatar
Improved performance as in application load/close times and things of that nature, correct? Should this affect js processing and page load times?

By fearphage, # 9. May 2008, 15:41:37

avatar
fearphage: It's hard to say what parts of the code benefit more from PGO. Page loading times are likely to improve.

By feldgendler, # 9. May 2008, 15:45:25

avatar
@Junyor: OK, though I'm trying to recall which bug that pertains to. Is it the one where not all elements (according to the status bar) finish loading on a page, which has been the subject of some talk lately?

Is PGO mostly a help to JS performance? When FF3 added this, the articles always seemed to mention Sunspider. I did notice that Opera dropped down to about 8.1K in Sunspider for me, when I believe it was just over 10K before, though I hadn't run it that recently before today.

By rseiler, # 9. May 2008, 15:47:55

avatar

Originally posted by fearphage:

Should this affect js processing and page load times?

It did for Firefox, so I guess so.

By Stifu, # 9. May 2008, 15:48:19

avatar
What's with translations going to Yahoo? (Or - translations of inline text seem to be broken.)

By I-Beam, # 9. May 2008, 15:50:55

avatar
The design of http://www.ikea.com/de/de/ ist incorrect. Have a look at the top-right, the search-field is covered by the menu-bar.

By Irontiger, # 9. May 2008, 15:59:12

avatar
I have a problem with youtube videos opening (flash player loads) and then the video stops at 2 seconds. Anyone else seen this? This is not a new issue for me. The video appears to keep caching but i can't play or do anything beyond the 2 second mark. This has been repro'd by me and a coworker.

By fearphage, # 9. May 2008, 16:10:36

avatar
Well done Opera team! Going to check out this build right away.

Also yay to the Gmail fix - so that was the problem of mine.

By eestlane, # 9. May 2008, 16:11:25

avatar
@fearphage: unfortunately, confirmed. opera is having many problems with flash videos in the latest builds. I hope they fix them all soon.

By piroxicam, # 9. May 2008, 16:16:32

avatar
Since previous build here is a bug that make my input right-to-left after I switch language from English to Russian.
Alex, you should experience this too, I believe. :wink:
Should I report this problem or it's known?

By FataL, # 9. May 2008, 16:17:39

avatar
Wow, fast working !! downloading...

By andresruiz, # 9. May 2008, 16:18:40

avatar
UPDATE: I went back 3 builds to 9937 and youtube works and my internal flash problem went away also.

By fearphage, # 9. May 2008, 16:18:48

avatar
FataL: I don't, since I'm a Linux user. :-)

This problem has been known and has been believed to be fixed, but it could have returned. I think you can report a new bug. Please indicate your Windows version and the settings in Control panel -> Regional on the Advanced tab.

By feldgendler, # 9. May 2008, 16:22:55

avatar
The argument of "Execute program" action is strange since build9903.
It is bundled by one argument even if there are two or more arguments.


*Example
[Link Popup Menu]
Item, "argument test" = Execute program,"C:\arg_test.exe","%l %u"

9.50 build9789 and 9.27
1st arg "http://~URL%l~"
2nd arg "http://~URL%u~"

9.50 build9981
1st arg "http://~URL%l~ http://~URL%u~"
2nd arg NULL


The treatment of the argument is strange.


http://fatalerrorjp.blog27.fc2.com/blog-entry-1229.html



はやく修正してくれよ (´ω`)

By panyawo, # 9. May 2008, 16:23:55

avatar
Fixed problem downloading POP mail from bellsouth.net (and other providers).

My POP3 account pop3.wp.pl still isn't working :frown:

By GonsioR, # 9. May 2008, 16:24:59

avatar
New google translate site's, language selection buttons don't work.
http://www.google.com/translate_t

By VarunM, # 9. May 2008, 16:30:45

avatar
Hi,
thank you veeery much for fixing the wand :smile:

By polluxx, # 9. May 2008, 16:31:24

avatar
Bug 328365 are not fixed in this release.
It still crash all time when I try to go to http://foto.no

This is with Windows XP Pro

By ronste, # 9. May 2008, 16:34:01

avatar
:coffee: Thanks for new snaphot. :up:

By intelimac20inch, # 9. May 2008, 16:34:28

avatar
Opera is not syncronizing my notes. I have windows vista sp1 and in the other PC I have windows xp sp3.

By piroxicam, # 9. May 2008, 16:36:48

avatar
Thanks for this new build, most pages seem to load faster.
However my secure web-mail server still times out at the first try, and reloads very slowly at the second try.

By Hansapelle, # 9. May 2008, 16:37:01

avatar
I have not totally understood the introduction of PGO. How does the data get to Opera? Is it sent while using Opera broswer? If so does it get sent at the spot or does is gather data first and send it then.

If it helps making things faster I am all for it...:wizard: :hat:

By EricJH, # 9. May 2008, 16:41:14

avatar
In the last two builds the progress bar has bounced around the screen while loading certain websites. http://www.hardocp.com/ seems to do it every time for me. (I have status bar set to pop-up at bottom)

Links in external programs, ie. thunderbird, just seem to be opening a blank page again.


All on Vista no service pack.

By Ke11ett, # 9. May 2008, 16:44:03

avatar

Originally posted by fearphage:

I have a problem with youtube videos opening (flash player loads) and then the video stops at 2 seconds. Anyone else seen this? This is not a new issue for me. The video appears to keep caching but i can't play or do anything beyond the 2 second mark. This has been repro'd by me and a coworker.

Are you talking about soon after running Opera or after a period of time? I've also seen that, but only after probably >10 hours of use (not that that's an excuse). Most times, however, instead of that problem, the video plays fine but there's no audio. This started sometime shortly before Beta 2.

Originally posted by Ke11ett:

In the last two builds the progress bar has bounced around the screen while loading certain websites. http://www.hardocp.com/ seems to do it every time for me. (I have status bar set to pop-up at bottom)

You're the first person who's seen this happening in Vista. So apparently that's not the only variable. Please post here:
http://my.opera.com/community/forums/topic.dml?id=231725

By rseiler, # 9. May 2008, 16:50:17

avatar
@Ke11ett:

Confirmed, only with statusbar set to pop-up at bottom, running XP SP2

By maake93, # 9. May 2008, 17:01:16

avatar
EricJH: the performance counter data gets collected during the training run of the instrumented build on our build machines. Neither the data nor the instrumented builds leave our office. What you can download is the final result of the PGO optimization: the executable is optimized better than without PGO using the performance data collected.

By feldgendler, # 9. May 2008, 17:03:42

avatar
I think I know where some complications come in, with crashes to instability to plugins and 2.0 issues (oddly enough many things are like web 2.5 now.).

I think the istaller isn't updating ini and registrations well enough in all forms when upgrading over older versions. Maybe it should even delete, re-install dlls; do reg clean ups and kill obsolete ini parts not replace custom search.inis either. All without harming wand and history and notes and bookmarks and all those things.
All in the prog directory of choice not under /Documents and Settings/ unless chosen. The ini thing is better than reg anyway; maybe even this has too much of it in the reg.
This is especially the case with advanced editing. Those of us batch jokies from 3.11 and XT years.
Man I remember the Sinclair.

I'd like to see the Amiga One or something before anti-trust violation is MS's OS on MACs and no more PCs leading to a breakup and MAC Compatible ala current IBM Compatible PCs now called a PC in MAC-MS ads. Macs are PCs you know, just not IBM Compat..

That technical rant aside, a bunch of variations of craputers as, Bill Webb of cexx.org calls it, may very in windows installation and variation as well some not even SP3 updatable. Most requiring endless hardware changes to get Unix or something to run. Come to think of it ReactOS and Wine, Win Compat., beta testers and Opera, wonder how that is.
So Opera reacts differently to dfferent Hardware configerations.

Point is installation process is an issue a big one, and it may even take restart installs and remember, 56k is still a sizable market; lots of privacy lovers.

Scrabuous and (Fluff)editors and Chess have the roughest time in facebook, Tofoo Opening.
I think there's a problem with a lot of install and plugin recognition or running as well, Silverlight included, although MS made it, it would.
Not that Adobe-Macromedia is all great and kind about Opera or Safari use.

By Orff, # 9. May 2008, 17:08:24

avatar
fearphage,, I have no problems watching Youtube videos with the latest builds. I am running the latest version of Flashplayer as well on Windows XP SP2.

By AKA Panama Jack, # 9. May 2008, 17:15:03

avatar
thanks for the new build! it definitely feels snappier and pages do seem to load faster. I can't wait for the PGO linux version! (I always find that the linux version isn't as responsive as the window version).

@feldgendler: It would actually be really cool if we could run the instrumental builds and then use the data collected to build our own personally GP optimised build :D

By rhonnysparks, # 9. May 2008, 17:16:42

avatar
rhonnysparks: I'm currently fighting a serious bug in gcc that causes it to miscompile profile-instrumented code with certain optimizations enabled. This and one more bug in gcc that we've already found a workaround for are the reason why we only released Windows PGO builds so far.

By feldgendler, # 9. May 2008, 17:23:33

avatar
Hmmm..boot time installs of some caponents may improve things.

By Orff, # 9. May 2008, 17:23:48

avatar
Orff: what do you mean?

By feldgendler, # 9. May 2008, 17:25:41

avatar
From mail.com POP3 servers only, and not all the time, THE LAST THREE BUILDS re-download already-downloaded email.

This especially happens with first start first thing in the morning. Not so common throughout the day, and doesn't happen if Opera never closes between downloads.

To avoid this, I have been hiding my "inbox" mail which was already downloaded in another custom folder through the webmail interface on that same server.

Other POP3 servers (earthlink, bluebottle, GMail of course, etc., etc.) behave properly, and the mail.com POP3 does not have this problem in other mail apps - only M2.

By ayespy, # 9. May 2008, 17:28:47

avatar
feldgendler,
current Unix build are not yet compiled using PGO?
As you mention it on the original message, i understood that this build would crash, tho it works quite fine here. ^^
If it's the case, will you update ftp or post another blog-post?

By Hypezor, # 9. May 2008, 17:30:46

avatar
Hypezor: in this snapshot, only the Windows build uses PGO. The problem with the UNIX and Mac builds was that the instrumented builds crashed on startup, making it impossible to run a training session and produce performance counter data usable for optimization.

By feldgendler, # 9. May 2008, 17:37:42

avatar

Originally posted by feldgendler:

Fixed extensions in File > Save As and File > Open dialogs.
No, an extension in Save Dialog when saving websites is still missing: http://my.opera.com/community/forums/findpost.pl?id=2542793
And when saving an image loaded that is opened directly in its own tab, the default file type in the save dialog is still "All files" and not the image type.

So in fact I see no changes concerning the open/save dialogs between 9972 and 9981.

Apart from that PGO sounds cool. :up:

By grogge, # 9. May 2008, 17:44:37

avatar

Originally posted by ronste:

Bug 328365 are not fixed in this release.
http://snapshot.opera.com/faq.html#what-feedback

By fearphage, # 9. May 2008, 17:45:51

avatar
Thanks for info. :smile:
So if we're optimistic: a PGO enabled unix build for next week? ^^

By Hypezor, # 9. May 2008, 17:46:35

avatar
What for a Size for the Windows Classic Build 4.888.888 Bytes. Is this a random event or do you have planned this Size ? Nice long Weekend for all of you.

By slauf, # 9. May 2008, 17:49:18

Write a comment

You must be logged in to write a comment. if you're not a registered member, please sign up.