Reply to comment

Upcoming GCC 4.5 Features

GCC 4.5.0 has frozen and the release has made it to the front page. This is significant to me for 2 main reasons.

  1. Faster Template Compiles
  2. A major side project of mine, ChaiScript suffers from extremely long compile times. Part of the reason is because of 1000's of templates being instantiated for even the simplest project.

    GCC 4.5 has made improvements in template compilation taking what used to be Really Bad (Geometric? Exponential? Not sure, didn't run it myself) to Really Good, or something approximating linear time, to add new template instantiations.

    This one improvement has huge implications for ChaiScript, probably negating the main single complaint that users of ChaiScript have. I would like to also take advantage of improvements in variadic templates, but I'm not sure if it makes sense, for portability reasons, to move ChaiScript there yet.

  3. Profile Mode
  4. Profile mode adds a runtime analysis to your project of common STL uses. The runtime analysis then provides suggestions for simple changes that could greatly affect your code performance. For instance, it may suggest replacing std::vector with std::list if it would be more appropriate.

    The idea would be to compile your application with profile mode enabled, check the output, make the suggested changes, then recompile without profile mode.

    The examples provided are impressive.

Reply

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote>
  • Lines and paragraphs break automatically.
  • You may post PHP code. You should include <?php ?> tags.
  • Web page addresses and e-mail addresses turn into links automatically.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <cpp>. The supported tag styles are: <foo>, [foo]. PHP source code can also be enclosed in <?php ... ?> or <% ... %>.
  • Images can be added to this post.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
11 + 7 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.