Ask HN: Is an AMD Threadripper a good idea to speed up code compilation?

  • The real problem is the c++ of chromium, webkit and llvm, which is a nightmare to compile.

    But actual chromium, webkit and llvm are already problems by themselves with their grotesque and absurd complexity and size.

  • Hard to say without benchmarking. Unless the compilation process can be parallelised (as in "lots of files without interdependencies"), you'll find little use for extra cores beyond the average number of simultaneous possible compilations.

    This is all very project-dependent - you might even optimise your build process by moving things around to reduce these dependencies (facilitating parallel compiles).

  • imho. (!)

    idk. but you have to think about mainly one thing:

    how well does the "overall" task you want to achieve scale with the core-count!?

    test it with your existing hardware ... idk:

    # run the compilation(s) with 1, 2, 4, 8, 16 cores

    # look at the results ... how well does it scale with the core-count

    think about your actual use-case:

    # single build vs multiple ones on one system at a time

    # how much of the build-performance comes from i/o ... ;)

    what i discovered for certain project in the past:

    sometimes test-runs are the most time-demanding part of a projects build and sometimes testing doesn't scale well with the cpu-core count... you need a compile/worker task per core to utilize your cpu ... so often really large core-numbers don't result in an additional speed-up (remember amdahls law ;)

    on the other side: if you plan to run multiple such build-jobs in parallel, it might make sense to have a lot of cores ...

    again: don't forget to measure the impact of i/o ... especially if you want to run multiple build-jobs in parallel.

    and: while threadrippers are great cpus - i have to admit, that i'm a big amd fan ;))

    ... maybe the result is, that it won't scale well beyond lets say 8 cores for a single build-jobs or 16 / 32 cores for multiple jobs => stay with a good desktop-processor avoiding the ones with "energy-efficient" cores like the plague...

    ps. personally i try to solve such problems with hardware with a good price/performance ratio ... don't "overspend", just because you think it makes sense. benchmark/measure!!

    then go for a cheap box first, if it proofs your hypothesis and you do have a lot of tasks at your hand and time = money in your environment => just buy a second one etc.

    if you have a lot of jobs: think about a job-scheduler ... etc.

    just my 0.02€

  • I loved my Threadripper 1950x. But processors inevitably age out. Mine's sitting in a cupboard unused.

    I upgraded to an i5-1360K. A friggin' i5!

    Check it out: https://cpu.userbenchmark.com/Compare/Intel-Core-i5-13600K-v...

    I really wish there were more crazy-core-count CPUs out there, but the Threadripper prices are pretty nuts, especially if they're superseded by i5s and i7s in a few years.