manual memory management

H. S. Teoh hsteoh at quickfur.ath.cx
Tue Jan 8 07:46:50 PST 2013


On Tue, Jan 08, 2013 at 04:31:45PM +0100, Benjamin Thaut wrote:
> Am 08.01.2013 16:25, schrieb H. S. Teoh:
[...]
> >Game engines, OTOH, are a step away from hard real-time applications,
> >where pause-the-world GCs are unacceptable. While it isn't fatal for
> >a game engine to pause every now and then, it is very noticeable, and
> >detrimental to the players' experience, so game devs generally shy
> >away from anything that needs to pause the world. For real-time apps,
> >though, it's not only noticeable, it can mean the difference between
> >life and death (e.g., in controllers for medical equipment -- pausing
> >for 1/2 seconds while the GC runs can mean that the laser burns off
> >stuff that shouldn't be burned off the patient's body).
> >
> >But then again, considering the bulk of all software being written
> >today, how much code is actually mission-critical real-time apps or
> >game engine cores? I suspect real-time apps are <5% of all software,
> >and while games are a rapidly growing market, I daresay less than
> >30-40% of game code actually needs to be pauseless (mainly just
> >video-rendering code -- code that handles monster AI, for example,
> >wouldn't fail horribly if it had to take a few extra frames to decide
> >what to do next -- in fact, it may even be more realistic that way).
> >Which, in my estimation, probably doesn't account for more than 10%
> >of all software out there. The bulk of software being written today
> >don't really need to be GC-less.
> >
> >
> >T
> >
> 
> So how much experience do you have with game engine programming to
> make such statements?
[...]

Not much, I'll admit. So maybe I'm just totally off here. But the last
two sentences weren't specific to game code, I was just making a
statement about software in general. (It would be a gross
misrepresentation to claim that only 10% of a game is performance
critical!)


T

-- 
Many open minds should be closed for repairs. -- K5 user


More information about the Digitalmars-d mailing list