VC2003/VC2008编译器性能

    Author: 徐艺波  From: xuyibo.org  Updated: 2020-11-26

      建议  有什么好的建议,可以贴一下。
      捐助  你的支持,让我们做的更好。

  1. 概述
  2. Visual Studio 2008不久前发布,用了很久了的Visual Studio 2003,它和2003在性能上有什么差别呢。今天伴随着内部BDE的升级,分别测试了4组数据,公布一下,让大家对Visual Studio性能有个感性认识。

  3. 测试环境
  4. 所有的测试都是基于同样的231份工程49万行我过去写的代码。为了在尽可能的体现测试的公平性,4份测试数据都是在BDE环境下测试的。

    BDE是一套自动构建系统, 由我(徐艺波)在2006年5月设计开发的。该构建系统能够自动实现软件的编译、链接、打包,
    而且BDE提供了非常丰富的扩展功能和非常丰富的环境支持工具。 BDE不是免费软件。

    231份工程中包含各种各样的组合:汇编和C的混合工程、C和C++的混合工程、纯C/C++工程等等。 由于2005编译器的种种问题,测试的时候没有选用Visual Studio 2005,而主要对比测试Visual Studio 2003和Visual Studio 2008。

  5. 测试数据
  6. 下面是在BDE下四种不同环境下的测试数据:

    测试环境 全部编译所用时间(毫秒)
    Visual Studio 2003 Debug 602284(ms) used – 10Min 2s 284ms – 490204 lines
    Visual Studio 2003 Release 707266(ms) used – 11Min 47s 266ms – 490204 lines
    Visual Studio 2008 Debug 971758(ms) used – 16Min 11s 758ms – 490204 lines
    Visual Studio 2008 Release 1036628(ms) used – 17Min 16s 628ms – 490204 lines

    由于设计到保密,我没有列出编译的软件路径,下面是详细的这232个工程编译花费的详细时间:

    编号 代码行数 Visual Studio 2003 Debug Visual Studio 2003 Release Visual Studio 2008 Debug Visual Studio 2008 Release
    1 3311 12027(ms) 9360(ms) 22479(ms) 17566(ms)
    2 3311 9548(ms) 10156(ms) 18658(ms) 19126(ms)
    3 9233 2230(ms) 4009(ms) 2433(ms) 5616(ms)
    4 13401 3885(ms) 6646(ms) 5351(ms) 10655(ms)
    5 2320 422(ms) 765(ms) 624(ms) 2403(ms)
    6 1422 6022(ms) 6177(ms) 6879(ms) 6302(ms)
    7 7323 2543(ms) 3354(ms) 4836(ms) 5944(ms)
    8 7649 2511(ms) 3775(ms) 3729(ms) 5007(ms)
    9 7649 1716(ms) 2964(ms) 2761(ms) 4275(ms)
    10 127 1716(ms) 1529(ms) 2746(ms) 2371(ms)
    11 413 1451(ms) 1420(ms) 3214(ms) 2652(ms)
    12 346 1248(ms) 1232(ms) 2606(ms) 2403(ms)
    13 338 1201(ms) 1326(ms) 2589(ms) 2418(ms)
    14 1986 2293(ms) 2527(ms) 4742(ms) 4696(ms)
    15 256 1498(ms) 1685(ms) 2995(ms) 2730(ms)
    16 3283 2481(ms) 2980(ms) 4946(ms) 5398(ms)
    17 236 1419(ms) 1373(ms) 2808(ms) 2621(ms)
    18 34483 33307(ms) 35958(ms) 63649(ms) 66082(ms)
    19 34483 32370(ms) 35163(ms) 62166(ms) 69280(ms)
    20 34483 31060(ms) 34492(ms) 60965(ms) 64523(ms)
    21 84 6864(ms) 10031(ms) 11248(ms) 11310(ms)
    22 7664 2776(ms) 3963(ms) 5008(ms) 5772(ms)
    23 89649 55802(ms) 67033(ms) 89810(ms) 99216(ms)
    24 47934 19874(ms) 31185(ms) 41340(ms) 53789(ms)
    25 3695 1108(ms) 1591(ms) 1919(ms) 2418(ms)
    26 24336 9672(ms) 12823(ms) 15506(ms) 18065(ms)
    27 529 1887(ms) 2511(ms) 3978(ms) 4493(ms)
    28 21533 37643(ms) 59281(ms) 36489(ms) 49249(ms)
    29 1600 3214(ms) 3307(ms) 7129(ms) 7519(ms)
    30 1916 4150(ms) 4477(ms) 8767(ms) 7925(ms)
    31 1155 5460(ms) 9641(ms) 7503(ms) 7878(ms)
    32 535 1982(ms) 2512(ms) 3588(ms) 3401(ms)
    33 616 5819(ms) 9251(ms) 8050(ms) 7051(ms)
    34 212 1341(ms) 1311(ms) 2824(ms) 2652(ms)
    35 538 1779(ms) 2121(ms) 3494(ms) 3338(ms)
    36 97 1326(ms) 1373(ms) 2761(ms) 2854(ms)
    37 143 1326(ms) 1404(ms) 2871(ms) 2574(ms)
    38 727 3884(ms) 4259(ms) 6989(ms) 7005(ms)
    39 748 2652(ms) 3806(ms) 4009(ms) 4758(ms)
    40 114 1404(ms) 1560(ms) 2543(ms) 2606(ms)
    41 873 1981(ms) 2449(ms) 3744(ms) 3510(ms)
    42 379 2013(ms) 2059(ms) 3713(ms) 3385(ms)
    43 11101 7800(ms) 8112(ms) 11029(ms) 10155(ms)
    44 1350 2511(ms) 4103(ms) 4851(ms) 4727(ms)
    45 14377 40701(ms) 53680(ms) 67112(ms) 77860(ms)
    46 19345 28282(ms) 33743(ms) 45958(ms) 50513(ms)
    47 1723 2871(ms) 3635(ms) 4258(ms) 4010(ms)
    48 3201 3837(ms) 4212(ms) 6630(ms) 6381(ms)
    49 182 1451(ms) 1435(ms) 2761(ms) 2590(ms)
    50 108 1342(ms) 1326(ms) 2792(ms) 2527(ms)
    51 107 1388(ms) 1420(ms) 2839(ms) 2621(ms)
    52 116 2277(ms) 2153(ms) 3775(ms) 3401(ms)
    53 608 2246(ms) 2137(ms) 3744(ms) 3416(ms)
    54 184 7145(ms) 7052(ms) 9906(ms) 9422(ms)
    55 5886 3573(ms) 3494(ms) 5008(ms) 5164(ms)
    56 16 951(ms) 905(ms) 1357(ms) 1357(ms)
    57 38 1279(ms) 1139(ms) 2387(ms) 2965(ms)
    58 48 1186(ms) 1123(ms) 2433(ms) 2168(ms)
    59 183 1216(ms) 1264(ms) 2512(ms) 2278(ms)
    60 75 1373(ms) 1326(ms) 2621(ms) 2449(ms)
    61 113 2247(ms) 2230(ms) 3494(ms) 3432(ms)
    62 37 1466(ms) 1264(ms) 2449(ms) 2168(ms)
    63 100 1264(ms) 1232(ms) 3027(ms) 2371(ms)
    64 12 546(ms) 530(ms) 1076(ms) 874(ms)
    65 62 1248(ms) 1248(ms) 2543(ms) 2277(ms)
    66 6 562(ms) 515(ms) 1077(ms) 827(ms)
    67 338 1310(ms) 1295(ms) 2433(ms) 2215(ms)
    68 100 1217(ms) 1170(ms) 2527(ms) 2216(ms)
    69 227 889(ms) 951(ms) 1731(ms) 1763(ms)
    70 45 1217(ms) 1139(ms) 2512(ms) 2262(ms)
    71 18448 20264(ms) 21731(ms) 26458(ms) 26427(ms)
    72 384 484(ms) 546(ms) 624(ms) 624(ms)
    73 384 640(ms) 733(ms) 795(ms) 858(ms)
    74 323 608(ms) 624(ms) 764(ms) 765(ms)
    75 455 608(ms) 593(ms) 812(ms) 702(ms)
    76 486 624(ms) 733(ms) 811(ms) 795(ms)
    77 773 608(ms) 609(ms) 812(ms) 733(ms)
    78 208 686(ms) 671(ms) 811(ms) 796(ms)
    79 419 593(ms) 577(ms) 858(ms) 733(ms)
    80 175 593(ms) 702(ms) 749(ms) 764(ms)
    81 306 639(ms) 593(ms) 811(ms) 749(ms)
    82 302 624(ms) 593(ms) 749(ms) 827(ms)
    83 107 624(ms) 608(ms) 842(ms) 764(ms)
    84 154 608(ms) 640(ms) 827(ms) 718(ms)
    85 111 577(ms) 593(ms) 764(ms) 748(ms)
    86 71 562(ms) 624(ms) 718(ms) 749(ms)
    87 180 624(ms) 578(ms) 780(ms) 749(ms)
    88 125 624(ms) 624(ms) 811(ms) 780(ms)
    89 68 592(ms) 531(ms) 827(ms) 702(ms)
    90 82 593(ms) 702(ms) 749(ms) 796(ms)
    91 85 561(ms) 593(ms) 734(ms) 702(ms)
    92 414 624(ms) 655(ms) 795(ms) 733(ms)
    93 437 624(ms) 624(ms) 765(ms) 764(ms)
    94 92 640(ms) 624(ms) 717(ms) 749(ms)
    95 387 577(ms) 640(ms) 780(ms) 749(ms)
    96 335 593(ms) 593(ms) 796(ms) 749(ms)
    97 298 593(ms) 702(ms) 764(ms) 749(ms)
    98 599 608(ms) 640(ms) 796(ms) 811(ms)
    99 45 546(ms) 577(ms) 639(ms) 702(ms)
    100 284 593(ms) 561(ms) 827(ms) 733(ms)
    101 193 561(ms) 578(ms) 796(ms) 717(ms)
    102 51 546(ms) 546(ms) 764(ms) 655(ms)
    103 350 624(ms) 686(ms) 780(ms) 764(ms)
    104 77 624(ms) 609(ms) 733(ms) 749(ms)
    105 392 640(ms) 639(ms) 780(ms) 796(ms)
    106 379 577(ms) 546(ms) 717(ms) 764(ms)
    107 284 561(ms) 687(ms) 686(ms) 811(ms)
    108 149 640(ms) 639(ms) 827(ms) 827(ms)
    109 437 671(ms) 640(ms) 858(ms) 843(ms)
    110 230 593(ms) 530(ms) 811(ms) 2246(ms)
    111 629 639(ms) 733(ms) 843(ms) 936(ms)
    112 143 609(ms) 608(ms) 858(ms) 780(ms)
    113 221 624(ms) 639(ms) 795(ms) 764(ms)
    114 823 842(ms) 905(ms) 1248(ms) 1185(ms)
    115 123 530(ms) 561(ms) 718(ms) 687(ms)
    116 418 7644(ms) 7628(ms) 7862(ms) 7784(ms)
    117 596 733(ms) 734(ms) 826(ms) 874(ms)
    118 79 624(ms) 546(ms) 765(ms) 702(ms)
    119 332 608(ms) 624(ms) 780(ms) 764(ms)
    120 109 593(ms) 577(ms) 749(ms) 702(ms)
    121 205 624(ms) 671(ms) 858(ms) 764(ms)
    122 291 593(ms) 656(ms) 796(ms) 749(ms)
    123 224 577(ms) 640(ms) 827(ms) 764(ms)
    124 221 624(ms) 593(ms) 780(ms) 748(ms)
    125 43 577(ms) 624(ms) 765(ms) 671(ms)
    126 103 608(ms) 593(ms) 795(ms) 686(ms)
    127 216 561(ms) 562(ms) 765(ms) 733(ms)
    128 280 546(ms) 578(ms) 795(ms) 749(ms)
    129 269 624(ms) 670(ms) 796(ms) 858(ms)
    130 281 609(ms) 624(ms) 780(ms) 764(ms)
    131 195 671(ms) 639(ms) 764(ms) 780(ms)
    132 208 608(ms) 640(ms) 826(ms) 780(ms)
    133 220 624(ms) 639(ms) 765(ms) 780(ms)
    134 284 640(ms) 734(ms) 842(ms) 780(ms)
    135 249 639(ms) 670(ms) 874(ms) 780(ms)
    136 328 577(ms) 686(ms) 827(ms) 765(ms)
    137 200 577(ms) 671(ms) 811(ms) 780(ms)
    138 206 593(ms) 640(ms) 795(ms) 749(ms)
    139 576 671(ms) 749(ms) 858(ms) 858(ms)
    140 282 655(ms) 687(ms) 858(ms) 827(ms)
    141 134 640(ms) 733(ms) 842(ms) 780(ms)
    142 190 546(ms) 561(ms) 671(ms) 718(ms)
    143 212 608(ms) 624(ms) 796(ms) 795(ms)
    144 887 609(ms) 749(ms) 827(ms) 827(ms)
    145 539 655(ms) 717(ms) 842(ms) 811(ms)
    146 216 640(ms) 624(ms) 827(ms) 780(ms)
    147 157 593(ms) 656(ms) 718(ms) 749(ms)
    148 651 671(ms) 842(ms) 1014(ms) 967(ms)
    149 242 624(ms) 624(ms) 811(ms) 749(ms)
    150 272 577(ms) 702(ms) 780(ms) 733(ms)
    151 197 577(ms) 562(ms) 749(ms) 718(ms)
    152 94 562(ms) 577(ms) 702(ms) 733(ms)
    153 310 608(ms) 656(ms) 858(ms) 780(ms)
    154 944 687(ms) 686(ms) 842(ms) 843(ms)
    155 227 577(ms) 640(ms) 718(ms) 702(ms)
    156 653 639(ms) 639(ms) 826(ms) 796(ms)
    157 643 656(ms) 655(ms) 780(ms) 780(ms)
    158 367 983(ms) 1061(ms) 1326(ms) 1294(ms)
    159 1132 624(ms) 734(ms) 811(ms) 858(ms)
    160 188 624(ms) 655(ms) 780(ms) 764(ms)
    161 183 343(ms) 421(ms) 359(ms) 344(ms)
    162 103 578(ms) 577(ms) 718(ms) 702(ms)
    163 496 640(ms) 702(ms) 889(ms) 780(ms)
    164 149 608(ms) 624(ms) 733(ms) 733(ms)
    165 352 640(ms) 686(ms) 874(ms) 843(ms)
    166 242 639(ms) 733(ms) 858(ms) 796(ms)
    167 382 640(ms) 765(ms) 874(ms) 842(ms)
    168 378 686(ms) 686(ms) 842(ms) 827(ms)
    169 463 624(ms) 749(ms) 874(ms) 890(ms)
    170 88 578(ms) 546(ms) 686(ms) 702(ms)
    171 344 608(ms) 686(ms) 842(ms) 765(ms)
    172 137 530(ms) 546(ms) 671(ms) 717(ms)
    173 296 608(ms) 671(ms) 842(ms) 811(ms)
    174 439 640(ms) 717(ms) 890(ms) 858(ms)
    175 497 609(ms) 624(ms) 733(ms) 749(ms)
    176 95 795(ms) 874(ms) 936(ms) 905(ms)
    177 16 655(ms) 577(ms) 718(ms) 733(ms)
    178 178 624(ms) 624(ms) 748(ms) 780(ms)
    179 296 578(ms) 624(ms) 764(ms) 749(ms)
    180 106 624(ms) 624(ms) 812(ms) 764(ms)
    181 137 655(ms) 592(ms) 811(ms) 780(ms)
    182 148 640(ms) 609(ms) 733(ms) 733(ms)
    183 227 639(ms) 671(ms) 842(ms) 812(ms)
    184 239 640(ms) 624(ms) 811(ms) 826(ms)
    185 68 608(ms) 593(ms) 811(ms) 734(ms)
    186 163 640(ms) 655(ms) 780(ms) 749(ms)
    187 413 687(ms) 702(ms) 843(ms) 873(ms)
    188 128 640(ms) 624(ms) 795(ms) 827(ms)
    189 142 686(ms) 639(ms) 765(ms) 748(ms)
    190 76 624(ms) 593(ms) 827(ms) 765(ms)
    191 37 624(ms) 686(ms) 764(ms) 781(ms)
    192 183 546(ms) 624(ms) 765(ms) 748(ms)
    193 333 639(ms) 765(ms) 795(ms) 811(ms)
    194 74 608(ms) 655(ms) 827(ms) 765(ms)
    195 95 608(ms) 624(ms) 795(ms) 748(ms)
    196 62 608(ms) 655(ms) 749(ms) 780(ms)
    197 336 671(ms) 624(ms) 1076(ms) 796(ms)
    198 86 624(ms) 624(ms) 796(ms) 749(ms)
    199 41 639(ms) 577(ms) 811(ms) 780(ms)
    200 147 624(ms) 671(ms) 827(ms) 780(ms)
    201 250 655(ms) 702(ms) 858(ms) 842(ms)
    202 75 609(ms) 655(ms) 733(ms) 811(ms)
    203 76 609(ms) 686(ms) 749(ms) 749(ms)
    204 42 671(ms) 640(ms) 795(ms) 780(ms)
    205 228 639(ms) 671(ms) 780(ms) 796(ms)
    206 76 562(ms) 593(ms) 718(ms) 749(ms)
    207 48 609(ms) 592(ms) 811(ms) 748(ms)
    208 144 609(ms) 624(ms) 780(ms) 780(ms)
    209 143 608(ms) 593(ms) 765(ms) 749(ms)
    210 81 624(ms) 640(ms) 873(ms) 827(ms)
    211 105 593(ms) 609(ms) 812(ms) 826(ms)
    212 198 639(ms) 609(ms) 765(ms) 796(ms)
    213 143 609(ms) 624(ms) 780(ms) 780(ms)
    214 11 374(ms) 343(ms) 359(ms) 343(ms)
    215 247 8237(ms) 7192(ms) 11092(ms) 10327(ms)
    216 126 982(ms) 967(ms) 1061(ms) 1670(ms)
    217 62 546(ms) 562(ms) 717(ms) 686(ms)
    218 367 1576(ms) 1638(ms) 3978(ms) 3775(ms)
    219 50 1248(ms) 1201(ms) 2777(ms) 2527(ms)
    220 43 1217(ms) 1170(ms) 2730(ms) 2372(ms)
    221 144 484(ms) 468(ms) 1014(ms) 1045(ms)
    222 688 2808(ms) 2855(ms) 5897(ms) 5741(ms)
    223 52 5787(ms) 5507(ms) 7753(ms) 7613(ms)
    224 54 1264(ms) 1232(ms) 2527(ms) 2418(ms)
    225 105 1201(ms) 1279(ms) 2527(ms) 2262(ms)
    226 94 920(ms) 967(ms) 2636(ms) 2277(ms)
    227 202 1170(ms) 1139(ms) 2637(ms) 2434(ms)
    228 275 468(ms) 484(ms) 1124(ms) 983(ms)
    229 40 1201(ms) 1201(ms) 2402(ms) 2325(ms)
    230 40 1138(ms) 1170(ms) 2199(ms) 2184(ms)
    231 40 1154(ms) 1202(ms) 2262(ms) 2246(ms)
    232 1074 7161(ms) 7784(ms) 9782(ms) 10935(ms)

  7. 建议:
    User:
Built on: 2021-5-13 14:22:42
Copyright © 2006-2008 xuyibo.org All rights reserved.
网站地图