compbench-web-devel Mailing List for CompBenchmarks
Brought to you by:
xfred
You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(19) |
Oct
(16) |
Nov
(29) |
Dec
(8) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(38) |
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Frederic T. <xf...@us...> - 2008-07-28 20:28:59
|
Update of /cvsroot/compbench/compbenchmarks-web/lib In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv6820 Modified Files: html.pl Log Message: Expired sessions are removed (since crontab are disabled on SF). Index: html.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/lib/html.pl,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** html.pl 24 Sep 2007 21:29:03 -0000 1.16 --- html.pl 28 Jul 2008 20:28:54 -0000 1.17 *************** *** 31,34 **** --- 31,35 ---- if (!defined($dbh)) { $dbh=sql_connect(); + lt_session_purge($dbh); } |
From: Frederic T. <xf...@us...> - 2007-09-26 15:10:04
|
Update of /cvsroot/compbench/compbenchmarks-web In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv14848 Added Files: favicon.ico Log Message: First import. --- NEW FILE: favicon.ico --- (This appears to be a binary file; contents omitted.) |
From: Frederic T. <xf...@us...> - 2007-09-26 15:07:31
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv13941 Modified Files: browse.cgi Log Message: Warn about results (from <=0.4.0). Index: browse.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/browse.cgi,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** browse.cgi 4 Dec 2006 19:31:58 -0000 1.34 --- browse.cgi 26 Sep 2007 15:07:25 -0000 1.35 *************** *** 774,777 **** --- 774,778 ---- print $req->end_form(); html_tip("<a href='/cgi-bin/browse.cgi?tab=usage'>Help using this form</a><br><a href='/cgi-bin/doc.cgi?tab=benchs'>Benchmark descriptions</a>"); + print "<p>Results shown are based on 0.4.0 and previous releases. Underlaying database is going to be revisited for CompBenchmarks 0.5.0.</p>"; my $cache_host; |
From: Frederic T. <xf...@us...> - 2007-09-25 15:45:56
|
Update of /cvsroot/compbench/compbenchmarks-web/tools In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv16305 Modified Files: validate.pl Log Message: New pages tested. Index: validate.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/tools/validate.pl,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** validate.pl 12 Dec 2006 18:36:38 -0000 1.8 --- validate.pl 25 Sep 2007 15:45:51 -0000 1.9 *************** *** 20,24 **** my $cookie_file = "validate-cookies-$$.txt"; ! my $SERVER_BASE = "http://localhost:80/cgi-bin/"; my $idx = 0; my $verbose = 0; --- 20,24 ---- my $cookie_file = "validate-cookies-$$.txt"; ! my $SERVER_BASE = "http://biomass/cgi-bin/"; my $idx = 0; my $verbose = 0; *************** *** 67,72 **** 'doc.cgi?tab=package&topic=arch', 'doc.cgi?tab=package&topic=start', 'doc.cgi?tab=package&topic=perl-ui', - 'doc.cgi?tab=package&topic=advanced', 'doc.cgi?tab=benchs', 'doc.cgi?tab=benchs&topic=Introduction', --- 67,73 ---- 'doc.cgi?tab=package&topic=arch', 'doc.cgi?tab=package&topic=start', + 'doc.cgi?tab=package&topic=cbm-core', + 'doc.cgi?tab=package&topic=cbm-plan', 'doc.cgi?tab=package&topic=perl-ui', 'doc.cgi?tab=benchs', 'doc.cgi?tab=benchs&topic=Introduction', *************** *** 111,114 **** --- 112,116 ---- $dbh=sql_connect(); + if ($verbose) { print "$value"; |
From: Frederic T. <xf...@us...> - 2007-09-25 15:45:15
|
Update of /cvsroot/compbench/compbenchmarks-web/tools In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv15921 Modified Files: maint-import-doc.pl Log Message: & -> & in .raw files (from compbenchmarks console programs' outputs). Index: maint-import-doc.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/tools/maint-import-doc.pl,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** maint-import-doc.pl 11 Sep 2007 17:19:43 -0000 1.1 --- maint-import-doc.pl 25 Sep 2007 15:45:01 -0000 1.2 *************** *** 129,132 **** --- 129,133 ---- foreach(@output) { + $_=~ s/\&/&/g; $_=~ s/\</</g; $_=~ s/\>/>/g; *************** *** 134,137 **** --- 135,139 ---- $_=~ s/ / /g; } + $sh2 =~ s/\&/&/g; my $F = "../tmp/doc/compbenchmarks-bin-$of"; print "Generating $F\n"; |
From: Frederic T. <xf...@us...> - 2007-09-25 15:44:13
|
Update of /cvsroot/compbench/compbenchmarks-web/tools In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv15866 Modified Files: import-doc.pl Log Message: Fix on doxygen documentation import to make it browseable on-line. Index: import-doc.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/tools/import-doc.pl,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** import-doc.pl 8 Feb 2007 18:33:18 -0000 1.1 --- import-doc.pl 25 Sep 2007 15:44:09 -0000 1.2 *************** *** 3,16 **** use strict; # http://biomass/cgi-bin/doc.cgi?tab=core&version=0.5.0&target=classCBM_1_1Benchmark.html ! my $SRC_DOC_PATH = "/home/fred/workspace/CompBenchmarks++/doc/html"; ! my $VERSION = "0.5.0"; ! my $DEST_DOC_PATH = "/home/fred/workspace/compbenchmarks-web/tmp/doc/$VERSION"; ! my $HTMLFILE_PREFIX = "/cgi-bin/doc.cgi?tab=core&version=$VERSION&target="; sub treat_htmlfile { my $file = shift; my $htmlfile_prefix = $HTMLFILE_PREFIX; ! my $png_prefix = "\/tmp\/doc\/$VERSION"; # $htmlfile_prefix =~ s/\//\\\//g; --- 3,19 ---- use strict; # http://biomass/cgi-bin/doc.cgi?tab=core&version=0.5.0&target=classCBM_1_1Benchmark.html ! push(@INC, "../lib"); ! require "config.pl"; ! our $LT_CBM_VERSION; ! ! my $SRC_DOC_PATH; ! my $DEST_DOC_PATH; ! my $HTMLFILE_PREFIX; sub treat_htmlfile { my $file = shift; my $htmlfile_prefix = $HTMLFILE_PREFIX; ! my $png_prefix = "\/tmp\/doc\/$LT_CBM_VERSION"; # $htmlfile_prefix =~ s/\//\\\//g; *************** *** 36,40 **** push(@out, "$s\n"); } ! open(FD, ">$file") || die ("$!"); print FD @out; close(FD); --- 39,43 ---- push(@out, "$s\n"); } ! open(FD, ">$file") || die ("$! ($file)"); print FD @out; close(FD); *************** *** 75,78 **** --- 78,89 ---- } + $|=1; + config_read("../etc/compbenchmarks-web.conf"); + + $SRC_DOC_PATH = "/home/fred/workspace/CompBenchmarks++/doc/html"; + $DEST_DOC_PATH = "/home/fred/workspace/compbenchmarks-web/tmp/doc/$LT_CBM_VERSION"; + + $HTMLFILE_PREFIX = "/cgi-bin/doc.cgi?tab=core&version=$LT_CBM_VERSION&target="; + treat(); |
From: Frederic T. <xf...@us...> - 2007-09-25 15:42:46
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv15127 Modified Files: doc.cgi Log Message: Link to programs in Installation tab. Index: doc.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/doc.cgi,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** doc.cgi 24 Sep 2007 21:28:03 -0000 1.44 --- doc.cgi 25 Sep 2007 15:42:43 -0000 1.45 *************** *** 311,315 **** <ul> <li>make install</li> ! </ul>"; } --- 311,319 ---- <ul> <li>make install</li> ! </ul> ! <h3>Usage</h3> ! <p> ! At this point, you should take a look to <a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-core'>compbenchmark-core</a> and <a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-plan'>compbenchmark-plan</a> programs. ! </p>"; } |
From: Frederic T. <xf...@us...> - 2007-09-25 15:33:23
|
Update of /cvsroot/compbench/compbenchmarks-web/lib In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv11624 Modified Files: interface.pl Log Message: HTML conformance. Index: interface.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/lib/interface.pl,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** interface.pl 25 Sep 2007 15:26:06 -0000 1.34 --- interface.pl 25 Sep 2007 15:33:20 -0000 1.35 *************** *** 232,236 **** print ${$tabs{$menu}->{tabs}}{$tab}; print "</h1>"; ! if (defined($topics_order)) { print "<h2>$topics->{$topic}</h2>"; } --- 232,237 ---- print ${$tabs{$menu}->{tabs}}{$tab}; print "</h1>"; ! if ((defined($topics_order)) && ! (defined($topics->{$topic}))) { print "<h2>$topics->{$topic}</h2>"; } |
From: Frederic T. <xf...@us...> - 2007-09-25 15:26:16
|
Update of /cvsroot/compbench/compbenchmarks-web/lib In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv8881 Modified Files: interface.pl Log Message: Debugging messages removed. Index: interface.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/lib/interface.pl,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** interface.pl 24 Sep 2007 21:29:03 -0000 1.33 --- interface.pl 25 Sep 2007 15:26:06 -0000 1.34 *************** *** 233,237 **** print "</h1>"; if (defined($topics_order)) { ! print "<h2>$topics->{$topic}XXXX</h2>"; } --- 233,237 ---- print "</h1>"; if (defined($topics_order)) { ! print "<h2>$topics->{$topic}</h2>"; } |
From: Frederic T. <xf...@us...> - 2007-09-24 21:29:07
|
Update of /cvsroot/compbench/compbenchmarks-web/lib In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17384 Modified Files: config.pl html.pl interface.pl session.pl Log Message: HTML conformance (mainly). Index: html.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/lib/html.pl,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** html.pl 30 Nov 2006 18:32:10 -0000 1.15 --- html.pl 24 Sep 2007 21:29:03 -0000 1.16 *************** *** 66,70 **** } ! lt_session_write(); sys_env_init($dbh); --- 66,70 ---- } ! lt_session_write($script); sys_env_init($dbh); Index: session.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/lib/session.pl,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** session.pl 30 Nov 2005 18:17:41 -0000 1.10 --- session.pl 24 Sep 2007 21:29:03 -0000 1.11 *************** *** 11,16 **** --- 11,19 ---- use Digest::MD5 qw(md5_hex); + require "interface.pl"; require "sql.pl"; + our %menus; + our $LT_GCC_BENCH_WWW_COOKIE_PREFIX; our $LT_GCC_SYS_SESSION; *************** *** 165,168 **** --- 168,172 ---- sub lt_session_write { + my $script = shift; print "Content-Type: text/html; charset=utf-8\n"; *************** *** 172,181 **** # -charset=>'iso-8859-1'); ! print start_html(-title=>'CompilerBenchmarks\' Page', -author=>'fr...@li...', -lang=>'UTF-8', -encoding=>'UTF-8', -meta=>{'http-equiv' => 'content-type', ! 'keywords' => 'C/C++ Compiler benchmarks Linux UNIX', 'content' => 'text/html;charset=iso-8859-1'}, -style=>{-src=>["$LT_WEB_CSS/lt.css"]}); --- 176,195 ---- # -charset=>'iso-8859-1'); ! my $title = "CompilerBenchmarks"; ! my $stit = ""; ! ! if (defined($menus{$script})) { ! $stit=${$menus{$script}}[0]; ! } ! ! if (defined($stit)) { ! $title.="::$stit"; ! } ! print start_html(-title=>$title, -author=>'fr...@li...', -lang=>'UTF-8', -encoding=>'UTF-8', -meta=>{'http-equiv' => 'content-type', ! 'keywords' => 'C C++ Compiler benchmarks Linux UNIX', 'content' => 'text/html;charset=iso-8859-1'}, -style=>{-src=>["$LT_WEB_CSS/lt.css"]}); Index: interface.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/lib/interface.pl,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** interface.pl 9 Sep 2007 18:19:51 -0000 1.32 --- interface.pl 24 Sep 2007 21:29:03 -0000 1.33 *************** *** 30,63 **** my $no_rights = 0; ! my %menus = ('browse' => ! ['Results', '', ! 'browse.png' ], ! 'login' => ! ['Login', 'nobody', ! 'login.png' ], ! 'logout' => ! ['Logout', 'user', ! 'logout.png' ] , ! 'index' => ! ['Home page', '', ! 'home.png'], ! 'feedback' => ! ['Feedback', '', ! 'feedback.png' ], ! 'downloads' => ! [ 'Downloads', '', ! 'downloads.png' ], ! 'links' => ! ['Links', '', ! 'links.png' ], 'users' => ! ['Manage users', 'user:users', ! ''], ! 'admin' => ! ['Administration', 'user', ! 'admin.png' ], ! 'doc' => ! ['Documentation', '', ! 'doc.png']); my %tabs = ( 'feedback' => --- 30,63 ---- my $no_rights = 0; ! our %menus = ('browse' => ! ['Results', '', ! 'browse.png' ], ! 'login' => ! ['Login', 'nobody', ! 'login.png' ], ! 'logout' => ! ['Logout', 'user', ! 'logout.png' ] , ! 'index' => ! ['Home page', '', ! 'home.png'], ! 'feedback' => ! ['Feedback', '', ! 'feedback.png' ], ! 'downloads' => ! [ 'Downloads', '', ! 'downloads.png' ], ! 'links' => ! ['Links', '', ! 'links.png' ], 'users' => ! ['Manage users', 'user:users', ! ''], ! 'admin' => ! ['Administration', 'user', ! 'admin.png' ], ! 'doc' => ! ['Documentation', '', ! 'doc.png']); my %tabs = ( 'feedback' => *************** *** 69,73 **** { 'tabs' => { 'motivations' => 'Motivations', 'package' => "User documentation", ! 'core' => "API & Concepts", 'compilers' => "Supported compilers", 'benchs' => 'Supported benchmarks' }, --- 69,73 ---- { 'tabs' => { 'motivations' => 'Motivations', 'package' => "User documentation", ! 'core' => "API & Concepts", 'compilers' => "Supported compilers", 'benchs' => 'Supported benchmarks' }, *************** *** 233,237 **** print "</h1>"; if (defined($topics_order)) { ! print "<h2>$topics->{$topic}</h2>"; } --- 233,237 ---- print "</h1>"; if (defined($topics_order)) { ! print "<h2>$topics->{$topic}XXXX</h2>"; } *************** *** 270,274 **** print "<table width='100%' summary='iface_start' cellpadding='2' cellspacing='0'>"; ! print "<tr><td class='iface_title'>CompBenchmarks</td><td align='right' class='iface_title' valign='top'><img src=\"$LT_WEB_ICONS/logo-24x32.png\" alt=\"Logo\" height='24'></td></tr>"; print "<tr><td valign='top' class='iface_menu'>"; --- 270,277 ---- print "<table width='100%' summary='iface_start' cellpadding='2' cellspacing='0'>"; ! print "<tr>"; ! print "<td class='iface_title' colspan='2'>"; ! print "<table width='100%' summary='top banner'><tr><td>CompBenchmarks</td><td align='right' valign='top'><img src=\"$LT_WEB_ICONS/logo-24x32.png\" alt=\"Logo\" height='24'></td></tr>"; ! print "</table></td></tr>"; print "<tr><td valign='top' class='iface_menu'>"; *************** *** 336,339 **** --- 339,343 ---- sub iface_end { my ($an, $us) = lt_session_opened(); + my @tabs = iface_tabs_for_acls(); my $mod; *************** *** 350,353 **** --- 354,383 ---- print "</td></tr>"; + + # if (@tabs+0) { + # print "<td> </td></tr>"; + + # print "<tr><td> </td>"; + # print "<td colspan='*' align='right'>"; + # my $cur_i = 0; + # my $i = 0; + # my $n = (@tabs + 0); + + # foreach(@tabs) { + # if ($tab eq $_) { + # $cur_i=$i; + # $i++; + # last; + # } + # } + # $i=0; + # if ($cur_i != 0) { + # print "<<<a href='/cgi-bin/?tab=$Previous + + # } + # print " + # print "</td></tr>"; + # } + print "<tr><td class='iface_bottom' colspan='2'>"; Index: config.pl =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/lib/config.pl,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** config.pl 30 Nov 2006 18:31:35 -0000 1.6 --- config.pl 24 Sep 2007 21:29:03 -0000 1.7 *************** *** 28,31 **** --- 28,32 ---- 'lt_gcc_sys_user', 'lt_gcc_sys_session', + 'lt_cbm_version', 'lt_gcc_sys_env'); *************** *** 60,63 **** --- 61,66 ---- our $LT_GCC_SYS_USER; + our $LT_CBM_VERSION; + my $config_read = 0; |
From: Frederic T. <xf...@us...> - 2007-09-24 21:28:39
|
Update of /cvsroot/compbench/compbenchmarks-web/icons In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17309 Added Files: dist-logo-debian.png dist-logo-fedora.png dist-logo-mandriva.png dist-logo-ubuntu.png qt4-plan-empty-tiny.png Log Message: First import. --- NEW FILE: qt4-plan-empty-tiny.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: dist-logo-debian.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: dist-logo-mandriva.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: dist-logo-fedora.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: dist-logo-ubuntu.png --- (This appears to be a binary file; contents omitted.) |
From: Frederic T. <xf...@us...> - 2007-09-24 21:28:14
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv16877 Modified Files: doc.cgi downloads.cgi index.cgi links.cgi Log Message: HTML conformance & improved documentations. Index: index.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/index.cgi,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -d -r1.37 -r1.38 *** index.cgi 13 Sep 2007 18:17:55 -0000 1.37 --- index.cgi 24 Sep 2007 21:28:03 -0000 1.38 *************** *** 20,29 **** print "<p>CompBenchmarks is a benchmarking environment for compilers :</p> <ul> ! <li>It provides the <i>compbenchmarks</i> <a href='/cgi-bin/doc.cgi?tab=package&topic=arch'>package</a> for <a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui#usage-download'>downloading</a> and <a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui#usage-eval'>easing usage</a> of <a href='/cgi-bin/doc.cgi?tab=benchs'>some well-known C/C++ benchmarks</a>,</li> ! <li>The package allows you to specify compilation options and compilers to use, giving results in a common format,</li> <li>This web-site provides a convenient <a href='/cgi-bin/browse.cgi'>browsing formular</a> to analyse imported benchmarks.</li> </ul> <p> ! For now, I've concentrated my efforts on benchmarking of GCC and espacially on its embedded C and C++ compilers on the GNU/Linux (x86) platform, yet support for others languages, compilers or platforms can be added : Cygwin, FreeBSD and tcc compiler are supported.</p> <p>Of course, interrested people are encouraged to :</p> <ul> --- 20,29 ---- print "<p>CompBenchmarks is a benchmarking environment for compilers :</p> <ul> ! <li><a href='/cgi-bin/doc.cgi?tab=package&topic=arch'>Underlaying library</a> prepares stuff for you and eases evaluation of <a href='/cgi-bin/doc.cgi?tab=benchs'>some well-known C/C++ benchmarks</a>,</li> ! <li>It allows you to specify compilation options and compilers to use, giving results in a common (XML) format,</li> <li>This web-site provides a convenient <a href='/cgi-bin/browse.cgi'>browsing formular</a> to analyse imported benchmarks.</li> </ul> <p> ! For now, I've concentrated my efforts on benchmarking of GCC and espacially on its embedded C and C++ compilers on the GNU/Linux x86/x86_64 platforms, yet support for others languages, compilers or platforms can be added : Cygwin, FreeBSD and tcc compiler are supported.</p> <p>Of course, interrested people are encouraged to :</p> <ul> *************** *** 33,38 **** </ul> <p><a href='/cgi-bin/feedback.cgi'>Feedback</a> is welcome.</p> ! <table><tr><td><img src='$LT_WEB_ICONS/qt4-plan-empty-tiny.png' alt='screenshot'></td><td><a href='/cgi-bin/doc.cgi?tab=package&topic=qt4-ui'>Qt-4.x interface</a> is coming !</td></tr></table> ! <p>I'd especially want to thanks <a href='mailto:kstevens715\@charter.net'>Kyle Stevens</a> for his great feedback and for his patience. Thanks again guy !</p>"; } if ($tab eq 'news') { --- 33,40 ---- </ul> <p><a href='/cgi-bin/feedback.cgi'>Feedback</a> is welcome.</p> ! <table summary='qt-4 screenshot info'><tr><td><img src='$LT_WEB_ICONS/qt4-plan-empty-tiny.png' alt='screenshot'></td><td><a href='/cgi-bin/doc.cgi?tab=package&topic=qt4-ui'>Qt-4.x interface</a> is coming !</td></tr></table> ! <p>I'd especially want to thanks <a href='mailto:kstevens715\@charter.net'>Kyle Stevens</a> for his great feedback and for his patience. Thanks again guy !</p> ! <p>Thanks also to #mandrivafr people on irc.freenode.net for their patience and valuable help.</p> ! "; } if ($tab eq 'news') { Index: downloads.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/downloads.cgi,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** downloads.cgi 11 Sep 2007 17:20:35 -0000 1.7 --- downloads.cgi 24 Sep 2007 21:28:03 -0000 1.8 *************** *** 14,17 **** --- 14,19 ---- our $LT_CBM_VERSION; + our $LT_WEB_ICONS; + our $dbh; our $req; *************** *** 22,32 **** print "<h2>Downloads</h2>"; $req->delete_all(); ! html_tip("As proposed packages are about 6 months old, I strongly encourage interested people to <a href='http://sourceforge.net/cvs/?group_id=150828'>checkout/use CVS</a> CompBenchmarks++ module or download <a href='http://sourceforge.net/project/showfiles.php?group_id=150828'>$LT_CBM_VERSION</a>, which brings <b>many</b> new features and bug fixes. Yet, portal is not ready for <a href='/cgi-bin/browse.cgi'>importing your results</a> if you use this package. A <a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=244860'>documentation is available</a> for beta-testers."); print "<h3>Latest CompBenchmarks' packages</h3> <ul> ! <li><a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=166676'>Sources and pre-built x86 binaries</a> - Choose 0.4.0 for stable release - (for <a href='http://www.debian.org'>Sarge</a>, <a href='http://www.unbuntu.org'>Ubuntu</a> >=6.10, and <a href='http://www.opensuse.org'>openSUSE</a> >=10.2)</li> ! <li><a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=204979'>C++ documentations</a></li> </ul> <h3>Misceallenous</h3> <ul> --- 24,56 ---- print "<h2>Downloads</h2>"; $req->delete_all(); ! html_tip("The upcoming Qt-4.x interface is available on <a href='http://sourceforge.net/cvs/?group_id=150828'>CVS repository</a>.<br>Portal is not ready for <a href='/cgi-bin/browse.cgi'>importing results</a> of 0.5.0 branches, GUI has been priorized."); print "<h3>Latest CompBenchmarks' packages</h3> + <p class='tiny'>Note that, for user convenience, a single binary package is providen for each target.<br> + This may not be compatible with distribution policies, which sometimes rely on separated library/program packaging.<br> + Presented logos are links to distribution home pages, and doesn't not reflect any official or approved package status.</p> <ul> ! <li><a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=166676'>Sources and pre-built binaries</a></li> ! <li><a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=244860'>QuickStart Guide</a> (basically for beta-testers) ! <li><a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=204979'>API & Concepts</a> - as HTML tarball (available <a href='/cgi-bin/doc.cgi?tab=core'>here</a> for on-line usage)</li> </ul> + <table class='distri' summary='distribution logos'> + <tr> + <td align='center'> + <a href='http://www.debian.org'><img src='$LT_WEB_ICONS/dist-logo-debian.png' alt='Debian Logo'></a> + </td> + <td> + <a href='http://www.mandriva.com'><img src='$LT_WEB_ICONS/dist-logo-mandriva.png' alt='Mandriva Logo'></a> + </td> + </tr> + <tr> + <td> + <a href='http://fedoraproject.org'><img src='$LT_WEB_ICONS/dist-logo-fedora.png' alt='Fedora Logo'></a> + </td> + <td> + <a href='http://www.ubuntu.com'><img src='$LT_WEB_ICONS/dist-logo-ubuntu.png' alt='Ubuntu Logo'></a> + </td> + </tr> + </table> <h3>Misceallenous</h3> <ul> Index: doc.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/doc.cgi,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -d -r1.43 -r1.44 *** doc.cgi 11 Sep 2007 17:20:35 -0000 1.43 --- doc.cgi 24 Sep 2007 21:28:03 -0000 1.44 *************** *** 242,248 **** <a href='/cgi-bin/doc.cgi?tab=benchs'>some well-known benchmarks and applications</a>. It provides core functionnalities to :</p> <ul> ! <li><a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui#usage-download'>download packages and benchmarks</a></li> ! <li><a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui#usage-compile'>configure and compile</a> them (with arbitrary C/C++ compilers and optimisation options)</li> ! <li><a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui#usage-eval'>evaluate them</a>, and store results in a common format. Results can also be imported in <a href='/cgi-bin/browse.cgi'>official database</a>.</li> </ul>"; print "<h3>Architecture</h3> --- 242,248 ---- <a href='/cgi-bin/doc.cgi?tab=benchs'>some well-known benchmarks and applications</a>. It provides core functionnalities to :</p> <ul> ! <li><a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-core#dom-manage'>download packages and benchmarks</a></li> ! <li><a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-core#dom-bench'>configure and compile</a> them (with arbitrary C/C++ compilers and optimisation options)</li> ! <li><a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-plan'>evaluate them</a>, and store results in a common format. Results can also be imported in <a href='/cgi-bin/browse.cgi'>official database</a>.</li> </ul>"; print "<h3>Architecture</h3> *************** *** 263,267 **** <p>This is the underlaying library for the <i>compbenchmarks</i> package. It holds generic methods to download packages, basic framework to install, optionally patch and configure them, etc. If you are interested in how to use it in your own program or if you want to make a new benchmark/package supported, you'll need to use it.</p>"; ! html_tip("The <a href='/cgi-bin/doc.cgi?tab=core'>technical documention</a> presents all concepts, <a href='/cgi-bin/doc.cgi?tab=core&version=$LT_CBM_VERSION&target=howto_kb.html'>XML knowledge-base</a>, as well as API."); } --- 263,267 ---- <p>This is the underlaying library for the <i>compbenchmarks</i> package. It holds generic methods to download packages, basic framework to install, optionally patch and configure them, etc. If you are interested in how to use it in your own program or if you want to make a new benchmark/package supported, you'll need to use it.</p>"; ! html_tip("The <a href='/cgi-bin/doc.cgi?tab=core'>technical documention</a> presents all concepts, <a href='/cgi-bin/doc.cgi?tab=core&version=$LT_CBM_VERSION&target=howto_kb.html'>XML knowledge-base</a>, as well as API."); } *************** *** 295,299 **** See project's <a href='http://sourceforge.net/project/showfiles.php?group_id=150828'>download area</a> on <a href='http://sourceforge.net'>SourceForge</a>. </p> ! <p>A page also presents a <a href='/cgi-bin/downloads.cgi'>summary of available downloads</a>. </p> <h3>Installation</h3> --- 295,299 ---- See project's <a href='http://sourceforge.net/project/showfiles.php?group_id=150828'>download area</a> on <a href='http://sourceforge.net'>SourceForge</a>. </p> ! <p>A page also details <a href='/cgi-bin/downloads.cgi'>available downloads</a>. </p> <h3>Installation</h3> *************** *** 407,411 **** <li><a href='#dom-bench'>Bench domain</a> (-B) allows installed benchmarks/packages to be evaluated.</li> </ul>"; ! print "<a name='dom-query'><h3>Query samples</h3></a> <p>A simple one to get started; following command shows configuration detected for your computer :</p>"; showbindoc("compbenchmarks-core-qH.raw"); --- 407,411 ---- <li><a href='#dom-bench'>Bench domain</a> (-B) allows installed benchmarks/packages to be evaluated.</li> </ul>"; ! print "<a name='dom-query'></a><h3>Query samples</h3> <p>A simple one to get started; following command shows configuration detected for your computer :</p>"; showbindoc("compbenchmarks-core-qH.raw"); *************** *** 415,429 **** showbindoc("compbenchmarks-core-qip.raw"); print "<p>-i means installed and -p package. You can use -a (for all) instead of -i. You can also query benchmarks with -b, in place of -p.</p>"; ! print "<p>Then, let's play a bit with CompBenchmarks' <a href='/cgi-bin/doc.cgi?tab=core&version=$LT_CBM_VERSION&target=howto_kb.html'>knowledge-base</a> :</p>"; showbindoc("compbenchmarks-core-qacA.raw"); ! print "<a name='dom-manage'><h3>Package management</h3></a> <p>compbenchmarks -qap shows you the list of all supported packages; if you want to install or uninstall one of them, try :</p>"; showbindoc("compbenchmarks-core-mI.raw"); print "<p>And (uninstall) :</p>"; showbindoc("compbenchmarks-core-mU.raw"); ! print "<a name='#dom-bench'><h3>Benchmarking</h3></a> <p>Last, but not least - a benchmark evaluation :</p>"; showbindoc("compbenchmarks-core-B.raw"); ! html_tip("For every benchmark, the higher is the result (<i>Value</i> field), the better is the effisciency."); } if ($topic eq 'cbm-plan') { --- 415,429 ---- showbindoc("compbenchmarks-core-qip.raw"); print "<p>-i means installed and -p package. You can use -a (for all) instead of -i. You can also query benchmarks with -b, in place of -p.</p>"; ! print "<p>Then, let's play a bit with CompBenchmarks' <a href='/cgi-bin/doc.cgi?tab=core&version=$LT_CBM_VERSION&target=howto_kb.html'>knowledge-base</a> :</p>"; showbindoc("compbenchmarks-core-qacA.raw"); ! print "<a name='dom-manage'></a><h3>Package management</h3> <p>compbenchmarks -qap shows you the list of all supported packages; if you want to install or uninstall one of them, try :</p>"; showbindoc("compbenchmarks-core-mI.raw"); print "<p>And (uninstall) :</p>"; showbindoc("compbenchmarks-core-mU.raw"); ! print "<a name='dom-bench'></a><h3>Benchmarking</h3> <p>Last, but not least - a benchmark evaluation :</p>"; showbindoc("compbenchmarks-core-B.raw"); ! html_tip("For every benchmark, the higher is the result (<i>Value</i> field), the better is the effisciency.<br><a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-plan'>compbenchmark-plan</a> allows much more in-depth benchmarking."); } if ($topic eq 'cbm-plan') { *************** *** 440,444 **** <p>You can try this :</p>"; showbindoc("compbenchmarks-plan-tut-run.raw"); ! html_tip("A benchmarking session (like above) can be stopped with Ctrl+C. Resuming is automatic."); } --- 440,444 ---- <p>You can try this :</p>"; showbindoc("compbenchmarks-plan-tut-run.raw"); ! html_tip("A benchmarking session (like above) can be stopped with Ctrl+C. Resuming is automatic.<br>For every benchmark, the higher is the result (<i>Value</i> field), the better is the effisciency. See <a href='/cgi-bin/browse.cgi?tab=usage'>documentation</a> for interpretation."); } Index: links.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/links.cgi,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** links.cgi 9 Sep 2007 18:18:50 -0000 1.9 --- links.cgi 24 Sep 2007 21:28:03 -0000 1.10 *************** *** 30,34 **** print "<ul> <li>The <a href='http://gcc.gnu.org'>GNU Compiler Collection</a></li> ! <li><a href='http://fabrice.bellard.free.fr/qemu/'>QEMU</a>, a generic and open source processor emulator</li> <li><a href='http://www.swig.org/'>SWIG</a>, simplified wrapper and interface generator</li> <li><a href='http://www.doxygen.org'>Doxygen</a>, source code documentation generator tool</li> --- 30,34 ---- print "<ul> <li>The <a href='http://gcc.gnu.org'>GNU Compiler Collection</a></li> ! <li><a href='http://fabrice.bellard.free.fr/qemu/'>QEMU</a>, a generic and open source processor emulator. All binaries are generated in QEMU virtual machines.</li> <li><a href='http://www.swig.org/'>SWIG</a>, simplified wrapper and interface generator</li> <li><a href='http://www.doxygen.org'>Doxygen</a>, source code documentation generator tool</li> |
From: Frederic T. <xf...@us...> - 2007-09-24 21:27:43
|
Update of /cvsroot/compbench/compbenchmarks-web/styles/css In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv16820 Modified Files: lt.css Log Message: Few cosmetic changes. Index: lt.css =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/styles/css/lt.css,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** lt.css 9 Sep 2007 20:31:42 -0000 1.11 --- lt.css 24 Sep 2007 21:27:37 -0000 1.12 *************** *** 196,199 **** --- 196,207 ---- } + p.tiny { + font-size: 8pt; + } + + table.distri { + margin-left: 2.0em; + } + tr.l1 { background-color: #EEEEFF; |
From: Frederic T. <xf...@us...> - 2007-09-13 18:18:00
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv23750 Modified Files: index.cgi Log Message: Link to usage update. Minor english fix. Index: index.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/index.cgi,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** index.cgi 11 Sep 2007 17:20:35 -0000 1.36 --- index.cgi 13 Sep 2007 18:17:55 -0000 1.37 *************** *** 28,32 **** <p>Of course, interrested people are encouraged to :</p> <ul> ! <li><a href='/cgi-bin/downloads.cgi'>download</a> the <i>compbenchmarks</i> suite, <a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui'>run them</a>, and share them (unregistered volonteers can \n<a href='mailto:fred\@linuxtribe.org?subject=CompilerBenchmarks::Results'>use e-mail</a>)\n</li> <li><a href='mailto:fred\@linuxtribe.org?subject=CompilerBenchmarks::New_account'>ask for an account</a> to directly send results to the database</li> <li>or help me in improving either portal or benchmark suite</li> --- 28,32 ---- <p>Of course, interrested people are encouraged to :</p> <ul> ! <li><a href='/cgi-bin/downloads.cgi'>download</a> the <i>compbenchmarks</i> suite, <a href='/cgi-bin/doc.cgi?tab=package&topic=start'>use it</a>, and share results (unregistered volonteers can \n<a href='mailto:fred\@linuxtribe.org?subject=CompilerBenchmarks::Results'>use e-mail</a>)\n</li> <li><a href='mailto:fred\@linuxtribe.org?subject=CompilerBenchmarks::New_account'>ask for an account</a> to directly send results to the database</li> <li>or help me in improving either portal or benchmark suite</li> |
From: Frederic T. <xf...@us...> - 2007-09-11 17:20:38
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17922 Modified Files: doc.cgi downloads.cgi index.cgi Log Message: For SF's TID #141819 : improving documentation. Minor/cosmetic changes. Index: index.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/index.cgi,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** index.cgi 9 Sep 2007 18:18:08 -0000 1.35 --- index.cgi 11 Sep 2007 17:20:35 -0000 1.36 *************** *** 12,15 **** --- 12,16 ---- our $tab; our $CVS_DATE = '$Date$'; + our $LT_WEB_ICONS; html_init('index', undef); *************** *** 32,35 **** --- 33,37 ---- </ul> <p><a href='/cgi-bin/feedback.cgi'>Feedback</a> is welcome.</p> + <table><tr><td><img src='$LT_WEB_ICONS/qt4-plan-empty-tiny.png' alt='screenshot'></td><td><a href='/cgi-bin/doc.cgi?tab=package&topic=qt4-ui'>Qt-4.x interface</a> is coming !</td></tr></table> <p>I'd especially want to thanks <a href='mailto:kstevens715\@charter.net'>Kyle Stevens</a> for his great feedback and for his patience. Thanks again guy !</p>"; } Index: downloads.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/downloads.cgi,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** downloads.cgi 5 Sep 2007 20:41:04 -0000 1.6 --- downloads.cgi 11 Sep 2007 17:20:35 -0000 1.7 *************** *** 12,15 **** --- 12,17 ---- push(@INC, "../lib"); require "html.pl"; + + our $LT_CBM_VERSION; our $dbh; our $req; *************** *** 20,24 **** print "<h2>Downloads</h2>"; $req->delete_all(); ! html_tip("As proposed packages are about 6 months old, I strongly encourage interested people to <a href='http://sourceforge.net/cvs/?group_id=150828'>checkout/use CVS</a> CompBenchmarks++ module or download <a href='http://sourceforge.net/project/showfiles.php?group_id=150828'>0.5.0-BETA2</a>, which brings <b>many</b> new features and bug fixes. Yet, portal is not ready for <a href='/cgi-bin/browse.cgi'>importing your results</a> if you use this package. A <a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=244860'>documentation is available</a> for beta-testers."); print "<h3>Latest CompBenchmarks' packages</h3> --- 22,26 ---- print "<h2>Downloads</h2>"; $req->delete_all(); ! html_tip("As proposed packages are about 6 months old, I strongly encourage interested people to <a href='http://sourceforge.net/cvs/?group_id=150828'>checkout/use CVS</a> CompBenchmarks++ module or download <a href='http://sourceforge.net/project/showfiles.php?group_id=150828'>$LT_CBM_VERSION</a>, which brings <b>many</b> new features and bug fixes. Yet, portal is not ready for <a href='/cgi-bin/browse.cgi'>importing your results</a> if you use this package. A <a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=244860'>documentation is available</a> for beta-testers."); print "<h3>Latest CompBenchmarks' packages</h3> Index: doc.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/doc.cgi,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -d -r1.42 -r1.43 *** doc.cgi 10 Sep 2007 20:24:16 -0000 1.42 --- doc.cgi 11 Sep 2007 17:20:35 -0000 1.43 *************** *** 16,19 **** --- 16,21 ---- our $LT_GCC_BENCH_PACKAGE_BENCH; our $LT_WEB_ICONS; + our $LT_CBM_VERSION; + our $LT_TMP_DIR; our $CVS_DATE = '$Date$'; *************** *** 251,265 **** </td></tr></table>"; print "<a name='arch-ui'></a><h3>High-level user interfaces</h3> ! <p>No GUI is available at the moment; a <a href='/cgi-bin/doc.cgi?tab=package&topic=qt4-ui'>Qt 4.x based interface</a> is in active development.</p>"; print "<a name='arch-core'></a><h3>compbenchmarks-core program</h3> ! <p>This binary program <a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-core'>supports</a> most of configuraiton related actions allowed by the underlaying library that. It may be needed for advanced usages (e.g. for writting a custom wrapper to evaluate benchmarks in a specific maner, not handled by providen user interfaces).</p>"; print "<a name='arch-plan'></a><h3>compbenchmarks-plan program</h3> ! <p>This binary program allows to set up benchmarking plan; that is to say, puting some compilers, options and supported benchmarks together in order to evaluate performances within different contexts automatically.</p>"; print "<a name='arch-lib'></a><h3>libcompbenchmarks</h3> <p>This is the underlaying library for the <i>compbenchmarks</i> package. It holds generic methods to download packages, basic framework to install, optionally patch and configure them, etc. If you are interested in how to use it in your own program or if you want to make a new benchmark/package supported, you'll need to use it.</p>"; ! html_tip("The <a href='/cgi-bin/doc.cgi?tab=core'>technical documention</a> presents all concepts, <a href='/cgi-bin/doc.cgi?tab=core&version=0.5.0-BETA2&target=howto_kb.html'>XML knowledge-base</a>, as well as API."); } --- 253,267 ---- </td></tr></table>"; print "<a name='arch-ui'></a><h3>High-level user interfaces</h3> ! <p>No GUI is available at the moment; a <a href='/cgi-bin/doc.cgi?tab=package&topic=qt4-ui'>Qt 4.x based interface</a> is in active development. There is also a deprecated <a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui'>Perl based interface</a> (using dialog) for 0.4.0 branch.</p>"; print "<a name='arch-core'></a><h3>compbenchmarks-core program</h3> ! <p>This binary program supports <a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-core'>most of configuration related actions</a> allowed by the underlaying library. It may be needed for advanced usages (e.g. for writting a custom wrapper to evaluate benchmarks in a specific maner, not handled by providen user interfaces).</p>"; print "<a name='arch-plan'></a><h3>compbenchmarks-plan program</h3> ! <p>This binary program allows <a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-plan'>to set up benchmarking plan</a>; that is to say, puting some compilers, options and supported benchmarks together in order to evaluate performances within different contexts automatically.</p>"; print "<a name='arch-lib'></a><h3>libcompbenchmarks</h3> <p>This is the underlaying library for the <i>compbenchmarks</i> package. It holds generic methods to download packages, basic framework to install, optionally patch and configure them, etc. If you are interested in how to use it in your own program or if you want to make a new benchmark/package supported, you'll need to use it.</p>"; ! html_tip("The <a href='/cgi-bin/doc.cgi?tab=core'>technical documention</a> presents all concepts, <a href='/cgi-bin/doc.cgi?tab=core&version=$LT_CBM_VERSION&target=howto_kb.html'>XML knowledge-base</a>, as well as API."); } *************** *** 413,417 **** showbindoc("compbenchmarks-core-qip.raw"); print "<p>-i means installed and -p package. You can use -a (for all) instead of -i. You can also query benchmarks with -b, in place of -p.</p>"; ! print "<p>Then, let's play a bit with CompBenchmarks' <a href='/cgi-bin/doc.cgi?tab=core&version=0.5.0-BETA2&target=howto_kb.html'>knowledge-base</a> :</p>"; showbindoc("compbenchmarks-core-qacA.raw"); print "<a name='dom-manage'><h3>Package management</h3></a> --- 415,419 ---- showbindoc("compbenchmarks-core-qip.raw"); print "<p>-i means installed and -p package. You can use -a (for all) instead of -i. You can also query benchmarks with -b, in place of -p.</p>"; ! print "<p>Then, let's play a bit with CompBenchmarks' <a href='/cgi-bin/doc.cgi?tab=core&version=$LT_CBM_VERSION&target=howto_kb.html'>knowledge-base</a> :</p>"; showbindoc("compbenchmarks-core-qacA.raw"); print "<a name='dom-manage'><h3>Package management</h3></a> *************** *** 431,435 **** <p>A plan consists of some plan specific parameters and of some objects called batchs. Each batch references a set of compilers, some benchmarks, and one or more option set. Option set is basically a list of options group. Each option group is a list of options.</p> <p>Each option group is a bunch of compiler options; batch'll take in care in option group individually, and apply all options of a given group at a time whereas option group will be used separatly.</p>"; ! print "<h3>Definied a simple plan</h3> <p>Copy/paste each line individually in a console :</p>"; showbindoc("compbenchmarks-plan-tut.raw"); --- 433,437 ---- <p>A plan consists of some plan specific parameters and of some objects called batchs. Each batch references a set of compilers, some benchmarks, and one or more option set. Option set is basically a list of options group. Each option group is a list of options.</p> <p>Each option group is a bunch of compiler options; batch'll take in care in option group individually, and apply all options of a given group at a time whereas option group will be used separatly.</p>"; ! print "<h3>Defining a simple plan</h3> <p>Copy/paste each line individually in a console :</p>"; showbindoc("compbenchmarks-plan-tut.raw"); |
From: Frederic T. <xf...@us...> - 2007-09-11 17:19:47
|
Update of /cvsroot/compbench/compbenchmarks-web/tools In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17459 Added Files: maint-import-doc.pl maint-info-compilers.pl Makefile verchecker.pl Log Message: First import. --- NEW FILE: maint-info-compilers.pl --- #!/usr/bin/perl -w -I ../../CompBenchmarks++/CBM-PI -I ../../CompBenchmarks++/testing/CBM-PI/ use CBM; use strict; push(@INC, "../../CompBenchmarks++/CBM-PI/t/lib"); # push(@INC, "~/compbenchmarks/share/compbenchmarks/0.5.0/perl"); require "compilers.pl"; my $WWW_LIBCOMPBENCHMARKS_SRCDIR; our %COMPILER_FAKE_INTERFACES; my @SUPPORTED_COMPILERS; # = ('gcc', 'g++'); # tcc my %SUPPORTED_COMPILER_VERSIONS; # = ('gcc' => [ '2.95.x', '3.0.x'], # 'g++' => [ '2.95.x', '3.0.x']); my %SUPPORTED_COMPILER_FAKE; my $WEB_OUTPUT_DIR = "../tmp/doc"; my $DOC_FILE_PREFIX = "compbenchmarks-maint-compilers"; my $sys; sub init_compilers { my $c; my %C; foreach $c (keys %COMPILER_FAKE_INTERFACES) { my $cid; my $ver; if ($COMPILER_FAKE_INTERFACES{$c}=~ /(.*?)-(.*)/) { $cid=$1; $ver=$2; } if ((!defined($cid)) || (!defined($ver))) { print STDERR "Can't find CID and branch for $c\n"; $cid=undef; $ver=undef; next; } if ((!defined($C{$cid})) || (!defined($C{$cid}->{$ver}))) { $C{$cid}->{$ver}=$c; } $cid=undef; $ver=undef; } @SUPPORTED_COMPILERS=keys %C; my $v; foreach $c (@SUPPORTED_COMPILERS) { foreach $v (keys %{$C{$c}}) { push(@{$SUPPORTED_COMPILER_VERSIONS{$c}}, $v); $SUPPORTED_COMPILER_FAKE{"$c-$v"}=$C{$c}->{$v}; } } } sub compiler_info { my $cid = shift; my $ver = shift; my $f = "$WEB_OUTPUT_DIR/$DOC_FILE_PREFIX-zoom-$cid-$ver.html"; my $i; my $cfake = "$WWW_LIBCOMPBENCHMARKS_SRCDIR/CBM-PI/t/reference/" . $SUPPORTED_COMPILER_FAKE{"$cid-$ver"}; my $d1 = "/home/fred/workspace/CompBenchmarks++/testing"; my $d0 = `pwd`; chomp($d0); chdir($d1); my $CS = new CBM::CompilerSelector($sys); my $C = $CS->select($cfake); my $OD = $C->OptionDescriptions(); my $n = $OD->DescriptionNumber(); print " * $cid $ver\n"; chdir($d0); open(FD, ">$f") || die ("Can't open $f for writing."); print FD "<p><a href='/cgi-bin/doc.cgi?tab=compilers'>Back to compiler list</a>.</p>\n"; print FD "<h2>$cid $ver</h2>\n"; my $tr_class = "l1"; print FD "<table summary='$cid-$ver options' class='supcomp'>\n"; if (!$n) { print FD "<tr><td>No option defined in knowledge base yet.</td></tr>"; } for($i=0; $i<$n; $i++) { my $O = $OD->Description($i); print FD "<tr class='$tr_class'><td colspan='2' class='supcomp_head'>" . $O->ShortDescription() . "</td></tr>"; print FD "<tr class='$tr_class'><td class='supcomp_opt'>" . $O->Option() . "</td><td class='supcomp_detail'>" . $O->EditorDescription() . "</td></tr>\n"; if ($tr_class eq 'l1') { $tr_class='l2'; } else { $tr_class='l1'; } } print FD "</table>"; close(FD); } sub compilers_supported { my $c; my $v; my $f = "$WEB_OUTPUT_DIR/$DOC_FILE_PREFIX-summary.html"; print "Generating $f\n"; open(FD, ">$f"); print FD "<p>This list shows explicitly supported compilers, according to internal knownledge base of <i>libcompbenchmarks</i> <b>" . $sys->Version() . "</b>. Newer versions of a given compiler should work and will use the higher's version options defined there.</p>"; print FD "<table summary=\"supported compilers' summary\">\n"; foreach $c (sort @SUPPORTED_COMPILERS) { print FD "<tr><td>$c</td></td><td>"; my $url_c; foreach $v (sort @{$SUPPORTED_COMPILER_VERSIONS{$c}}) { $url_c = $c; $url_c=~ s/\+/%2B/g; print FD "<a href='/cgi-bin/doc.cgi?tab=compilers&cid=$url_c&ver=$v'>$v</a> "; } print FD "</td></tr>\n"; } print FD "</table>\n"; close(FD); } sub compilers_infos { my $c; my $v; foreach $c (@SUPPORTED_COMPILERS) { foreach $v (@{$SUPPORTED_COMPILER_VERSIONS{$c}}) { compiler_info($c, $v); } } } if (!defined($ENV{WWW_LIBCOMPBENCHMARKS_SRCDIR})) { print STDERR "WWW_LIBCOMPBENCHMARKS_SRCDIR environment variable not set.\n"; print STDERR "Use make.\n"; print STDERR "Aborting\n"; exit(1); } else { $WWW_LIBCOMPBENCHMARKS_SRCDIR=$ENV{WWW_LIBCOMPBENCHMARKS_SRCDIR}; } $sys = CBM::Init(); init_compilers(); compilers_supported(); compilers_infos(); $sys->done(); --- NEW FILE: maint-import-doc.pl --- #!/usr/bin/perl -w use strict; # !!! # http://biomass/cgi-bin/doc.cgi?tab=core&version=0.5.0&target=classCBM_1_1Benchmark.html my $SRC_DOC_PATH = "/home/fred/workspace/CompBenchmarks++/doc/html"; my $VERSION = "0.5.0-BETA2"; my $DEST_DOC_PATH = "/home/fred/workspace/compbenchmarks-web/tmp/doc/$VERSION"; my $HTMLFILE_PREFIX = "/cgi-bin/doc.cgi?tab=core&version=$VERSION&target="; my $BIN_PATH = "/home/fred/workspace/CompBenchmarks++/testing"; sub treat_htmlfile { my $file = shift; my $htmlfile_prefix = $HTMLFILE_PREFIX; my $png_prefix = "\/tmp\/doc\/$VERSION"; # $htmlfile_prefix =~ s/\//\\\//g; my @data = `cat $SRC_DOC_PATH/$file`; $file="$DEST_DOC_PATH/$file"; my @out; chomp(@data); my $s; foreach $s (@data) { $s=~ s/\shref=\"(.*?)\.html(.*?)\"/ href=\"$htmlfile_prefix$1.html$2\"/g; #$s=~ s/ href=\"(.*)\.html\"/ href=\"$htmlfile_prefix$1.html\"/g; $s=~ s/^<!DOCTYPE.*>//g; $s=~ s/^<html>.*>//g; $s=~ s/^<title>.*\$//g; $s=~ s/^<link href=\".*\.css\">.*\$//g; $s=~ s/^<\/head>.*$//g; $s=~ s/^<\/body>$//g; $s=~ s/^<\/html>$//g; $s=~ s/src=\"(.*)\.png\"/src=\"$png_prefix\/$1.png\"/g; $s=~ s/src=\"(.*)\.gif\"/src=\"$png_prefix\/$1.gif\"/g; push(@out, "$s\n"); } open(FD, ">$file") || die ("$! $file"); print FD @out; close(FD); } sub treat { my $n; my $i; print "Getting files from $SRC_DOC_PATH... "; my @files = `ls -1 $SRC_DOC_PATH`; $n=(@files+0); print "OK ($n)\n"; # treat_htmlfile("classes.html"); # exit(0); # treat_htmlfile("Benchmark_8h-source.html"); # exit(0); # treat_htmlfile("classCBM_1_1Benchmark.html"); # exit(0); foreach(@files) { chomp; if (/.html$/) { treat_htmlfile($_); } else { if (/\.gif$/) { `cp $SRC_DOC_PATH/$_ ../tmp/doc`; } else { `cp $SRC_DOC_PATH/$_ $DEST_DOC_PATH`; } } $i++; print "Progress : " . sprintf("%0.2f", ($i*100.0)/$n) . "%\r"; } print "\n"; } sub doc_bin { my %docs = ('compbenchmarks-core-h.raw' => { 'directory' => 'compbenchmarks-core', 'command' => './compbenchmarks-core -h'}, 'compbenchmarks-core-qH.raw' => { 'directory' => 'compbenchmarks-core', 'command' => './compbenchmarks-core -qH'}, 'compbenchmarks-core-qcgcc.raw' => { 'directory' => 'compbenchmarks-core', 'command' => './compbenchmarks-core -qc gcc'}, 'compbenchmarks-core-qip.raw' => { 'directory' => 'compbenchmarks-core', 'command' => './compbenchmarks-core -qip'}, 'compbenchmarks-core-qacA.raw' => { 'directory' => 'compbenchmarks-core', 'command' => "./compbenchmarks-core -qa -c gcc -A '-O3 -finline-functions'"}, 'compbenchmarks-core-mI.raw' => { 'directory' => 'compbenchmarks-core', 'before' => "./compbenchmarks-core -m -U linpackc", 'command' => "./compbenchmarks-core -m -I linpackc" }, 'compbenchmarks-core-mU.raw' => { 'directory' => 'compbenchmarks-core', 'before' => "./compbenchmarks-core -m -I linpackc", 'command' => "./compbenchmarks-core -m -U linpackc" }, 'compbenchmarks-core-B.raw' => { 'directory' => 'compbenchmarks-core', 'command' => "./compbenchmarks-core -B linpackc-dp-roll gcc '-O3'"}, ); my $of; foreach $of (keys %docs) { my $cmd_directory = $docs{$of}->{directory}; my $cmd = $docs{$of}->{command}; my $sh = "cd $BIN_PATH"; my $sh2 = "cd $cmd_directory && $cmd"; my $shall = "$sh && $sh2"; if (defined($docs{$of}->{before})) { my $bef = "cd $BIN_PATH && cd $cmd_directory && $docs{$of}->{before}"; `$bef`; } my @output = `$shall`; unlink("dum"); chomp(@output); foreach(@output) { $_=~ s/\</</g; $_=~ s/\>/>/g; $_=~ s/$/\<br\>\n/g; $_=~ s/ / /g; } my $F = "../tmp/doc/compbenchmarks-bin-$of"; print "Generating $F\n"; open(FD, ">$F") || die ("$!"); print FD "# <b>$sh2</b><br>"; foreach(@output) { print FD $_; } close(FD); } } $|=1; # treat(); doc_bin(); --- NEW FILE: verchecker.pl --- #!/usr/bin/perl -w use strict; push (@INC, "../lib"); require "config.pl"; our $LT_CBM_VERSION; use CBM; config_read("../etc/compbenchmarks-web.conf"); my $sys = CBM::Init(); if ($sys->Version() eq $LT_CBM_VERSION) { print "Versions match ($LT_CBM_VERSION)\n"; exit(0); } else { print "Versions mismatch : web-site relies on $LT_CBM_VERSION, CBM is " . $sys->Version() . "\n"; exit(1); } --- NEW FILE: Makefile --- # ----------------------------------------------------------------------------- # $Id: Makefile,v 1.1 2007/09/11 17:19:43 xfred Exp $ # # This is free software. # For details, see the GNU Public License in the COPYING file, or # Look http://www.fsf.org # ----------------------------------------------------------------------------- WWW_LIBCOMPBENCHMARKS_SRCDIR = ../../CompBenchmarks++ WWW_LIBCOMPBENCHMARKS_COMPDIR = $(WWW_LIBCOMPBENCHMARKS_SRCDIR)/testing PERL = ../bin/perl CBM_PERL = export LD_LIBRARY_PATH=$(WWW_LIBCOMPBENCHMARKS_COMPDIR)/.libs && WWW_LIBCOMPBENCHMARKS_SRCDIR=$(WWW_LIBCOMPBENCHMARKS_SRCDIR) $(PERL) -w -I$(WWW_LIBCOMPBENCHMARKS_COMPDIR)/CBM-PI -I$(WWW_LIBCOMPBENCHMARKS_SRCDIR)/CBM-PI -I$(WWW_LIBCOMPBENCHMARKS_COMPDIR)/libcompbenchmarks/share/perl -I$(WWW_LIBCOMPBENCHMARKS_SRCDIR)/CBM-PI/t/lib all: ver maint-compilers maint-import-doc import-doc ver: verchecker.pl $(CBM_PERL) $< maint-compilers: maint-info-compilers.pl $(CBM_PERL) $< maint-import-doc: maint-import-doc.pl $(CBM_PERL) $< import-doc: import-doc.pl $(CBM_PERL) $< |
Update of /cvsroot/compbench/compbenchmarks-web/tmp/doc In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv11744 Removed Files: compbenchmarks-bin-compbenchmarks-core-B.raw compbenchmarks-bin-compbenchmarks-core-h.raw compbenchmarks-bin-compbenchmarks-core-mI.raw compbenchmarks-bin-compbenchmarks-core-mU.raw compbenchmarks-bin-compbenchmarks-core-qacA.raw compbenchmarks-bin-compbenchmarks-core-qcgcc.raw compbenchmarks-bin-compbenchmarks-core-qH.raw compbenchmarks-bin-compbenchmarks-core-qip.raw compbenchmarks-bin-compbenchmarks-plan-tut.raw compbenchmarks-bin-compbenchmarks-plan-tut-run.raw compbenchmarks-maint-compilers-summary.html compbenchmarks-maint-compilers-zoom-g++-2.95.x.html compbenchmarks-maint-compilers-zoom-g++-3.0.x.html compbenchmarks-maint-compilers-zoom-g++-3.1.x.html compbenchmarks-maint-compilers-zoom-gcc-2.95.x.html compbenchmarks-maint-compilers-zoom-gcc-3.0.x.html compbenchmarks-maint-compilers-zoom-gcc-3.1.x.html compbenchmarks-maint-compilers-zoom-tcc-0.9.x.html Log Message: Files will be scpied. --- compbenchmarks-bin-compbenchmarks-core-B.raw DELETED --- --- compbenchmarks-maint-compilers-zoom-gcc-2.95.x.html DELETED --- --- compbenchmarks-bin-compbenchmarks-core-qip.raw DELETED --- --- compbenchmarks-bin-compbenchmarks-plan-tut-run.raw DELETED --- --- compbenchmarks-bin-compbenchmarks-plan-tut.raw DELETED --- --- compbenchmarks-bin-compbenchmarks-core-qacA.raw DELETED --- --- compbenchmarks-maint-compilers-zoom-g++-3.0.x.html DELETED --- --- compbenchmarks-maint-compilers-zoom-gcc-3.1.x.html DELETED --- --- compbenchmarks-bin-compbenchmarks-core-mI.raw DELETED --- --- compbenchmarks-bin-compbenchmarks-core-h.raw DELETED --- --- compbenchmarks-maint-compilers-zoom-tcc-0.9.x.html DELETED --- --- compbenchmarks-maint-compilers-zoom-g++-2.95.x.html DELETED --- --- compbenchmarks-bin-compbenchmarks-core-qcgcc.raw DELETED --- --- compbenchmarks-bin-compbenchmarks-core-qH.raw DELETED --- --- compbenchmarks-bin-compbenchmarks-core-mU.raw DELETED --- --- compbenchmarks-maint-compilers-summary.html DELETED --- --- compbenchmarks-maint-compilers-zoom-gcc-3.0.x.html DELETED --- --- compbenchmarks-maint-compilers-zoom-g++-3.1.x.html DELETED --- |
From: Frederic T. <xf...@us...> - 2007-09-10 20:38:31
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv7731 Modified Files: doc.cgi Log Message: For SF's TID #141819 : Error on OS *libraries*. Index: doc.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/doc.cgi,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** doc.cgi 10 Sep 2007 20:11:36 -0000 1.41 --- doc.cgi 10 Sep 2007 20:24:16 -0000 1.42 *************** *** 248,252 **** <img src='$LT_WEB_ICONS/compbenchmarks-arch.png' alt='Architecture overview'> </td><td valign='top'><p><i>compbenchmarks</i> is splited in two functionnal blocks : normal users should start take a look at <a href='#arch-ui'>high-level user interfaces</a>. For more in-depth management, or if you don't have installed more user friendly applications, the <a href='#arch-core'>compbenchmark-core</a> and <a href='#arch-plan'>compbenchmark-plan</a> program are available. Finaly, the <a href='#arch-lib'>libcompbenchmarks</a> shared library and related API can be used to implement new benchmark/package support or develop your own C++/Perl wrappers (at this time).</p> ! <p>Each supported operating system, benchmark or compiler is handled through a specific, independant, shared library.</p> </td></tr></table>"; print "<a name='arch-ui'></a><h3>High-level user interfaces</h3> --- 248,252 ---- <img src='$LT_WEB_ICONS/compbenchmarks-arch.png' alt='Architecture overview'> </td><td valign='top'><p><i>compbenchmarks</i> is splited in two functionnal blocks : normal users should start take a look at <a href='#arch-ui'>high-level user interfaces</a>. For more in-depth management, or if you don't have installed more user friendly applications, the <a href='#arch-core'>compbenchmark-core</a> and <a href='#arch-plan'>compbenchmark-plan</a> program are available. Finaly, the <a href='#arch-lib'>libcompbenchmarks</a> shared library and related API can be used to implement new benchmark/package support or develop your own C++/Perl wrappers (at this time).</p> ! <p>Each supported benchmark or compiler is handled through a specific, independant, shared library.</p> </td></tr></table>"; print "<a name='arch-ui'></a><h3>High-level user interfaces</h3> |
From: Frederic T. <xf...@us...> - 2007-09-10 20:37:58
|
Update of /cvsroot/compbench/compbenchmarks-web/tmp/doc In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv9658/doc Log Message: Directory /cvsroot/compbench/compbenchmarks-web/tmp/doc added to the repository |
Update of /cvsroot/compbench/compbenchmarks-web/tmp/doc In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv10458 Added Files: compbenchmarks-bin-compbenchmarks-core-B.raw compbenchmarks-bin-compbenchmarks-core-h.raw compbenchmarks-bin-compbenchmarks-core-mI.raw compbenchmarks-bin-compbenchmarks-core-mU.raw compbenchmarks-bin-compbenchmarks-core-qacA.raw compbenchmarks-bin-compbenchmarks-core-qcgcc.raw compbenchmarks-bin-compbenchmarks-core-qH.raw compbenchmarks-bin-compbenchmarks-core-qip.raw compbenchmarks-bin-compbenchmarks-plan-tut.raw compbenchmarks-bin-compbenchmarks-plan-tut-run.raw compbenchmarks-maint-compilers-summary.html compbenchmarks-maint-compilers-zoom-g++-2.95.x.html compbenchmarks-maint-compilers-zoom-g++-3.0.x.html compbenchmarks-maint-compilers-zoom-g++-3.1.x.html compbenchmarks-maint-compilers-zoom-gcc-2.95.x.html compbenchmarks-maint-compilers-zoom-gcc-3.0.x.html compbenchmarks-maint-compilers-zoom-gcc-3.1.x.html compbenchmarks-maint-compilers-zoom-tcc-0.9.x.html Log Message: For SF's TID #141819 : improving documentation. --- NEW FILE: compbenchmarks-bin-compbenchmarks-core-B.raw --- # <b>cd compbenchmarks-core && ./compbenchmarks-core -B linpackc-dp-roll gcc '-O3'</b><br>Benchmark : <br> Configuring linpackc with compiler gcc and options -O3 : OK<br> Building linpackc : <br> Build time : 5.059946<br> OK<br> Benchmarking result(s) : <br> Value=858333<br> buildTime=5.059946<br> execTime=0.027581<br> Testsuite=0<br> Tested=1<br> OK<br> OK<br> --- NEW FILE: compbenchmarks-maint-compilers-zoom-gcc-2.95.x.html --- <p><a href='/cgi-bin/doc.cgi?tab=compilers'>Back to compiler list</a>.</p> <h2>gcc 2.95.x</h2> <table summary='gcc-2.95.x options' class='supcomp'> <tr class='l1'><td colspan='2' class='supcomp_head'>Globally disable compiler optimization</td></tr><tr class='l1'><td class='supcomp_opt'>-O0</td><td class='supcomp_detail'>Do not optimize. This is the default</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Globally optimize for size</td></tr><tr class='l2'><td class='supcomp_opt'>-Os</td><td class='supcomp_detail'>Optimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size. -Os disables the following optimization flags: -falign-functions -falign-jumps -falign-loops -falign-labels -freorder-blocks -fprefetch-loop-arrays If you use multiple -O options, with or without level numbers, the last such option is the one that is effective.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Global optimization, level 1</td></tr><tr class='l1'><td class='supcomp_opt'>-O1</td><td class='supcomp_detail'>Optimize. Optimizing compilation takes somewhat more time, and a lot more memory for a large function. Without `-O', the compiler's goal is to reduce the cost of compilation and to make debugging produce the expected results. Statements are independent: if you stop the program with a breakpoint between statements, you can then assign a new value to any variable or change the program counter to any other statement in the function and get exactly the results you would expect from the source code. Without `-O', only variables declared register are allocated in registers. The resulting compiled code is a little worse than produced by PCC without `-O'. With `-O', the compiler tries to reduce code size and execution time. When you specify `-O', the two options `-fthread-jumps' and `-fdefer-pop' are turned on. On machines that have delay slots, the `-fdelayed-branch' option is turned on. For those machines that can support debugging even without a frame pointer, the `-fomit-frame-pointer' option is turned on. On some machines other flags may also be turned on.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Global optimization, level 2</td></tr><tr class='l2'><td class='supcomp_opt'>-O2</td><td class='supcomp_detail'>Optimize even more than -O1. Nearly all supported optimizations that do not involve a space-speed tradeoff are performed. Loop unrolling and function inlining are not done, for example. As compared to -O, this option increases both compilation time and the performance of the generated code.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Global optimization, level 3</td></tr><tr class='l1'><td class='supcomp_opt'>-O3</td><td class='supcomp_detail'>Optimize yet more. This turns on everything -O2 does, along with also turning on -finline-functions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Always scan through jump instructions in common subexpression elimination</td></tr><tr class='l2'><td class='supcomp_opt'>-fcse-follow-jumps</td><td class='supcomp_detail'>In common subexpression elimination, scan through jump instructions when the target of the jump is not reached by any other path. For example, when CSE encounters an if statement with an else clause, CSE will follow the jump when the condition tested is false.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Always scan through conditionnal jump instructions in common subexpression elimination</td></tr><tr class='l1'><td class='supcomp_opt'>-fcse-skip-blocks</td><td class='supcomp_detail'>This is similar to `-fcse-follow-jumps', but causes CSE to follow jumps which conditionally skip over blocks. When CSE encounters a simple if statement with no else clause, `-fcse-skip-blocks' causes CSE to follow the jump around the body of the if.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Re-run CSE after loop optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-frerun-cse-after-loop</td><td class='supcomp_detail'>Re-run common subexpression elimination after loop optimizations has been performed.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Integrate all simple functions into their callers</td></tr><tr class='l1'><td class='supcomp_opt'>-finline-functions</td><td class='supcomp_detail'>Integrate all simple functions into their callers. The compiler heuristically decides which functions are simple enough to be worth integrating in this way. If all calls to a given function are integrated, and the function is declared static, then GCC normally does not output the function as assembler code in its own right.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Loop optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-fstrength-reduce</td><td class='supcomp_detail'>Perform the optimizations of loop strength reduction and elimination of iteration variables.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Jump shortcuts' detection</td></tr><tr class='l1'><td class='supcomp_opt'>-fthread-jumps</td><td class='supcomp_detail'>Perform optimizations where we check to see if a jump branches to a location where another comparison subsumed by the first is found. If so, the first branch is redirected to either the destination of the second branch or a point immediately following it, depending on whether the condition is known to be true or false.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Global loop unrolling optimization</td></tr><tr class='l2'><td class='supcomp_opt'>-funroll-all-loops</td><td class='supcomp_detail'>Perform the optimization of loop unrolling. This is done for all loops. This usually makes programs run more slowly.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Loop unrolling optimizations</td></tr><tr class='l1'><td class='supcomp_opt'>-funroll-loops</td><td class='supcomp_detail'>Perform the optimization of loop unrolling. This is only done for loops whose number of iterations can be determined at com- pile time or run time.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Try allocating registers that'll be cloberred by function calls</td></tr><tr class='l2'><td class='supcomp_opt'>-fcaller-saves</td><td class='supcomp_detail'>Enable values to be allocated in registers that will be clobbered by function calls, by emitting extra instructions to save and restore the registers around such calls. Such allocation is done only when it seems to result in better code than would otherwise be produced. This option is enabled by default on certain machines, usually those which have no call-preserved registers to use instead.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to increase slot utilisation</td></tr><tr class='l1'><td class='supcomp_opt'>-fdelayed-branch</td><td class='supcomp_detail'>If supported for the target machine, attempt to reorder instructions to exploit instruction slots available after delayed branch instructions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Perform a number of minor optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-fexpensive-optimizations</td><td class='supcomp_detail'>Perform a number of minor optimizations that are relatively expensive.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Violate ANSI or IEEE rules/specifications for optimizing code</td></tr><tr class='l1'><td class='supcomp_opt'>-ffast-math</td><td class='supcomp_detail'>This option allows GCC to violate some ANSI or IEEE rules/specifications in the interest of optimizing code for speed. For example, it allows the compiler to assume arguments to the sqrt function are non-negative numbers. This option should never be turned on by any `-O' option since it can result in incorrect output for programs which depend on an exact implementation of IEEE or ANSI rules/specifications for math functions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Do not store floating point variables in registers</td></tr><tr class='l2'><td class='supcomp_opt'>-ffloat-store</td><td class='supcomp_detail'>Do not store floating point variables in registers. This prevents undesirable excess precision on machines such as the 68000 where the floating registers (of the 68881) keep more precision than a double is supposed to have. For most programs, the excess precision does only good, but a few programs rely on the precise definition of IEEE floating point. Use `-ffloat-store' for such programs.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Force memory address constants to be copied in registers</td></tr><tr class='l1'><td class='supcomp_opt'>-fforce-addr</td><td class='supcomp_detail'>Force memory address constants to be copied into registers before doing arithmetic on them. This may produce better code just as `-fforce-mem' may. I am interested in hearing about the difference this makes.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Force memory operands to be copied into registers</td></tr><tr class='l2'><td class='supcomp_opt'>-fforce-mem</td><td class='supcomp_detail'>Force memory operands to be copied into registers before doing arithmetic on them. This may produce better code by making all memory references potential common subexpressions. When they are not common subexpressions, instruction combination should eliminate the separate register-load. I am interested in hearing about the difference this makes.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Remove frame pointer from register when useless</td></tr><tr class='l1'><td class='supcomp_opt'>-fomit-frame-pointer</td><td class='supcomp_detail'>Don't keep the frame pointer in a register for functions that don't need one. This avoids the instructions to save, set up and restore frame pointers; it also makes an extra register available in many functions. It also makes debugging impossible on most machines. On some machines, such as the Vax, this flag has no effect, because the standard calling sequence automatically handles the frame pointer and nothing is saved by pretending it doesn't exist. The machine-description macro FRAME_POINTER_REQUIRED controls whether a target machine supports this flag.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to eliminate stalls</td></tr><tr class='l2'><td class='supcomp_opt'>-fschedule-insns</td><td class='supcomp_detail'>If supported for the target machine, attempt to reorder instructions to eliminate execution stalls due to required data being unavailable. This helps machines that have slow floating point or memory load instructions by allowing other instructions to be issued until the result of the load or floating point instruction is required.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to eliminate stalls (also watch for registers)</td></tr><tr class='l1'><td class='supcomp_opt'>-fschedule-insns2</td><td class='supcomp_detail'>Similar to `-fschedule-insns', but requests an additional pass of instruction scheduling after register allocation has been done. This is especially useful on machines with a relatively small number of registers and where memory load instructions take more than one cycle.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Generate i486 optimized code</td></tr><tr class='l2'><td class='supcomp_opt'>-m486</td><td class='supcomp_detail'>Control whether or not code is optimized for a 486 instead of an 386. Code generated for a 486 will run on a 386 and vice versa.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Do not use FPU to return values</td></tr><tr class='l1'><td class='supcomp_opt'>-fno-fp-ret-in-387</td><td class='supcomp_detail'>Do not use the FPU registers for return values of functions. The usual calling convention has functions return values of types float and double in an FPU register, even if there is no FPU. The idea is that the operating system should emulate an FPU. The option `-mno-fp-ret-in-387' causes such values to be returned in ordinary CPU registers instead.</td></tr> </table> --- NEW FILE: compbenchmarks-bin-compbenchmarks-core-qip.raw --- # <b>cd compbenchmarks-core && ./compbenchmarks-core -qip</b><br>gzip 1.2.4<br> bzip2 1.0.3<br> nbench 2.2.2<br> scimark2 2.0<br> linpackc 0.1.1<br> benchpplinux 1.1v5<br> --- NEW FILE: compbenchmarks-bin-compbenchmarks-plan-tut-run.raw --- <b>./compbenchmarks-plan --plan-use tut --run</b><br> Restoring plan :<br> Registering benchmark linpackc-dp-roll : OK<br> Registering option set : OK<br> Registering option set opset1 : OK<br> Registering compiler gcc (GCC) 4.1.3 20070812 (prerelease) (Debian 4.1.2-15) : OK<br> OK<br> Running benchmark plan : 0.00%<br> Benchmark :<br> Cleaning linpackc : OK<br> Configuring linpackc with compiler gcc and options -O2 : OK<br> Building linpackc :<br> Build time : 1.962626<br> OK<br> Benchmarking result(s) :<br> Value=858226<br> buildTime=1.962626<br> execTime=0.028892<br> Testsuite=0<br> Tested=1<br> OK<br> OK<br> Registering plan : OK<br> Registering plan : 100.00% - OK<br> Results and settings (*.xml) in directory TUT-benchmark-results .<br> You can now launch compbenchmarks-plan with --store <filename.tar.gz> to keep results.<br> --- NEW FILE: compbenchmarks-bin-compbenchmarks-plan-tut.raw --- <b>cd compbenchmarks-plan</b><br> ./compbenchmarks-plan --plan-register tut --output-directory TUT-benchmark-results --run-number 3<br> ./compbenchmarks-plan --plan-use tut --batch-register b1<br> ./compbenchmarks-plan --plan-use tut --batch-use b1 --compiler-register gcc<br> ./compbenchmarks-plan --plan-use tut --batch-use b1 --benchmark-register linpackc-dp-roll<br> ./compbenchmarks-plan --plan-use tut --batch-use b1 --optionset-register opset1<br> ./compbenchmarks-plan --plan-use tut --batch-use b1 --optionset-use opset1 --options-register oplist1<br> ./compbenchmarks-plan --plan-use tut --batch-use b1 --optionset-use opset1 --options-use oplist1 --option-register '-O2'<br> --- NEW FILE: compbenchmarks-bin-compbenchmarks-core-qacA.raw --- # <b>cd compbenchmarks-core && ./compbenchmarks-core -qa -c gcc -A '-O3 -finline-functions'</b><br>Compiler name : gcc (GCC) 4.1.3 20070812 (prerelease) (Debian 4.1.2-15)<br> Version : 4.1.3 20070812 (prerelease)<br> Language : C<br> Binary : gcc<br> <br> Descriptions from gcc, branch 3.1.x<br> Option(s) analyzed : -O3 -finline-functions<br> <br> Option short descriptions :<br> -O3 : Global optimization, level 3<br> -finline-functions : Integrate all simple functions into their callers<br> <br> Analyze : <br> * Option -finline-functions is implied by -O3<br> <br> --- NEW FILE: compbenchmarks-maint-compilers-zoom-g++-3.0.x.html --- <p><a href='/cgi-bin/doc.cgi?tab=compilers'>Back to compiler list</a>.</p> <h2>g++ 3.0.x</h2> <table summary='g++-3.0.x options' class='supcomp'> <tr class='l1'><td colspan='2' class='supcomp_head'>Globally disable compiler optimization</td></tr><tr class='l1'><td class='supcomp_opt'>-O0</td><td class='supcomp_detail'>Do not optimize. This is the default</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Globally optimize for size</td></tr><tr class='l2'><td class='supcomp_opt'>-Os</td><td class='supcomp_detail'>Optimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size. -Os disables the following optimization flags: -falign-functions -falign-jumps -falign-loops -falign-labels -freorder-blocks -fprefetch-loop-arrays If you use multiple -O options, with or without level numbers, the last such option is the one that is effective.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Global optimization, level 1</td></tr><tr class='l1'><td class='supcomp_opt'>-O1</td><td class='supcomp_detail'>Optimize. Optimizing compilation takes somewhat more time, and a lot more memory for a large function. Without `-O', the compiler's goal is to reduce the cost of compilation and to make debugging produce the expected results. Statements are independent: if you stop the program with a breakpoint between statements, you can then assign a new value to any variable or change the program counter to any other statement in the function and get exactly the results you would expect from the source code. Without `-O', only variables declared register are allocated in registers. The resulting compiled code is a little worse than produced by PCC without `-O'. With `-O', the compiler tries to reduce code size and execution time. When you specify `-O', the two options `-fthread-jumps' and `-fdefer-pop' are turned on. On machines that have delay slots, the `-fdelayed-branch' option is turned on. For those machines that can support debugging even without a frame pointer, the `-fomit-frame-pointer' option is turned on. On some machines other flags may also be turned on.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Global optimization, level 2</td></tr><tr class='l2'><td class='supcomp_opt'>-O2</td><td class='supcomp_detail'>Optimize even more than -O1. Nearly all supported optimizations that do not involve a space-speed tradeoff are performed. Loop unrolling and function inlining are not done, for example. As compared to -O, this option increases both compilation time and the performance of the generated code.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Global optimization, level 3</td></tr><tr class='l1'><td class='supcomp_opt'>-O3</td><td class='supcomp_detail'>Optimize yet more. This turns on everything -O2 does, along with also turning on -finline-functions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Always scan through jump instructions in common subexpression elimination</td></tr><tr class='l2'><td class='supcomp_opt'>-fcse-follow-jumps</td><td class='supcomp_detail'>In common subexpression elimination, scan through jump instructions when the target of the jump is not reached by any other path. For example, when CSE encounters an if statement with an else clause, CSE will follow the jump when the condition tested is false.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Always scan through conditionnal jump instructions in common subexpression elimination</td></tr><tr class='l1'><td class='supcomp_opt'>-fcse-skip-blocks</td><td class='supcomp_detail'>This is similar to `-fcse-follow-jumps', but causes CSE to follow jumps which conditionally skip over blocks. When CSE encounters a simple if statement with no else clause, `-fcse-skip-blocks' causes CSE to follow the jump around the body of the if.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Re-run CSE after loop optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-frerun-cse-after-loop</td><td class='supcomp_detail'>Re-run common subexpression elimination after loop optimizations has been performed.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Integrate all simple functions into their callers</td></tr><tr class='l1'><td class='supcomp_opt'>-finline-functions</td><td class='supcomp_detail'>Integrate all simple functions into their callers. The compiler heuristically decides which functions are simple enough to be worth integrating in this way. If all calls to a given function are integrated, and the function is declared static, then GCC normally does not output the function as assembler code in its own right.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Loop optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-fstrength-reduce</td><td class='supcomp_detail'>Perform the optimizations of loop strength reduction and elimination of iteration variables.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Jump shortcuts' detection</td></tr><tr class='l1'><td class='supcomp_opt'>-fthread-jumps</td><td class='supcomp_detail'>Perform optimizations where we check to see if a jump branches to a location where another comparison subsumed by the first is found. If so, the first branch is redirected to either the destination of the second branch or a point immediately following it, depending on whether the condition is known to be true or false.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Global loop unrolling optimization</td></tr><tr class='l2'><td class='supcomp_opt'>-funroll-all-loops</td><td class='supcomp_detail'>Perform the optimization of loop unrolling. This is done for all loops. This usually makes programs run more slowly.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Loop unrolling optimizations</td></tr><tr class='l1'><td class='supcomp_opt'>-funroll-loops</td><td class='supcomp_detail'>Perform the optimization of loop unrolling. This is only done for loops whose number of iterations can be determined at com- pile time or run time.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Try allocating registers that'll be cloberred by function calls</td></tr><tr class='l2'><td class='supcomp_opt'>-fcaller-saves</td><td class='supcomp_detail'>Enable values to be allocated in registers that will be clobbered by function calls, by emitting extra instructions to save and restore the registers around such calls. Such allocation is done only when it seems to result in better code than would otherwise be produced. This option is enabled by default on certain machines, usually those which have no call-preserved registers to use instead.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to increase slot utilisation</td></tr><tr class='l1'><td class='supcomp_opt'>-fdelayed-branch</td><td class='supcomp_detail'>If supported for the target machine, attempt to reorder instructions to exploit instruction slots available after delayed branch instructions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Perform a number of minor optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-fexpensive-optimizations</td><td class='supcomp_detail'>Perform a number of minor optimizations that are relatively expensive.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Violate ANSI or IEEE rules/specifications for optimizing code</td></tr><tr class='l1'><td class='supcomp_opt'>-ffast-math</td><td class='supcomp_detail'>This option allows GCC to violate some ANSI or IEEE rules/specifications in the interest of optimizing code for speed. For example, it allows the compiler to assume arguments to the sqrt function are non-negative numbers. This option should never be turned on by any `-O' option since it can result in incorrect output for programs which depend on an exact implementation of IEEE or ANSI rules/specifications for math functions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Do not store floating point variables in registers</td></tr><tr class='l2'><td class='supcomp_opt'>-ffloat-store</td><td class='supcomp_detail'>Do not store floating point variables in registers. This prevents undesirable excess precision on machines such as the 68000 where the floating registers (of the 68881) keep more precision than a double is supposed to have. For most programs, the excess precision does only good, but a few programs rely on the precise definition of IEEE floating point. Use `-ffloat-store' for such programs.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Force memory address constants to be copied in registers</td></tr><tr class='l1'><td class='supcomp_opt'>-fforce-addr</td><td class='supcomp_detail'>Force memory address constants to be copied into registers before doing arithmetic on them. This may produce better code just as `-fforce-mem' may. I am interested in hearing about the difference this makes.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Force memory operands to be copied into registers</td></tr><tr class='l2'><td class='supcomp_opt'>-fforce-mem</td><td class='supcomp_detail'>Force memory operands to be copied into registers before doing arithmetic on them. This may produce better code by making all memory references potential common subexpressions. When they are not common subexpressions, instruction combination should eliminate the separate register-load. I am interested in hearing about the difference this makes.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Remove frame pointer from register when useless</td></tr><tr class='l1'><td class='supcomp_opt'>-fomit-frame-pointer</td><td class='supcomp_detail'>Don't keep the frame pointer in a register for functions that don't need one. This avoids the instructions to save, set up and restore frame pointers; it also makes an extra register available in many functions. It also makes debugging impossible on most machines. On some machines, such as the Vax, this flag has no effect, because the standard calling sequence automatically handles the frame pointer and nothing is saved by pretending it doesn't exist. The machine-description macro FRAME_POINTER_REQUIRED controls whether a target machine supports this flag.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to eliminate stalls</td></tr><tr class='l2'><td class='supcomp_opt'>-fschedule-insns</td><td class='supcomp_detail'>If supported for the target machine, attempt to reorder instructions to eliminate execution stalls due to required data being unavailable. This helps machines that have slow floating point or memory load instructions by allowing other instructions to be issued until the result of the load or floating point instruction is required.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to eliminate stalls (also watch for registers)</td></tr><tr class='l1'><td class='supcomp_opt'>-fschedule-insns2</td><td class='supcomp_detail'>Similar to `-fschedule-insns', but requests an additional pass of instruction scheduling after register allocation has been done. This is especially useful on machines with a relatively small number of registers and where memory load instructions take more than one cycle.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>486 Optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-mcpu=i486</td><td class='supcomp_detail'>Assume the defaults for the machine type cpu-type when scheduling instructions. The choices for cpu-type are i386, i486, i586, i686, pentium, pentiumpro, k6, and athlon While picking a specific cpu-type will schedule things appropri- ately for that particular chip, the compiler will not generate any code that does not run on the i386 without the -march=cpu-type option being used. i586 is equivalent to pentium and i686 is equivalent to pentiumpro. k6 is the AMD chip as opposed to the Intel ones.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Pentium optimizations</td></tr><tr class='l1'><td class='supcomp_opt'>-mcpu=pentium</td><td class='supcomp_detail'>Assume the defaults for the machine type cpu-type when scheduling instructions. The choices for cpu-type are i386, i486, i586, i686, pentium, pentiumpro, k6, and athlon While picking a specific cpu-type will schedule things appropri- ately for that particular chip, the compiler will not generate any code that does not run on the i386 without the -march=cpu-type option being used. i586 is equivalent to pentium and i686 is equivalent to pentiumpro. k6 is the AMD chip as opposed to the Intel ones.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Pentium Pro optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-mcpu=pentiumpro</td><td class='supcomp_detail'>Assume the defaults for the machine type cpu-type when scheduling instructions. The choices for cpu-type are i386, i486, i586, i686, pentium, pentiumpro, k6, and athlon While picking a specific cpu-type will schedule things appropri- ately for that particular chip, the compiler will not generate any code that does not run on the i386 without the -march=cpu-type option being used. i586 is equivalent to pentium and i686 is equivalent to pentiumpro. k6 is the AMD chip as opposed to the Intel ones.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>AMD K6 optimizations</td></tr><tr class='l1'><td class='supcomp_opt'>-mcpu=k6</td><td class='supcomp_detail'>Assume the defaults for the machine type cpu-type when scheduling instructions. The choices for cpu-type are i386, i486, i586, i686, pentium, pentiumpro, k6, and athlon While picking a specific cpu-type will schedule things appropri- ately for that particular chip, the compiler will not generate any code that does not run on the i386 without the -march=cpu-type option being used. i586 is equivalent to pentium and i686 is equivalent to pentiumpro. k6 is the AMD chip as opposed to the Intel ones.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Perform optimizations in static single assignment form</td></tr><tr class='l2'><td class='supcomp_opt'>-fssa</td><td class='supcomp_detail'>Perform optimizations in static single assignment form. Each function's flow graph is translated into SSA form, optimizations are performed, and the flow graph is translated back from SSA form. Users should not specify this option, since it is not yet ready for production use. According to -fdce description, this is probably an experimental feature.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Dead-code elimination in SSA form</td></tr><tr class='l1'><td class='supcomp_opt'>-fdce</td><td class='supcomp_detail'>Perform dead-code elimination in SSA form. Requires -fssa. Like -fssa, this is an experimental feature.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Disable start of functions offset alignment</td></tr><tr class='l2'><td class='supcomp_opt'>-falign-functions=1</td><td class='supcomp_detail'>Align the start of functions to the next power-of-two greater than n, skipping up to n bytes. For instance, -falign-functions=32 aligns functions to the next 32-byte boundary, but -falign-functions=24 would align to the next 32-byte boundary only if this can be done by skipping 23 bytes or less. -fno-align-functions and -falign-functions=1 are equivalent and mean that functions will not be aligned. Some assemblers only support this flag when n is a power of two; in that case, it is rounded up. If n is not specified, use a machine-dependent default.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Force start of functions alignment to machine default</td></tr><tr class='l1'><td class='supcomp_opt'>-falign-functions</td><td class='supcomp_detail'>Align the start of functions to the next power-of-two greater than n, skipping up to n bytes. For instance, -falign-functions=32 aligns functions to the next 32-byte boundary, but -falign-functions=24 would align to the next 32-byte boundary only if this can be done by skipping 23 bytes or less. -fno-align-functions and -falign-functions=1 are equivalent and mean that functions will not be aligned. Some assemblers only support this flag when n is a power of two; in that case, it is rounded up. If n is not specified, use a machine-dependent default.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Disable branch targets alignment</td></tr><tr class='l2'><td class='supcomp_opt'>-falign-labels=1</td><td class='supcomp_detail'>Align all branch targets to a power-of-two boundary, skipping up to n bytes like -falign-functions. This option can easily make code slower, because it must insert dummy operations for when the branch target is reached in the usual flow of the code. If -falign-loops or -falign-jumps are applicable and are greater than this value, then their values are used instead. If n is not specified, use a machine-dependent default which is very likely to be 1, meaning no alignment.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Align branch targets on machine-default boundaries</td></tr><tr class='l1'><td class='supcomp_opt'>-falign-labels</td><td class='supcomp_detail'>Align all branch targets to a power-of-two boundary, skipping up to n bytes like -falign-functions. This option can easily make code slower, because it must insert dummy operations for when the branch target is reached in the usual flow of the code. If -falign-loops or -falign-jumps are applicable and are greater than this value, then their values are used instead. If n is not specified, use a machine-dependent default which is very likely to be 1, meaning no alignment.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Disable loops alignment</td></tr><tr class='l2'><td class='supcomp_opt'>-falign-loops=1</td><td class='supcomp_detail'>Align loops to a power-of-two boundary, skipping up to n bytes like -falign-functions. The hope is that the loop will be executed many times, which will make up for any execution of the dummy opera- tions. If n is not specified, use a machine-dependent default.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Set loops alignment to machine-default</td></tr><tr class='l1'><td class='supcomp_opt'>-falign-loops</td><td class='supcomp_detail'>Align loops to a power-of-two boundary, skipping up to n bytes like -falign-functions. The hope is that the loop will be executed many times, which will make up for any execution of the dummy opera- tions. If n is not specified, use a machine-dependent default.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Disable branch target alignment</td></tr><tr class='l2'><td class='supcomp_opt'>-falign-jumps=1</td><td class='supcomp_detail'>Align branch targets to a power-of-two boundary, for branch targets where the targets can only be reached by jumping, skipping up to n bytes like -falign-functions. In this case, no dummy operations need be executed. If n is not specified, use a machine-dependent default.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Enable target branch default alignment</td></tr><tr class='l1'><td class='supcomp_opt'>-falign-jumps</td><td class='supcomp_detail'>Align branch targets to a power-of-two boundary, for branch targets where the targets can only be reached by jumping, skipping up to n bytes like -falign-functions. In this case, no dummy operations need be executed. If n is not specified, use a machine-dependent default.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Forces all general-induction variables in loops to be strength-reduced.</td></tr><tr class='l2'><td class='supcomp_opt'>-freduce-all-givs</td><td class='supcomp_detail'>Forces all general-induction variables in loops to be strength- reduced. Note: When compiling programs written in Fortran, -fmove-all-movables and -freduce-all-givs are enabled by default when you use the optimizer. These options may generate better or worse code; results are highly dependent on the structure of loops within the source code. These two options are intended to be removed someday, once they have helped determine the efficacy of various approaches to improving loop optimizations. Please let us (gc...@gc... and fo...@gn...) know how use of these options affects the performance of your production code. We're very interested in code that runs slower when these options are enabled.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Assume the strictest aliasing rules to be applicable</td></tr><tr class='l1'><td class='supcomp_opt'>-fstrict-aliasing</td><td class='supcomp_detail'>Allows the compiler to assume the strictest aliasing rules applicable to the language being compiled. For C (and C++), this activates optimizations based on the type of expressions. In particular, an object of one type is assumed never to reside at the same address as an object of a different type, unless the types are almost the same. For example, an "unsigned int" can alias an "int", but not a "void*" or a "double". A character type may alias any other type.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Global common subexpression elimination pass</td></tr><tr class='l2'><td class='supcomp_opt'>-fgcse</td><td class='supcomp_detail'>Perform a global common subexpression elimination pass. This pass also performs global constant and copy propagation.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Attempt to avoid false dependencies in scheduled code</td></tr><tr class='l1'><td class='supcomp_opt'>-frename-registers</td><td class='supcomp_detail'>Attempt to avoid false dependencies in scheduled code by making use of registers left over after register allocation. This optimization will most benefit processors with lots of registers. It can, however, make debugging impossible, since variables will no longer stay in a ``home register''.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Instrument arcs during compilation</td></tr><tr class='l2'><td class='supcomp_opt'>-fprofile-arcs</td><td class='supcomp_detail'>Here's GCC 3.1.x help (3.0.x's not given) : Instrument arcs during compilation to generate coverage data or for profile-directed block ordering. During execution the program records how many times each branch is executed and how many times it is taken. When the compiled program exits it saves this data to a file called sourcename.da for each source file. For profile-directed block ordering, compile the program with -fprofile-arcs plus optimization and code generation options, generate the arc profile information by running the program on a selected workload, and then compile the program again with the same optimization and code generation options plus -fbranch-probabilities. The other use of -fprofile-arcs is for use with "gcov", when it is used with the -ftest-coverage option. GCC supports two methods of determining code coverage: the options that support "gcov", and options -a and -ax, which write information to text files. The options that support "gcov" do not need to instrument every arc in the program, so a program compiled with them runs faster than a program compiled with -a, which adds instrumentation code to every basic block in the program. The tradeoff: since "gcov" does not have execution counts for all branches, it must start with the execution counts for the instrumented branches, and then iterate over the program flow graph until the entire graph has been solved. Hence, "gcov" runs a little more slowly than a program which uses information from -a and -ax. With -fprofile-arcs, for each function of your program GCC creates a program flow graph, then finds a spanning tree for the graph. Only arcs that are not on the spanning tree have to be instrumented: the compiler adds code to count the number of times that these arcs are executed. When an arc is the only exit or only entrance to a block, the instrumentation code can be added to the block; otherwise, a new basic block must be created to hold the instrumentation code. This option makes it possible to estimate branch probabilities and to calculate basic block execution counts. In general, basic block execution counts as provided by -a do not give enough information to estimate all branch probabilities.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Optimizations based on path guessing</td></tr><tr class='l1'><td class='supcomp_opt'>-fbranch-probabilities</td><td class='supcomp_detail'>After running a program compiled with -fprofile-arcs, you can compile it a second time using -fbranch-probabilities, to improve optimizations based on guessing the path a branch might take.</td></tr> </table> --- NEW FILE: compbenchmarks-maint-compilers-zoom-gcc-3.1.x.html --- <p><a href='/cgi-bin/doc.cgi?tab=compilers'>Back to compiler list</a>.</p> <h2>gcc 3.1.x</h2> <table summary='gcc-3.1.x options' class='supcomp'> <tr class='l1'><td colspan='2' class='supcomp_head'>Globally disable compiler optimization</td></tr><tr class='l1'><td class='supcomp_opt'>-O0</td><td class='supcomp_detail'>Do not optimize. This is the default</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Globally optimize for size</td></tr><tr class='l2'><td class='supcomp_opt'>-Os</td><td class='supcomp_detail'>Optimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size. -Os disables the following optimization flags: -falign-functions -falign-jumps -falign-loops -falign-labels -freorder-blocks -fprefetch-loop-arrays If you use multiple -O options, with or without level numbers, the last such option is the one that is effective.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Global optimization, level 1</td></tr><tr class='l1'><td class='supcomp_opt'>-O1</td><td class='supcomp_detail'>Optimize. Optimizing compilation takes somewhat more time, and a lot more memory for a large function. Without `-O', the compiler's goal is to reduce the cost of compilation and to make debugging produce the expected results. Statements are independent: if you stop the program with a breakpoint between statements, you can then assign a new value to any variable or change the program counter to any other statement in the function and get exactly the results you would expect from the source code. Without `-O', only variables declared register are allocated in registers. The resulting compiled code is a little worse than produced by PCC without `-O'. With `-O', the compiler tries to reduce code size and execution time. When you specify `-O', the two options `-fthread-jumps' and `-fdefer-pop' are turned on. On machines that have delay slots, the `-fdelayed-branch' option is turned on. For those machines that can support debugging even without a frame pointer, the `-fomit-frame-pointer' option is turned on. On some machines other flags may also be turned on.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Global optimization, level 2</td></tr><tr class='l2'><td class='supcomp_opt'>-O2</td><td class='supcomp_detail'>Optimize even more than -O1. Nearly all supported optimizations that do not involve a space-speed tradeoff are performed. Loop unrolling and function inlining are not done, for example. As compared to -O, this option increases both compilation time and the performance of the generated code.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Global optimization, level 3</td></tr><tr class='l1'><td class='supcomp_opt'>-O3</td><td class='supcomp_detail'>Optimize yet more. This turns on everything -O2 does, along with also turning on -finline-functions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Always scan through jump instructions in common subexpression elimination</td></tr><tr class='l2'><td class='supcomp_opt'>-fcse-follow-jumps</td><td class='supcomp_detail'>In common subexpression elimination, scan through jump instructions when the target of the jump is not reached by any other path. For example, when CSE encounters an if statement with an else clause, CSE will follow the jump when the condition tested is false.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Always scan through conditionnal jump instructions in common subexpression elimination</td></tr><tr class='l1'><td class='supcomp_opt'>-fcse-skip-blocks</td><td class='supcomp_detail'>This is similar to `-fcse-follow-jumps', but causes CSE to follow jumps which conditionally skip over blocks. When CSE encounters a simple if statement with no else clause, `-fcse-skip-blocks' causes CSE to follow the jump around the body of the if.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Re-run CSE after loop optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-frerun-cse-after-loop</td><td class='supcomp_detail'>Re-run common subexpression elimination after loop optimizations has been performed.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Integrate all simple functions into their callers</td></tr><tr class='l1'><td class='supcomp_opt'>-finline-functions</td><td class='supcomp_detail'>Integrate all simple functions into their callers. The compiler heuristically decides which functions are simple enough to be worth integrating in this way. If all calls to a given function are integrated, and the function is declared static, then GCC normally does not output the function as assembler code in its own right.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Loop optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-fstrength-reduce</td><td class='supcomp_detail'>Perform the optimizations of loop strength reduction and elimination of iteration variables.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Jump shortcuts' detection</td></tr><tr class='l1'><td class='supcomp_opt'>-fthread-jumps</td><td class='supcomp_detail'>Perform optimizations where we check to see if a jump branches to a location where another comparison subsumed by the first is found. If so, the first branch is redirected to either the destination of the second branch or a point immediately following it, depending on whether the condition is known to be true or false.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Global loop unrolling optimization</td></tr><tr class='l2'><td class='supcomp_opt'>-funroll-all-loops</td><td class='supcomp_detail'>Perform the optimization of loop unrolling. This is done for all loops. This usually makes programs run more slowly.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Loop unrolling optimizations</td></tr><tr class='l1'><td class='supcomp_opt'>-funroll-loops</td><td class='supcomp_detail'>Perform the optimization of loop unrolling. This is only done for loops whose number of iterations can be determined at com- pile time or run time.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Try allocating registers that'll be cloberred by function calls</td></tr><tr class='l2'><td class='supcomp_opt'>-fcaller-saves</td><td class='supcomp_detail'>Enable values to be allocated in registers that will be clobbered by function calls, by emitting extra instructions to save and restore the registers around such calls. Such allocation is done only when it seems to result in better code than would otherwise be produced. This option is enabled by default on certain machines, usually those which have no call-preserved registers to use instead.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to increase slot utilisation</td></tr><tr class='l1'><td class='supcomp_opt'>-fdelayed-branch</td><td class='supcomp_detail'>If supported for the target machine, attempt to reorder instructions to exploit instruction slots available after delayed branch instructions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Perform a number of minor optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-fexpensive-optimizations</td><td class='supcomp_detail'>Perform a number of minor optimizations that are relatively expensive.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Violate ANSI or IEEE rules/specifications for optimizing code</td></tr><tr class='l1'><td class='supcomp_opt'>-ffast-math</td><td class='supcomp_detail'>This option allows GCC to violate some ANSI or IEEE rules/specifications in the interest of optimizing code for speed. For example, it allows the compiler to assume arguments to the sqrt function are non-negative numbers. This option should never be turned on by any `-O' option since it can result in incorrect output for programs which depend on an exact implementation of IEEE or ANSI rules/specifications for math functions.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Do not store floating point variables in registers</td></tr><tr class='l2'><td class='supcomp_opt'>-ffloat-store</td><td class='supcomp_detail'>Do not store floating point variables in registers. This prevents undesirable excess precision on machines such as the 68000 where the floating registers (of the 68881) keep more precision than a double is supposed to have. For most programs, the excess precision does only good, but a few programs rely on the precise definition of IEEE floating point. Use `-ffloat-store' for such programs.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Force memory address constants to be copied in registers</td></tr><tr class='l1'><td class='supcomp_opt'>-fforce-addr</td><td class='supcomp_detail'>Force memory address constants to be copied into registers before doing arithmetic on them. This may produce better code just as `-fforce-mem' may. I am interested in hearing about the difference this makes.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Force memory operands to be copied into registers</td></tr><tr class='l2'><td class='supcomp_opt'>-fforce-mem</td><td class='supcomp_detail'>Force memory operands to be copied into registers before doing arithmetic on them. This may produce better code by making all memory references potential common subexpressions. When they are not common subexpressions, instruction combination should eliminate the separate register-load. I am interested in hearing about the difference this makes.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Remove frame pointer from register when useless</td></tr><tr class='l1'><td class='supcomp_opt'>-fomit-frame-pointer</td><td class='supcomp_detail'>Don't keep the frame pointer in a register for functions that don't need one. This avoids the instructions to save, set up and restore frame pointers; it also makes an extra register available in many functions. It also makes debugging impossible on most machines. On some machines, such as the Vax, this flag has no effect, because the standard calling sequence automatically handles the frame pointer and nothing is saved by pretending it doesn't exist. The machine-description macro FRAME_POINTER_REQUIRED controls whether a target machine supports this flag.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to eliminate stalls</td></tr><tr class='l2'><td class='supcomp_opt'>-fschedule-insns</td><td class='supcomp_detail'>If supported for the target machine, attempt to reorder instructions to eliminate execution stalls due to required data being unavailable. This helps machines that have slow floating point or memory load instructions by allowing other instructions to be issued until the result of the load or floating point instruction is required.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Attempt to reorder instructions to eliminate stalls (also watch for registers)</td></tr><tr class='l1'><td class='supcomp_opt'>-fschedule-insns2</td><td class='supcomp_detail'>Similar to `-fschedule-insns', but requests an additional pass of instruction scheduling after register allocation has been done. This is especially useful on machines with a relatively small number of registers and where memory load instructions take more than one cycle.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>486 Optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-mcpu=i486</td><td class='supcomp_detail'>Assume the defaults for the machine type cpu-type when scheduling instructions. The choices for cpu-type are i386, i486, i586, i686, pentium, pentiumpro, k6, and athlon While picking a specific cpu-type will schedule things appropri- ately for that particular chip, the compiler will not generate any code that does not run on the i386 without the -march=cpu-type option being used. i586 is equivalent to pentium and i686 is equivalent to pentiumpro. k6 is the AMD chip as opposed to the Intel ones.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Pentium optimizations</td></tr><tr class='l1'><td class='supcomp_opt'>-mcpu=pentium</td><td class='supcomp_detail'>Assume the defaults for the machine type cpu-type when scheduling instructions. The choices for cpu-type are i386, i486, i586, i686, pentium, pentiumpro, k6, and athlon While picking a specific cpu-type will schedule things appropri- ately for that particular chip, the compiler will not generate any code that does not run on the i386 without the -march=cpu-type option being used. i586 is equivalent to pentium and i686 is equivalent to pentiumpro. k6 is the AMD chip as opposed to the Intel ones.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Pentium Pro optimizations</td></tr><tr class='l2'><td class='supcomp_opt'>-mcpu=pentiumpro</td><td class='supcomp_detail'>Assume the defaults for the machine type cpu-type when scheduling instructions. The choices for cpu-type are i386, i486, i586, i686, pentium, pentiumpro, k6, and athlon While picking a specific cpu-type will schedule things appropri- ately for that particular chip, the compiler will not generate any code that does not run on the i386 without the -march=cpu-type option being used. i586 is equivalent to pentium and i686 is equivalent to pentiumpro. k6 is the AMD chip as opposed to the Intel ones.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>AMD K6 optimizations</td></tr><tr class='l1'><td class='supcomp_opt'>-mcpu=k6</td><td class='supcomp_detail'>Assume the defaults for the machine type cpu-type when scheduling instructions. The choices for cpu-type are i386, i486, i586, i686, pentium, pentiumpro, k6, and athlon While picking a specific cpu-type will schedule things appropri- ately for that particular chip, the compiler will not generate any code that does not run on the i386 without the -march=cpu-type option being used. i586 is equivalent to pentium and i686 is equivalent to pentiumpro. k6 is the AMD chip as opposed to the Intel ones.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Perform optimizations in static single assignment form</td></tr><tr class='l2'><td class='supcomp_opt'>-fssa</td><td class='supcomp_detail'>Perform optimizations in static single assignment form. Each function's flow graph is translated into SSA form, optimizations are performed, and the flow graph is translated back from SSA form. Users should not specify this option, since it is not yet ready for production use. According to -fdce description, this is probably an experimental feature.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Dead-code elimination in SSA form</td></tr><tr class='l1'><td class='supcomp_opt'>-fdce</td><td class='supcomp_detail'>Perform dead-code elimination in SSA form. Requires -fssa. Like -fssa, this is an experimental feature.</td></tr> <tr class='l2'><td colspan='2' class='supcomp_head'>Disable start of functions offset alignment</td></tr><tr class='l2'><td class='supcomp_opt'>-falign-functions=1</td><td class='supcomp_detail'>Align the start of functions to the next power-of-two greater than n, skipping up to n bytes. For instance, -falign-functions=32 aligns functions to the next 32-byte boundary, but -falign-functions=24 would align to the next 32-byte boundary only if this can be done by skipping 23 bytes or less. -fno-align-functions and -falign-functions=1 are equivalent and mean that functions will not be aligned. Some assemblers only support this flag when n is a power of two; in that case, it is rounded up. If n is not specified, use a machine-dependent default.</td></tr> <tr class='l1'><td colspan='2' class='supcomp_head'>Force start of functions alignment to machine default</td></tr><tr class='l1'><td class='supcomp_opt'>-falign-functions</td><td class='supcomp_detail'>Align the start of functions to the next power-of-two greater than n, skipping up to n bytes. For instance, -falign-functions=32 aligns functions to the next 32-byte boundary, but -falign-functions=24 would align to the next 32-byte boundary only if this ca... [truncated message content] |
From: Frederic T. <xf...@us...> - 2007-09-10 20:24:31
|
Update of /cvsroot/compbench/compbenchmarks-web/icons In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv7762 Modified Files: compbenchmarks-arch.png Log Message: For SF's TID #141819 : Error on OS *libraries*. Index: compbenchmarks-arch.png =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/icons/compbenchmarks-arch.png,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 Binary files /tmp/cvsJ3XFov and /tmp/cvsvxkZJA differ |
From: Frederic T. <xf...@us...> - 2007-09-10 20:11:40
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv2728 Modified Files: doc.cgi Log Message: For SF's TID #141819 : improving documentation (few words about Qt 4.x UI). Index: doc.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/doc.cgi,v retrieving revision 1.40 retrieving revision 1.41 diff -C2 -d -r1.40 -r1.41 *** doc.cgi 10 Sep 2007 15:46:15 -0000 1.40 --- doc.cgi 10 Sep 2007 20:11:36 -0000 1.41 *************** *** 186,192 **** 'cbm-core' => 'compbenchmarks-core', 'cbm-plan' => 'compbenchmarks-plan', ! 'perl-ui' => 'UI::Perl' }, [ 'arch', 'start', 'cbm-core', 'cbm-plan', ! 'perl-ui', 'advanced' ] ], 'benchs' => [ \%benchmarks_topics, \@benchmarks_list ] --- 186,193 ---- 'cbm-core' => 'compbenchmarks-core', 'cbm-plan' => 'compbenchmarks-plan', ! 'perl-ui' => 'UI::Perl', ! 'qt4-ui' => 'Qt 4.x Interface' }, [ 'arch', 'start', 'cbm-core', 'cbm-plan', ! 'perl-ui', 'qt4-ui', 'advanced' ] ], 'benchs' => [ \%benchmarks_topics, \@benchmarks_list ] *************** *** 250,254 **** </td></tr></table>"; print "<a name='arch-ui'></a><h3>High-level user interfaces</h3> ! <p>No GUI is available at the moment; a Qt 4.x based interface is in active development.</p>"; print "<a name='arch-core'></a><h3>compbenchmarks-core program</h3> <p>This binary program <a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-core'>supports</a> most of configuraiton related actions allowed by the underlaying library that. It may be needed for advanced usages (e.g. for writting a custom wrapper to evaluate benchmarks in a specific maner, not handled by providen user interfaces).</p>"; --- 251,255 ---- </td></tr></table>"; print "<a name='arch-ui'></a><h3>High-level user interfaces</h3> ! <p>No GUI is available at the moment; a <a href='/cgi-bin/doc.cgi?tab=package&topic=qt4-ui'>Qt 4.x based interface</a> is in active development.</p>"; print "<a name='arch-core'></a><h3>compbenchmarks-core program</h3> <p>This binary program <a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-core'>supports</a> most of configuraiton related actions allowed by the underlaying library that. It may be needed for advanced usages (e.g. for writting a custom wrapper to evaluate benchmarks in a specific maner, not handled by providen user interfaces).</p>"; *************** *** 312,315 **** --- 313,317 ---- if ($topic eq 'perl-ui') { + html_tip("This tool is not providen in 0.5.0 branch for which a <a href='/cgi-bin/doc.cgi?tab=package&topic=qt4-ui'>Qt 4.x interface</a> is currently designed."); print "<p>compbenchmarks-ui-perl is a front-end to <i>compbenchmarks</i>. It is written in perl and uses dialog. Most of typical operations can be done with it.</p>"; print "<h3>Configuration</h3>"; *************** *** 375,378 **** --- 377,394 ---- } + if ($topic eq 'qt4-ui') { + html_tip("This GUI to libcompbenchmarks is under heavy development. See CVS on <a href='/cgi-bin/feedback.cgi'>feedback page</a>."); + print "<p>compbenchmarks-ui-qt4 is the upcoming interface for end-users. This page just presents some screenshots from its CVS repository.</p>"; + print "<h3>Screenshots</h3>"; + print "<table><tr><td> + <img src='$LT_WEB_ICONS/qt4-packages-metainfo.png' alt='Package meta-information'></td></tr> + <tr><td> + <img src='$LT_WEB_ICONS/qt4-compilers-general.png' alt='Compiler information'</td></tr> + <tr><td> + <img src='$LT_WEB_ICONS/qt4-plan-empty.png' alt='KB'</td><td> + <img src='$LT_WEB_ICONS/qt4-plan-optionzoom-popup.png' alt='KB'</td></tr> + </table>"; + } + if ($topic eq 'cbm-core') { print "<p>compbenchmarks-core allows user to install benchmarks, prepare them for ealuation, investigate on compiler options' compatibility or dependencies, and, finally, run benchmarks individually. This page will give you some clues and detail interresting points to start with compbenchmarks-core.</p>"; |
Update of /cvsroot/compbench/compbenchmarks-web/icons In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv2343 Added Files: logo-24x32.png qt4-compilers-general.png qt4-packages-metainfo.png qt4-plan-empty.png qt4-plan-optionzoom-popup.png Log Message: First import. --- NEW FILE: qt4-compilers-general.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: qt4-plan-empty.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: qt4-plan-optionzoom-popup.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: logo-24x32.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: qt4-packages-metainfo.png --- (This appears to be a binary file; contents omitted.) |
From: Frederic T. <xf...@us...> - 2007-09-10 15:46:34
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv29639 Modified Files: doc.cgi Log Message: For SF's TID #141819 : Few links fixed. Index: doc.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/doc.cgi,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** doc.cgi 9 Sep 2007 20:57:14 -0000 1.39 --- doc.cgi 10 Sep 2007 15:46:15 -0000 1.40 *************** *** 260,264 **** <p>This is the underlaying library for the <i>compbenchmarks</i> package. It holds generic methods to download packages, basic framework to install, optionally patch and configure them, etc. If you are interested in how to use it in your own program or if you want to make a new benchmark/package supported, you'll need to use it.</p>"; ! html_tip("The <a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=204979'>technical documention</a> presents all concepts, as well as API."); } --- 260,264 ---- <p>This is the underlaying library for the <i>compbenchmarks</i> package. It holds generic methods to download packages, basic framework to install, optionally patch and configure them, etc. If you are interested in how to use it in your own program or if you want to make a new benchmark/package supported, you'll need to use it.</p>"; ! html_tip("The <a href='/cgi-bin/doc.cgi?tab=core'>technical documention</a> presents all concepts, <a href='/cgi-bin/doc.cgi?tab=core&version=0.5.0-BETA2&target=howto_kb.html'>XML knowledge-base</a>, as well as API."); } *************** *** 397,401 **** showbindoc("compbenchmarks-core-qip.raw"); print "<p>-i means installed and -p package. You can use -a (for all) instead of -i. You can also query benchmarks with -b, in place of -p.</p>"; ! print "<p>Then, let's play a bit with CompBenchmarks' knowledge-base :</p>"; showbindoc("compbenchmarks-core-qacA.raw"); print "<a name='dom-manage'><h3>Package management</h3></a> --- 397,401 ---- showbindoc("compbenchmarks-core-qip.raw"); print "<p>-i means installed and -p package. You can use -a (for all) instead of -i. You can also query benchmarks with -b, in place of -p.</p>"; ! print "<p>Then, let's play a bit with CompBenchmarks' <a href='/cgi-bin/doc.cgi?tab=core&version=0.5.0-BETA2&target=howto_kb.html'>knowledge-base</a> :</p>"; showbindoc("compbenchmarks-core-qacA.raw"); print "<a name='dom-manage'><h3>Package management</h3></a> |
From: Frederic T. <xf...@us...> - 2007-09-09 20:57:19
|
Update of /cvsroot/compbench/compbenchmarks-web/cgi-bin In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv19923 Modified Files: doc.cgi Log Message: For SF's TID #141819 : compbenchmarks-plan documentation added. Index: doc.cgi =================================================================== RCS file: /cvsroot/compbench/compbenchmarks-web/cgi-bin/doc.cgi,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -d -r1.38 -r1.39 *** doc.cgi 9 Sep 2007 20:37:18 -0000 1.38 --- doc.cgi 9 Sep 2007 20:57:14 -0000 1.39 *************** *** 185,191 **** 'start' => 'Installation', 'cbm-core' => 'compbenchmarks-core', ! 'perl-ui' => 'UI::Perl', ! 'advanced' => 'Advanced usage' }, ! [ 'arch', 'start', 'cbm-core', 'perl-ui', 'advanced' ] ], 'benchs' => [ \%benchmarks_topics, \@benchmarks_list ] --- 185,192 ---- 'start' => 'Installation', 'cbm-core' => 'compbenchmarks-core', ! 'cbm-plan' => 'compbenchmarks-plan', ! 'perl-ui' => 'UI::Perl' }, ! [ 'arch', 'start', 'cbm-core', 'cbm-plan', ! 'perl-ui', 'advanced' ] ], 'benchs' => [ \%benchmarks_topics, \@benchmarks_list ] *************** *** 251,255 **** <p>No GUI is available at the moment; a Qt 4.x based interface is in active development.</p>"; print "<a name='arch-core'></a><h3>compbenchmarks-core program</h3> ! <p>This binary program supports most of configuraiton related actions allowed by the underlaying library that. It may be needed for <a href='/cgi-bin/doc.cgi?tab=package&topic=usage'>advanced usages</a> (e.g. for writting a custom wrapper to evaluate benchmarks in a specific maner, not handled by providen user interfaces).</p>"; print "<a name='arch-plan'></a><h3>compbenchmarks-plan program</h3> --- 252,256 ---- <p>No GUI is available at the moment; a Qt 4.x based interface is in active development.</p>"; print "<a name='arch-core'></a><h3>compbenchmarks-core program</h3> ! <p>This binary program <a href='/cgi-bin/doc.cgi?tab=package&topic=cbm-core'>supports</a> most of configuraiton related actions allowed by the underlaying library that. It may be needed for advanced usages (e.g. for writting a custom wrapper to evaluate benchmarks in a specific maner, not handled by providen user interfaces).</p>"; print "<a name='arch-plan'></a><h3>compbenchmarks-plan program</h3> *************** *** 408,435 **** html_tip("For every benchmark, the higher is the result (<i>Value</i> field), the better is the effisciency."); } ! ! if ($topic eq 'advanced') { ! print "<p>When embedded <i>compbenchmarks</i> <a href='/cgi-bin/doc.cgi?tab=package&topic=arch#arch-ui'>user interfaces</a> are not suffiscient, the program <i>compbenchmarks-core</i> may be found useful.</p> ! <h3>Installing a package/benchmark from a local file</h3> ! <p>When a package is not accessible anymore on the Internet (e.g; through the <a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui#usage-download'>install menu</a> of <a href='/cgi-bin/doc.cgi?tab=package&topic=perl-ui'>compbenchmarks-ui-perl</a>), it can be fetched from a local file :</p> ! <code> ! \$ compbenchmarks-core --fetch benchpp-whetstone bench++.tar.gz ! </code> ! <h3>Running a benchmark</h3> ! <p>You can also configure and run an installed package directly, like this : ! </p> ! <code> ! \$ compbenchmarks-core --bench benchpp-whetstone /usr/local/bin/g++ '-O3 -Wall' ! </code> ! <p>Result will be the last line of stdout.</p> ! "; ! html_tip("For every benchmark, the higher is the result, the better is the effisciency."); ! print "<p>This simple command can be issued by a wrapper script of your choice to run specific benchmarks or for using a options/compilers attribution mechanism that differs from the one applied in user interfaces.</p> ! <h3>Further readings</h3> ! <code> ! \$ man compbenchmarks-core # :p ! </code>"; ! html_tip("If you want to an in-depth interaction with <i>compbenchmarks</i>, you should look at the <a href='http://sourceforge.net/project/showfiles.php?group_id=150828&package_id=204979'>technical documention</a>, which presents the API."); } } elsif ($tab eq 'core') { showdoxydoc(); --- 409,428 ---- html_tip("For every benchmark, the higher is the result (<i>Value</i> field), the better is the effisciency."); } ! if ($topic eq 'cbm-plan') { ! print "<p>compbenchmarks-plan allows you to select bunchs of compilers, compilation options and benchmarks and evaluate the compilers or/and options relative performances.</p> ! <p>Such selections are called a plan. Well, as, basically, the terminology is the key here. I'll will try to expose some terms first.</p> ! <h3>Terminology</h3> ! <p>A plan consists of some plan specific parameters and of some objects called batchs. Each batch references a set of compilers, some benchmarks, and one or more option set. Option set is basically a list of options group. Each option group is a list of options.</p> ! <p>Each option group is a bunch of compiler options; batch'll take in care in option group individually, and apply all options of a given group at a time whereas option group will be used separatly.</p>"; ! print "<h3>Definied a simple plan</h3> ! <p>Copy/paste each line individually in a console :</p>"; ! showbindoc("compbenchmarks-plan-tut.raw"); ! html_tip("If you're a bit curious about it, you can take a look to tut.xml file.<br>Notice that --plan-use repetition is not mandatory if --default-plan is specified in plan registration step."); ! print "<h3>Running benchmarks</h3> ! <p>You can try this :</p>"; ! showbindoc("compbenchmarks-plan-tut-run.raw"); ! html_tip("A benchmarking session (like above) can be stopped with Ctrl+C. Resuming is automatic."); } + } elsif ($tab eq 'core') { showdoxydoc(); |