Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Faster C++ compilation on VS2005

Faster C++ compilation on VS2005

Scheduled Pinned Locked Moved The Lounge
c++delphihtmlvisual-studiocom
9 Posts 7 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Shog9 0
    wrote on last edited by
    #1

    So after a couple years of putting up with very slow build times, i couldn't take it anymore. We're preparing to migrate to VS2005 for primary C++ development, and a 20x increase in the time needed for a full build just isn't gonna cut it. So i started going through the options, hoping there was an option or something, hoping that they hadn't made the compiler itself that much slower in the process of adding new features and increasing standards compliance. Sure enough, there was a simple solution. Seems the "automatic" option for using pre-compiled headers isn't available anymore, and so during the conversion PCH was just turned off for all projects. At this point, i'm going to admit that i've never given too much thought to PCH support in VC++. The only other time i've used PCH at all was with Borland's C++ compiler, where manually specifying what you wanted pre-compiled was the only option (at the time anyway). That It Just Worked on VC++ was enough for me - why mess with what works? But the downside was, i didn't have a very clear idea of what was actually going on. Put the system headers in STDAFX.H, rebuild all, check in and forget it. Upon realizing that this was no longer an option, i didn't really know what to do... Then i found Bruce Dawson's excellent article[^] on the subject. Going well beyond MSDN's dry descriptions of how, Bruce details the various methods for configuring, optimizing, and using PCH in VC++. With this, i enabled PCH manually on our various projects, and brought build times back down to something acceptable (roughly 1.5x what it takes in VS6). VS2K5 is usable at last! Now, if i could just do something about that annoying "Updating Intellisense..." ----

    Bots don't know when people die. --Paul Watson, RIP

    S P J M 4 Replies Last reply
    0
    • S Shog9 0

      So after a couple years of putting up with very slow build times, i couldn't take it anymore. We're preparing to migrate to VS2005 for primary C++ development, and a 20x increase in the time needed for a full build just isn't gonna cut it. So i started going through the options, hoping there was an option or something, hoping that they hadn't made the compiler itself that much slower in the process of adding new features and increasing standards compliance. Sure enough, there was a simple solution. Seems the "automatic" option for using pre-compiled headers isn't available anymore, and so during the conversion PCH was just turned off for all projects. At this point, i'm going to admit that i've never given too much thought to PCH support in VC++. The only other time i've used PCH at all was with Borland's C++ compiler, where manually specifying what you wanted pre-compiled was the only option (at the time anyway). That It Just Worked on VC++ was enough for me - why mess with what works? But the downside was, i didn't have a very clear idea of what was actually going on. Put the system headers in STDAFX.H, rebuild all, check in and forget it. Upon realizing that this was no longer an option, i didn't really know what to do... Then i found Bruce Dawson's excellent article[^] on the subject. Going well beyond MSDN's dry descriptions of how, Bruce details the various methods for configuring, optimizing, and using PCH in VC++. With this, i enabled PCH manually on our various projects, and brought build times back down to something acceptable (roughly 1.5x what it takes in VS6). VS2K5 is usable at last! Now, if i could just do something about that annoying "Updating Intellisense..." ----

      Bots don't know when people die. --Paul Watson, RIP

      S Offline
      S Offline
      Super Lloyd
      wrote on last edited by
      #2

      Really good paper! :D

      1 Reply Last reply
      0
      • S Shog9 0

        So after a couple years of putting up with very slow build times, i couldn't take it anymore. We're preparing to migrate to VS2005 for primary C++ development, and a 20x increase in the time needed for a full build just isn't gonna cut it. So i started going through the options, hoping there was an option or something, hoping that they hadn't made the compiler itself that much slower in the process of adding new features and increasing standards compliance. Sure enough, there was a simple solution. Seems the "automatic" option for using pre-compiled headers isn't available anymore, and so during the conversion PCH was just turned off for all projects. At this point, i'm going to admit that i've never given too much thought to PCH support in VC++. The only other time i've used PCH at all was with Borland's C++ compiler, where manually specifying what you wanted pre-compiled was the only option (at the time anyway). That It Just Worked on VC++ was enough for me - why mess with what works? But the downside was, i didn't have a very clear idea of what was actually going on. Put the system headers in STDAFX.H, rebuild all, check in and forget it. Upon realizing that this was no longer an option, i didn't really know what to do... Then i found Bruce Dawson's excellent article[^] on the subject. Going well beyond MSDN's dry descriptions of how, Bruce details the various methods for configuring, optimizing, and using PCH in VC++. With this, i enabled PCH manually on our various projects, and brought build times back down to something acceptable (roughly 1.5x what it takes in VS6). VS2K5 is usable at last! Now, if i could just do something about that annoying "Updating Intellisense..." ----

        Bots don't know when people die. --Paul Watson, RIP

        P Offline
        P Offline
        Paul Conrad
        wrote on last edited by
        #3

        Dawson's article was really good. The link to Incredibuild I've seen before. Has anyone used it? PC

        T 1 Reply Last reply
        0
        • P Paul Conrad

          Dawson's article was really good. The link to Incredibuild I've seen before. Has anyone used it? PC

          T Offline
          T Offline
          Taka Muraoka
          wrote on last edited by
          #4

          computerguru92382 wrote:

          The link to Incredibuild I've seen before.

          We trialled it for a month at a shop I worked at years ago. It really does work. I can't remember the exact figures but it something like a 30% reduction in build times. And it really was unintrusive - if your machine was being used for somebody else's build, it got out of the way the moment you started using the machine for yourself. I think the real benefit would be utilizing the power of all your secretaries (and CEO's :rolleyes:) machines.


          The two most common elements in the universe are Hydrogen and stupidity. - Harlan Ellison Awasu 2.2 [^]: A free RSS/Atom feed reader with support for Code Project.

          P 1 Reply Last reply
          0
          • S Shog9 0

            So after a couple years of putting up with very slow build times, i couldn't take it anymore. We're preparing to migrate to VS2005 for primary C++ development, and a 20x increase in the time needed for a full build just isn't gonna cut it. So i started going through the options, hoping there was an option or something, hoping that they hadn't made the compiler itself that much slower in the process of adding new features and increasing standards compliance. Sure enough, there was a simple solution. Seems the "automatic" option for using pre-compiled headers isn't available anymore, and so during the conversion PCH was just turned off for all projects. At this point, i'm going to admit that i've never given too much thought to PCH support in VC++. The only other time i've used PCH at all was with Borland's C++ compiler, where manually specifying what you wanted pre-compiled was the only option (at the time anyway). That It Just Worked on VC++ was enough for me - why mess with what works? But the downside was, i didn't have a very clear idea of what was actually going on. Put the system headers in STDAFX.H, rebuild all, check in and forget it. Upon realizing that this was no longer an option, i didn't really know what to do... Then i found Bruce Dawson's excellent article[^] on the subject. Going well beyond MSDN's dry descriptions of how, Bruce details the various methods for configuring, optimizing, and using PCH in VC++. With this, i enabled PCH manually on our various projects, and brought build times back down to something acceptable (roughly 1.5x what it takes in VS6). VS2K5 is usable at last! Now, if i could just do something about that annoying "Updating Intellisense..." ----

            Bots don't know when people die. --Paul Watson, RIP

            J Offline
            J Offline
            Jorgen Sigvardsson
            wrote on last edited by
            #5

            Shog9 wrote:

            Now, if i could just do something about that annoying "Updating Intellisense..."

            I wish it would even try to update intellisense.. :~

            1 Reply Last reply
            0
            • S Shog9 0

              So after a couple years of putting up with very slow build times, i couldn't take it anymore. We're preparing to migrate to VS2005 for primary C++ development, and a 20x increase in the time needed for a full build just isn't gonna cut it. So i started going through the options, hoping there was an option or something, hoping that they hadn't made the compiler itself that much slower in the process of adding new features and increasing standards compliance. Sure enough, there was a simple solution. Seems the "automatic" option for using pre-compiled headers isn't available anymore, and so during the conversion PCH was just turned off for all projects. At this point, i'm going to admit that i've never given too much thought to PCH support in VC++. The only other time i've used PCH at all was with Borland's C++ compiler, where manually specifying what you wanted pre-compiled was the only option (at the time anyway). That It Just Worked on VC++ was enough for me - why mess with what works? But the downside was, i didn't have a very clear idea of what was actually going on. Put the system headers in STDAFX.H, rebuild all, check in and forget it. Upon realizing that this was no longer an option, i didn't really know what to do... Then i found Bruce Dawson's excellent article[^] on the subject. Going well beyond MSDN's dry descriptions of how, Bruce details the various methods for configuring, optimizing, and using PCH in VC++. With this, i enabled PCH manually on our various projects, and brought build times back down to something acceptable (roughly 1.5x what it takes in VS6). VS2K5 is usable at last! Now, if i could just do something about that annoying "Updating Intellisense..." ----

              Bots don't know when people die. --Paul Watson, RIP

              M Offline
              M Offline
              Michael Dunn
              wrote on last edited by
              #6

              Shog9 wrote:

              during the conversion PCH was just turned off for all projects.

              Wha wha WHAT??! :wtf: Ouch. --Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | NEW!! PimpFish | CP SearchBar v3.0 | C++ Forum FAQ

              1 Reply Last reply
              0
              • T Taka Muraoka

                computerguru92382 wrote:

                The link to Incredibuild I've seen before.

                We trialled it for a month at a shop I worked at years ago. It really does work. I can't remember the exact figures but it something like a 30% reduction in build times. And it really was unintrusive - if your machine was being used for somebody else's build, it got out of the way the moment you started using the machine for yourself. I think the real benefit would be utilizing the power of all your secretaries (and CEO's :rolleyes:) machines.


                The two most common elements in the universe are Hydrogen and stupidity. - Harlan Ellison Awasu 2.2 [^]: A free RSS/Atom feed reader with support for Code Project.

                P Offline
                P Offline
                Paul Conrad
                wrote on last edited by
                #7

                Taka Muraoka wrote:

                I think the real benefit would be utilizing the power of all your secretaries (and CEO's ) machines.

                Wouldn't there be any performance hits for them to complain about? Paul

                T 1 Reply Last reply
                0
                • P Paul Conrad

                  Taka Muraoka wrote:

                  I think the real benefit would be utilizing the power of all your secretaries (and CEO's ) machines.

                  Wouldn't there be any performance hits for them to complain about? Paul

                  T Offline
                  T Offline
                  Taka Muraoka
                  wrote on last edited by
                  #8

                  computerguru92382 wrote:

                  Wouldn't there be any performance hits for them to complain about?

                  Meh. Would they notice :rolleyes:


                  The two most common elements in the universe are Hydrogen and stupidity. - Harlan Ellison Awasu 2.2 [^]: A free RSS/Atom feed reader with support for Code Project.

                  X 1 Reply Last reply
                  0
                  • T Taka Muraoka

                    computerguru92382 wrote:

                    Wouldn't there be any performance hits for them to complain about?

                    Meh. Would they notice :rolleyes:


                    The two most common elements in the universe are Hydrogen and stupidity. - Harlan Ellison Awasu 2.2 [^]: A free RSS/Atom feed reader with support for Code Project.

                    X Offline
                    X Offline
                    Xoy
                    wrote on last edited by
                    #9

                    hmmm now how to slip it on their machines without them suspecting... not that many would notice :laugh:

                    1 Reply Last reply
                    0
                    Reply
                    • Reply as topic
                    Log in to reply
                    • Oldest to Newest
                    • Newest to Oldest
                    • Most Votes


                    • Login

                    • Don't have an account? Register

                    • Login or register to search.
                    • First post
                      Last post
                    0
                    • Categories
                    • Recent
                    • Tags
                    • Popular
                    • World
                    • Users
                    • Groups