Announcement

Collapse
No announcement yet.

Zapcc Caching C++ Compiler Open-Sourced

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Zapcc Caching C++ Compiler Open-Sourced

    Phoronix: Zapcc Caching C++ Compiler Open-Sourced

    Remember the Zapcc compiler that focused on lightning fast compiler times? It's now been open-sourced...

    http://www.phoronix.com/scan.php?pag...c-Open-Sourced

  • #2
    yes! finally , the faster compile times this will bring are very nice

    Comment


    • #3
      Amazing news. I've tried Zapcc in a few occasions and as they claim, it's *really* fast, say roughly 3x faster for my test codebase. My only complaint was that it proprietary.

      Comment


      • #4
        Are Zapcc's features likely to be upstreamed into clang?

        Comment


        • #5
          As someone who compiles on daily basis - I don't care about compiling times. I care about stability of executable and speed of given executable. So.... Pf...

          Comment


          • #6
            Zapcc provides 3x speedup over GCC when recompiling my project. Initial compilation is slower than GCC 6.4, but this is performed just once per session.

            3x recompilation speedup is less than the advertised 40x recompilation speedup, but 3x is still nice.

            Comment


            • #7
              Originally posted by dimko View Post
              As someone who compiles on daily basis - I don't care about compiling times. I care about stability of executable and speed of given executable. So.... Pf...
              Agreed. I don't really see the problem here. Once the initial compilation on complete, only units dependent on subsequent changes get recompiled anyway.

              Unless people are perhaps working with broken build systems, are not forward declaring or using sloppy systems requiring .NET (ubt and Unreal Engine 4).

              That said, I have seen some terrible choices made by developers such as for test / debug iterations, simply committing to Git and allowing the build server to build the binary for i.e Android rather than actually getting the damn Android NDK working on their own machine. So frigging lazy.

              Good to see the project open-sourced in any case. It means people will actually use it

              Comment


              • #8
                How does it compare to ccache + gcc or ccache + clang? I'd sooner stick to a compiler I know and trust.

                Comment


                • #9
                  Originally posted by kpedersen View Post
                  Agreed. I don't really see the problem here. Once the initial compilation on complete, only units dependent on subsequent changes get recompiled anyway.
                  If a header file included by multiple C/C++ files is changed then Zapcc should provide some speedup over GCC. This is irrespective of whether the programmer is using a broken build system because Zapcc is working on units of smaller granularity than any file based C/C++ build system.

                  Comment


                  • #10
                    Originally posted by kpedersen View Post
                    Agreed. I don't really see the problem here. Once the initial compilation on complete, only units dependent on subsequent changes get recompiled anyway.
                    Some concrete numbers for Zapcc on my machine:

                    Code:
                    $ pkill zapccs      # force fresh zapcc server instance
                    $ touch file.cc
                    $ time make file.o  # first-time compilation
                    0m1.793s
                    $ touch file.cc
                    $ time make file.o  # recompilation
                    0m0.463s

                    Comment

                    Working...
                    X