VMPI Anyone?

teddyruxpin

Sr. Hygiene Technician
Mar 24, 2008
83
26
http://developer.valvesoftware.com/wiki/Vmpi

Anyone here hav experience with VMPI? I am really getting tired of waiting for my maps to build so I am considering tossing up a VMPI cluster using VMWare ESX and Windows on 4-8 Dual Opteron hosts at my DC. Anyone here worked with it and have any sort of problems or recommendations on the setup?

Thanks,

Jeremy
 
Dec 25, 2007
566
440
I've never heard of it -- but there are ways to improve the speed that your map builds:

1. Only run VVIS and VRAD when you need to; building even a complex map with just VBPS is very fast indeed. Of course, this means the whole map will be visible (if you skipped VVIS), and rendered with fullbright (if you skipped VRAD), but this is not really an issue if you're working on brushwork or detail and props.

2. Use the Cordon tool to surround the part of the map you're working on. Then only that portion of the map will be built. Particularly if you're working on lighting, this can massively speed up the compile time, as only that small part of the map will need to be lit by VRAD.

If your map is pathologically slow to compile, then it's time to optimise: Make sure your map is divided into rooms which can't see each other (as far as possible); turn geometry which doesn't affect visibility into func_detail; make sure your lights have a reasonably limited spread and angle; and so on.
 

efciem

L69: Deviant Member
Mar 31, 2008
69
6
consider batch files

I'm not sure if your tired of waiting for them to compile because you want to see the end result of a portion,. or if you dont want to wait because your PC becomes unusable during the compile process.. or you cant work on your map while its compiling.. or all of the above...

but if you skip using the compiling options in hammer, and create a batch file for the compile process instead..
this enables you to compile via a command prompt window and still use hammer to work on your map while it compiles ( obviously changes made during compile wont be present till you recompile.

But this does free up your PC for other uses while compiling in the background.

Obviously CPU utilization will be within border limits depending on the speed of your PC...

But you can use process managers to set priority levels to knock your batch compile back a few priorities to make your pc more functional while it compiles.

I do this regularly and find placing the batch processes in the background on a medium priority leaves my pc able to continue being used to work on maps and even Models in 3dsmax etc..

very helpful
 

teddyruxpin

Sr. Hygiene Technician
Mar 24, 2008
83
26
I've never heard of it -- but there are ways to improve the speed that your map builds:

1. Only run VVIS and VRAD when you need to; building even a complex map with just VBPS is very fast indeed. Of course, this means the whole map will be visible (if you skipped VVIS), and rendered with fullbright (if you skipped VRAD), but this is not really an issue if you're working on brushwork or detail and props.

If I build this map in question it takes roughly 12-14 mins in 'fast' mode for both VVIS and VRAD. If I compile it in 'normal' mode it spikes to 14-24 hours depending on the number of changes. I am working now on re-aligning everything on the 2D grids to help cut down the number of cuts in the map and also func_detailing everything I can.


2. Use the Cordon tool to surround the part of the map you're working on. Then only that portion of the map will be built. Particularly if you're working on lighting, this can massively speed up the compile time, as only that small part of the map will need to be lit by VRAD.

I am going to start doing this now. Hard part is I am trying to test a cannon of sorts that fires the player across the map which is kinda large. I will see if I can somehow make this work to speed up the process. I did reduce the size of my map in another revision and made a sand box which has help a tonne when I want to make a smaller brush model / buildings etc and then copy them into my larger map once I cleaned them up of smaller brushes, set the textures to nodraw etc.

If your map is pathologically slow to compile, then it's time to optimise: Make sure your map is divided into rooms which can't see each other (as far as possible); turn geometry which doesn't affect visibility into func_detail; make sure your lights have a reasonably limited spread and angle; and so on.

Yes I have been learning about this all week now and have been studying up on func_detail, hints, occluders and everything else I can do to speed this up. There is some big design flaws in the map that I need to work around the biggest being it is one big massive room with a very high ceiling and wide open space. I have tried to make a larger building in the center to cut down the view around the rest of the map recent and reduced the size of the ceiling. I am also considering adding some distance fog to help out. I am curiuos what size hint brushes I should be using in the larger area. Is it OK to make brushes over 1024 units for hints? Will it help any or hurt more.

I'm not sure if your tired of waiting for them to compile because you want to see the end result of a portion,. or if you dont want to wait because your PC becomes unusable during the compile process.. or you cant work on your map while its compiling.. or all of the above...

but if you skip using the compiling options in hammer, and create a batch file for the compile process instead..
this enables you to compile via a command prompt window and still use hammer to work on your map while it compiles ( obviously changes made during compile wont be present till you recompile.

But this does free up your PC for other uses while compiling in the background.

Obviously CPU utilization will be within border limits depending on the speed of your PC...

But you can use process managers to set priority levels to knock your batch compile back a few priorities to make your pc more functional while it compiles.

I do this regularly and find placing the batch processes in the background on a medium priority leaves my pc able to continue being used to work on maps and even Models in 3dsmax etc..

very helpful

I am waiting for them to finish processing because I want to see the end results and playtest them. I am going to setup the batch compling now and will likely also setup the VMPI since i do have the spare hardware sitting online its not that hard to try out.

Strangest thing is that before I made a recent resize to the entire map the compile time in 'normal' mode was around 23 mins it is now over 14+ hours. Any tips on finding what the cause of this is? I am already viewing the map with portals loaded to fix up the nasty areas that are cut up way to badly and I am going to use the glview to see it even closer but I feel there has to be something else wrong for such a large jump. I have also ran 'alt+p' numerous times to assure there is no problems with the map also and fixed any errors I could find.

Thanks for the tips so far. I am going to try out VMPI later this week once I can get it loaded in my test lab. Will be nice to try and toss a larger map at it with 4-8 Dual Core Dual Opterons working as one to build it :). May just need to ask a few of you for a bigger map to test with it if it plows through mine.


-Teddy
 

teddyruxpin

Sr. Hygiene Technician
Mar 24, 2008
83
26
Update for anyone interested.

I am not using VMPI yet but I was able to fix the issues with my map that was causing it to take from 8-36 hours to complete the vvis section. It appears in my godly wisdom when I went to resize the map blindly on all 3 axis I did not consider what it would do for keeping everything 'on grid'. So after a very tediuos day of fixing everything and putting it on grid. Setting up 'func_detail' and rebuilding / combining or eliminating brushes I can now compile the same map in 18 mins as 'normal' settings and 17 mins in 'fast' settings. Needless to say I am very happy with the results and will not blindly 'Select All' + Resize a map by hand again.

However I do plan to try out VMPI still and may need a 'big' map to try it with. If anyone is willing to toss me their VMF I can see how quickly it can crank it out.

-Teddy
 

Earl

L6: Sharp Member
Dec 21, 2007
284
38
Yeah, thats generally the case. If your map is taking so long to compile that its making you consider distributed processing, then there probably a problem on your end.