I can has insta-compile?

Spike

L10: Glamorous Member
Feb 13, 2008
716
82
It will actually use as many as you have. I'm running on a 3.2GHz quad core and compiling maxes out all 4 cores at 100%, and during the compilers initialization it mentions how many threads it is going to use in parallel.

While I don't get instant builds, it's certainly quick enough that I barely have time to get a drink before its ready to play.

Yepo that's true. Almost all media compilers uses 4 cores, video, audio, 3D, etc.
 

Apom

L6: Sharp Member
Sep 14, 2008
366
65
Well, it's not the same to send:
What? Do you mean CPU registers? I don't really understand your example, but at any rate Valve would never use assembly language to write a compiler (well let's be cautious, and say "no more than 0.1% of their compiler", but even if there is that 0.1% of assembly then it's at a level where there is only one processor at work).
 

Spike

L10: Glamorous Member
Feb 13, 2008
716
82
Yes I were talking about registers, but not about assembly. All C++ code is translated to a machine language, and all machine language can be translated to assembly (or reverse). I was just saying sending 2 instructions to 1 core is different than sending 2 instructions that can be run on different cores.

It's the way the programers does the compilers and code that makes a program run on different cores. You won't use 8 or 16 cores when compiling a Valve map because I doubt Valve made the compiler to run on 8 or 16 cores.
 

MrAlBobo

L13: Stunning Member
Feb 20, 2008
1,059
219
i seriously doubt that hammer would be limited to 4 threads
primarially because ive heard they set up cpu farms to process the larger maps much quicker...cpu farms are when multiple computers all work together to compile something...If they can do that then it makes perfect sense that it can use a computer with 16 cores

Valve maps would not compile on 16 cores. Multi-thread are per core base. It's not the same a multi-thread compiler for 2 cores, 4, 8 etc. I doubt Valve made the compiler for 16 cores or 8, because they said they use Intel Corei7 940 2,93 GHz which has 4 cores.

Multithreading is on a per core basis, with the exception of the i7 which you so kindly mentioned (and some old pentium with hyperthreading)
i7s use hyperthreading to send data twice per clock cycle creating a 2nd thread, so the i7s have 4 cores yes, but they have 8 threads, 8 threads that almost hold up to the processing power of 8 cores as proved by several tests...
So...I doubt that they made their compiler run on 4 threads when their cpus can process 8 <_<
 

Spike

L10: Glamorous Member
Feb 13, 2008
716
82
Valve doesn't have the i7. They're going to use it soon. They said that on 20 February. They have been using a Core 2 Quad extreme which doesn't have that technology. (Source of info on Steam page, don't remember where)

Also compiling on different computers doesn't mean having a compiler for more than one core. What you said exists years and years ago. I remember that worked on Half Life 1, yeah, 10 years ago, when Core 2 didn't even exist. When they compile on different computers, they cut the file on parts and then they send those parts to different computers to compile (which can have 1 core, 2 or whatever you want). Then they link all those parts toghether, that's how it works. And it's a very old technology.
 
Last edited:

MrAlBobo

L13: Stunning Member
Feb 20, 2008
1,059
219
meh, ill freely admit I know very little about processor farming, just heard about it somewhere and it seemed relevant

as for the i7s...I do not keep up to date on what valve uses, it was said by you in an earlier post that they used the i7s, so I built off of that

EDIT: after a bit of research, ie a google search im led to believe that the processor farm (of today at least) functions the way I thought it did. They do not send the file to separate computers then compile them individually then combine them...It instead has one central processors assigning the tasks then the other processors contribute threads to aid in the compile...
 
Last edited:

Sel

Banned
Feb 18, 2009
1,239
2,570
Uhhh, Is hammer and the source engine even capable of addressing that many processors and that much ram anyway?

It's a 32 bit program after all.

Or am I totally off here?
 

Apom

L6: Sharp Member
Sep 14, 2008
366
65
Yes I were talking about registers, but not about assembly. All C++ code is translated to a machine language, and all machine language can be translated to assembly (or reverse). I was just saying sending 2 instructions to 1 core is different than sending 2 instructions that can be run on different cores.
Well, that is true, but not something the Valve programmers have to worry about. You are mentioning issues relevant to the development of a C++ compiler, but I fail to see how they relate to VRAD being two-threaded or multi-threaded.

It's the way the programers does the compilers and code that makes a program run on different cores. You won't use 8 or 16 cores when compiling a Valve map because I doubt Valve made the compiler to run on 8 or 16 cores.
Why would they not when it's the same thing? There are some cases of opportunistic multi-threading that are limited to a certain number of processors (I'm thinking Supreme Commander for instance - graphics engine runs in one thread and physics engine in another, so you gain large benefits with two cores, but little benefit past that). But when it comes to number crunching, you don't devise a multi-threaded solution for an arbitrary number of cores, but rather for any number of cores.
 

kwagner

L2: Junior Member
Feb 28, 2009
92
6
THis thread does raise an interesting question. If one were to buy/upgrade a machine for mapping/compiling for Valve games, what would be of greater or lesser importance? Multiple CPU cores? More RAM? Would the process take advantage of multiple Nvidia GPUs? Better to have a high clock rate on a 2 core, or slower clock rate on a quad?

(Not that I've the funds to do this on anything other than my existing desktop. Just curious.)
 

Spike

L10: Glamorous Member
Feb 13, 2008
716
82
THis thread does raise an interesting question. If one were to buy/upgrade a machine for mapping/compiling for Valve games, what would be of greater or lesser importance? Multiple CPU cores? More RAM? Would the process take advantage of multiple Nvidia GPUs? Better to have a high clock rate on a 2 core, or slower clock rate on a quad?

(Not that I've the funds to do this on anything other than my existing desktop. Just curious.)

RAM and processor are the most important things on a computer. For mapping (compiling), a quad core would be better than a faster dual core, but if you're rich a i7 3,2 GHz is your option.

And memory, for all kind of computers, should be at least DDR2 800 MHZ low timmings (don't care too much about capacity, it's the least important thing about the RAM). 1066 MHz DDR2 will make your PC pwn in all ways ( I have Corsair 4 GB 1066 MHz). But again, if you're rich get DDR3 1600 MHz.