Rapid prototyping with Ogre and C++

Get answers to all your basic programming questions. No Ogre questions, please!
User avatar
Kojack
OGRE Moderator
OGRE Moderator
Posts: 7157
Joined: Sun Jan 25, 2004 7:35 am
Location: Brisbane, Australia
x 535

Re: Rapid prototyping with Ogre and C++

Post by Kojack »

However it gives me a chance to respond to this bit:
Klaim wrote:I don't know anyone able to compile Ogre fully in less than 2 minutes, with Unity build enabled.
My new pc (got it last week) can do a full release build of ogre 1.8 (56 projects, including all dependencies, samples, etc) in 1min 48sec.
:D :D
User avatar
Mikachu
Gnoll
Posts: 603
Joined: Thu Jul 28, 2005 4:11 pm
Location: Nice, France
x 35

Re: Rapid prototyping with Ogre and C++

Post by Mikachu »

Kojack wrote:My new pc (got it last week) can do a full release build of ogre 1.8 (56 projects, including all dependencies, samples, etc) in 1min 48sec.
:D :D
Lucky you ! :wink:
I'm curious about what can make compilation so fast?
CPU? RAM? SSD?
OgreProcedural - Procedural Geometry for Ogre3D
User avatar
Kojack
OGRE Moderator
OGRE Moderator
Posts: 7157
Joined: Sun Jan 25, 2004 7:35 am
Location: Brisbane, Australia
x 535

Re: Rapid prototyping with Ogre and C++

Post by Kojack »

i7 3930k cpu (hex core, 12 hyper threads) overclocked to 4.1GHz, 32GB of ram, visual studio on a samsung 840pro 512GB ssd, ogre build directory on a 1TB 10000rpm WD Velociraptor drive.
:)

Changing Freeimage and ogremain to use /MP (compile cpp files in parallel) helps a lot. The default ogre settings do projects in parallel, not cpp files. That's great for the samples, but almost everything needs ogremain so it's the bottleneck.
User avatar
Klaim
Old One
Posts: 2565
Joined: Sun Sep 11, 2005 1:04 am
Location: Paris, France
x 56

Re: Rapid prototyping with Ogre and C++

Post by Klaim »

Impressive! :D

I wish I had the money to by a new desktop, I only have a corei7 laptop available at the moment. I hope my game makes me rich enough (*wishful thinking*)
User avatar
Kojack
OGRE Moderator
OGRE Moderator
Posts: 7157
Joined: Sun Jan 25, 2004 7:35 am
Location: Brisbane, Australia
x 535

Re: Rapid prototyping with Ogre and C++

Post by Kojack »

It helps to have no life and avoid expensive vices like alcohol, cigarettes, betting on monkey knife fights, etc.
bstone
OGRE Expert User
OGRE Expert User
Posts: 1920
Joined: Sun Feb 19, 2012 9:24 pm
Location: Russia
x 201

Re: Rapid prototyping with Ogre and C++

Post by bstone »

Damn! Not betting on monkey knife fights... how didn't I think of that :lol:
User avatar
Klaim
Old One
Posts: 2565
Joined: Sun Sep 11, 2005 1:04 am
Location: Paris, France
x 56

Re: Rapid prototyping with Ogre and C++

Post by Klaim »

Kojack wrote:It helps to have no life and avoid expensive vices like alcohol, cigarettes, betting on monkey knife fights, etc.

Yeah, fortunately I don't drink nor smoke, my most important vice are lack of sport, like too much sugar and coffee.

But I'm living in France so it's a bit expensive right now, even out of Paris (that is very expensive) and I don't have a pay (unemployment fee) which makes me free to work full time on my game but don't make me rich enough to buy a desktop computer :) (also, I don't want external investissor but I could have some if I want)

That said, if I continue to eat pasta and chicken I should be able to do this...
User avatar
Zonder
Ogre Magi
Posts: 1172
Joined: Mon Aug 04, 2008 7:51 pm
Location: Manchester - England
x 76

Re: Rapid prototyping with Ogre and C++

Post by Zonder »

Klaim wrote: That said, if I continue to eat pasta and chicken I should be able to do this...
i'd try and get a vegetable in there now and again :)
There are 10 types of people in the world: Those who understand binary, and those who don't...
User avatar
Zonder
Ogre Magi
Posts: 1172
Joined: Mon Aug 04, 2008 7:51 pm
Location: Manchester - England
x 76

Re: Rapid prototyping with Ogre and C++

Post by Zonder »

Kojack wrote:i7 3930k cpu (hex core, 12 hyper threads) overclocked to 4.1GHz, 32GB of ram, visual studio on a samsung 840pro 512GB ssd, ogre build directory on a 1TB 10000rpm WD Velociraptor drive.
:)
Just wondering why you haven't put the projects on the ssd I presume it can transfer 500mb a sec or higher?
There are 10 types of people in the world: Those who understand binary, and those who don't...
Transporter
Minaton
Posts: 933
Joined: Mon Mar 05, 2012 11:37 am
Location: Germany
x 110

Re: Rapid prototyping with Ogre and C++

Post by Transporter »

Kojack wrote:i7 3930k cpu (hex core, 12 hyper threads) overclocked to 4.1GHz, 32GB of ram, visual studio on a samsung 840pro 512GB ssd, ogre build directory on a 1TB 10000rpm WD Velociraptor drive.
:)
Uhh, this a real monster of a computer. :lol: How many graphic cards are in this machine?

@Zonder
I also have a SSD and a 1 TB Seagate HDD in my notebook. I use the SSD only for Windows and the main program stuff like Office and Visual Studio. The temporary folder and the projects are on the normal HDD. It's just a security procedure, because the number of read and write operations is limited on an SSD. And compiling need a lot of them. So, moving the frequent changeing directories to a normal HDD increases the lifetime of the SSD.
User avatar
Zonder
Ogre Magi
Posts: 1172
Joined: Mon Aug 04, 2008 7:51 pm
Location: Manchester - England
x 76

Re: Rapid prototyping with Ogre and C++

Post by Zonder »

Transporter wrote:
Kojack wrote:i7 3930k cpu (hex core, 12 hyper threads) overclocked to 4.1GHz, 32GB of ram, visual studio on a samsung 840pro 512GB ssd, ogre build directory on a 1TB 10000rpm WD Velociraptor drive.
:)
Uhh, this a real monster of a computer. :lol: How many graphic cards are in this machine?

@Zonder
I also have a SSD and a 1 TB Seagate HDD in my notebook. I use the SSD only for Windows and the main program stuff like Office and Visual Studio. The temporary folder and the projects are on the normal HDD. It's just a security procedure, because the number of read and write operations is limited on an SSD. And compiling need a lot of them. So, moving the frequent changeing directories to a normal HDD increases the lifetime of the SSD.
Yeah I know the lifespan issue but I don't care on that I would just replace the drive when it died I expect to replace my drives after 2-3 years anyway.

I would actually consider mapping temp into a ram drive in kojaks installation am sure 4gb could be spared :)
There are 10 types of people in the world: Those who understand binary, and those who don't...
User avatar
Kojack
OGRE Moderator
OGRE Moderator
Posts: 7157
Joined: Sun Jan 25, 2004 7:35 am
Location: Brisbane, Australia
x 535

Re: Rapid prototyping with Ogre and C++

Post by Kojack »

i'd try and get a vegetable in there now and again
I try too, but generally fail.
Just wondering why you haven't put the projects on the ssd I presume it can transfer 500mb a sec or higher?
Yep, the 840pro is 500MB/s and insanely fast access times.
But I still don't trust the lifespan of ssd drives (although they are way better than they used to be), so I'm trying to limit the writes to it. I've moved most stuff like "my documents", my thunderbird mail profile, etc off to the velociraptor (fastest consumer sata hard drive available, can reach almost half the speed of the ssd for sequential reads and writes without the lifetime worries).
Plus having my programming work on the ssd would take up too much room. My steam games folder and all my applications will easily fill it up.

Anyway, the velociraptor (I actually bought two, I haven't plugged the second one in yet) isn't hurting the build time, I tried doing a full ogre build entirely from a ram drive (4GB of my 32GB is set as a ram drive) and it was just as fast. So it's cpu limited at the moment. If I did a non unity build then the access times on the ssd or ram drive might start making a difference.

(Be careful of the samsung 840 drive. The 840Pro is great, but the standard 840 uses a different memory type with one third of the lifespan and half the performance).
How many graphic cards are in this machine?
Just one. A leadtek geforce gtx 680 with 4GB ram.
I'm not a fan of sli/crossfire. The performance improvement doesn't seem worth the price and potential problems.

Only problem with going for a geforce is that I do tests of the ogre sdks before they are released, and as one of the only people with an ati card I can spot shader issues. All the devs have geforce it seems. But My previous pc is still running (i7 940 with ati 5870) so I can do tests. I wanted to jump ship because the 680 series finally supports triple monitor without needing two cards, and the ati drivers are pissing me off. You know those "you have 20 seconds to accept this mode change otherwise I'll revert" dialogs? The ati drivers (for me at least) do that for every change, but without actually showing a dialog. I change a res (or enable eyefinity, etc), apply, exit the catalyst control panel, start doing something else, then 20 seconds later the changes revert on their own. I need to do double changes, do the real change then a fake unwanted change, so the invisible revert undoes the fake one and leaves the real one. Over a year of that pissed me off, good bye radeon.

I should try a mingw build, see how that performs compared to visual studio. VS2010 and VS2012 suck compared to vS2008 for build speed (although their executables run faster due to better optimisation, so that's a good tradeoff I guess).
User avatar
Klaim
Old One
Posts: 2565
Joined: Sun Sep 11, 2005 1:04 am
Location: Paris, France
x 56

Re: Rapid prototyping with Ogre and C++

Post by Klaim »

Looks like you built a prototype of the next generation of consoles :mrgreen:
bstone
OGRE Expert User
OGRE Expert User
Posts: 1920
Joined: Sun Feb 19, 2012 9:24 pm
Location: Russia
x 201

Re: Rapid prototyping with Ogre and C++

Post by bstone »

Klaim wrote:Looks like you built a prototype of the next generation of consoles :mrgreen:
Nope, that will never happen to consoles! That's why I'm sticking with the PC platform for games. Can't remember the last time I played a game though... stinking slavery! :lol: