Announcement

Collapse
No announcement yet.

GCC's Conversion To Git: "Within The Realm Of The Practically Achievable"

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

  • #11
    He could have picked Rust though.

    Comment


    • #12
      I'm also curious what about the mismatch in VCS architectures makes so much RAM necessary.

      Naive intuition suggests that it should be possible to rewrite any repo using an ordinary amount of RAM and maybe an extra pass or two. (eg. Rather than loading branches into memory until you get to the merge point that allows them to be written out, do a separate initial pass to identify the order in which commits need to be visited and where they're stored, then walk them in the order that the output repo gets built.)

      Comment


      • #13
        Wait a minute... so he was able to rent server with, let's say 384 GB RAM, year ago and finish his work year ago, but for some reason choose upgrade his workstation and spend year on conversion tool rewrite? What exactly did I miss?

        Comment


        • #14
          Originally posted by RussianNeuroMancer View Post
          Wait a minute... so he was able to rent server with, let's say 384 GB RAM, year ago and finish his work year ago, but for some reason choose upgrade his workstation and spend year on conversion tool rewrite? What exactly did I miss?
          Scam?

          Comment


          • #15
            Originally posted by RussianNeuroMancer View Post
            Wait a minute... so he was able to rent server with, let's say 384 GB RAM, year ago and finish his work year ago, but for some reason choose upgrade his workstation and spend year on conversion tool rewrite? What exactly did I miss?
            It might have taken longer than one year to finish with the old tool.

            Comment


            • #16
              why write less resource hungry program when you can wait one year and buy 128gb server

              Comment


              • #17
                Originally posted by ms178 View Post
                He could have picked Rust though.
                he is python dev. python devs switch to go

                Comment


                • #18
                  I have to say... really annoying users in this thread with a strong opinion for no apparent reason.

                  "Other projects have migrated just fine" --- Yes and how many on the scale of gcc? He's obviously more aware of the situation than anyone here.

                  The solution wasn't just throw more hardware at it, but also required porting the tool from python -> Go. Now that he has both, he can resume the conversion. So I guess my question is, what exactly did I miss?

                  Comment


                  • #19
                    Originally posted by ssokolow View Post
                    I'm also curious what about the mismatch in VCS architectures makes so much RAM necessary.
                    Yeah, that's a bit of a mystery. My guess is that he's building up a ton of stuff in-memory for doing comparisons... the gcc source tree _is_ pretty big, and if he's keeping multiple copies of the whole thing in memory (e.g. compare revision 452 of all files with revision 453) and following branches to common ancestors, etc, that might account for it. Not saying that's an efficient way of doing things, but you could eat a lot of memory very quickly if you did.

                    Comment


                    • #20
                      Originally posted by ms178 View Post
                      He could have picked Rust though.
                      And would be faster than Go.

                      Comment

                      Working...
                      X