It is a good thing that Embarcadero is keeping alive this technology to create desktop apps from the early 2000s that was abandoned by MS and other large companies in favor of complex Web-based apps.
Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
11–20 of 187 posts
Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#12Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#13The more pedestrian 5950X or the now bargain 3950X are great for anyone doing a lot of compiling. With the right motherboard they even have ECC RAM support. Game changer for workstations in the $1000–$2000 range.
The more expensive Threadripper parts really shine when memory bandwidth becomes a bottleneck. In my experience, compiling code hasn’t been very memory bandwidth limited. However, some of my simulation tools don’t benefit much going from 8 to 16 cores with regular Ryzen CPUs because they’re memory constrained. Threadripper has much higher memory bandwidth.
Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#14Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#15Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#16[Not "real" C++ code, benchmark is for compiling 14492754 copies of a fairly simple C function]
Seems like he tried more complex examples too, but ran into roadblocks like a 2GB limit on executables and running into a commandline length limit restriction that dates back to early DOS days which made it impossible to link. Both of those problems seemed solvable if he was willing to chunk up his application into libraries, maybe 1024 files per library then linked to the main application.
Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#17>C++Builder with TwineCompile is a powerful productivity solution for multi-core machines compiling 1 million lines of code very quickly and can work better than the MAKE/GCC parallel compilation Jobs feature due to it’s deep IDE integration You're claiming this plugin has deeper IDE integration than `make`? I find that really, really difficult to believe. And if it's true, it seems like the solution is to either use…
Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#18Fun experiment. The more pedestrian 5950X or the now bargain 3950X are great for anyone doing a lot of compiling. With the right motherboard they even have ECC RAM support. Game changer for workstations in the $1000–$2000 range. The more expensive Threadripper parts really shine when memory bandwidth becomes a bottleneck. In my experience, compiling code hasn’t been very memory bandwidth limited. However, some of my…
edit: to be clearer, I'm not thinking of dedicated build machines here (hence RAID comment) but over all impact on dev time by getting local builds a lot faster.
Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#19Earlier quoted context omitted.
Seems like he tried more complex examples too, but ran into roadblocks like a 2GB limit on executables and running into a commandline length limit restriction that dates back to early DOS days which made it impossible to link. Both of those problems seemed solvable if he was willing to chunk up his application into libraries, maybe 1024 files per library then linked to the main application.
I believe this is one of the reasons for object libraries (or archives, the foo.a files on linux/unix), you can then link in all of the object files from one of those at link time without having to list them all at once. That won't get past the 2GB limit on executables but it will get past the command line length.
Re: Threadripper 3990X: The Quest To Compile 1B Lines Of C++ On 64 Cores
#20>C++Builder with TwineCompile is a powerful productivity solution for multi-core machines compiling 1 million lines of code very quickly and can work better than the MAKE/GCC parallel compilation Jobs feature due to it’s deep IDE integration You're claiming this plugin has deeper IDE integration than `make`? I find that really, really difficult to believe. And if it's true, it seems like the solution is to either use…
Make forces you to choose between being able to do full parallel builds or using recursive make, you can’t do both.
https://www.gnu.org/software/make/manual/html_node/Job-Slots...