Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Gamasutra: The Art & Business of Making Gamesspacer
Performance Scaling With Cores: Introducing The SMOKE Framework
View All     RSS
May 18, 2021
arrowPress Releases
May 18, 2021
Games Press
View All     RSS







If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 

Performance Scaling With Cores: Introducing The SMOKE Framework


November 26, 2008 Article Start Previous Page 3 of 3
 

Smoke Demo at Work

To demonstrate the framework’s power, Intel built a graphical demo that allows a viewer to visualize the framework’s performance advantage. The scene depicts a farmhouse under siege by meteor strikes, which are causing raging fires to erupt in the surrounding trees (see Figure 7).

Figure 7: The Smoke demo running with all eight processing threads active.

Figure 7. The Smoke demo running with all eight processing threads active.

The Smoke demo allows the viewer to control the number of worker threads that can access jobs created by the framework. Matching the number of threads to the total number of accessible threads in a system (eight threads with the Intel Core i7 Processor) offers the best performance, but Intel’s demo allows for running on multiple iterations of thread counts in order to see the performance gains the framework provides.

Figure 7 shows the demo running with eight total threads with a frame rate of 74 fps on our Intel Core i7 Processor-based test system. You can see that all eight CPUs in the performance box are evenly loaded, and the total CPU utilization is in the upper 80 percent range. You can also see the breakdown in workload for each system in the demo, including procedural fire, trees, AI, physics and so on.

Figure 8: The same area of the demo using four threads of processing.

Figure 8. The same area of the demo using four threads of processing.

Here we reduced the thread count in Smoke from eight threads to four and with the demo set at four worker threads as in Figure 8, the system uses approximately 46 percent of the total CPU power and an average frame rate of 49 fps—a 50 percent drop from our eight-thread performance.

Figure 9a: With only two active threads the performance of the demo is affected drastically.

Figure 9a. With only two active threads the performance of the demo is affected drastically.

Figure 9b: The same work can be done with just a single worker thread, although performance is affected.

Figure 9b. The same work can be done with just a single worker thread, although performance is affected.

Figures 9a and 9b show the same scene running with two worker threads and a single worker thread, respectively; performance drops more than significantly in each downward step. The demo runs more than 6.7x faster with eight worker threads than with a single thread, which proves that with a properly implemented multi-threaded game engine developers can really push performance on systems with any number of processing cores.

What Smoke Means Today

While we might immediately jump to the conclusion that this multi-threaded framework was built with Intel’s new many-core graphics architecture in mind, adopting Smoke-like designs in today’s gaming engines has clear benefits. With the Intel Core i7 Processor now on the scene, systems with four hyper-threaded cores (and thus allowing for eight logical threads) are going to be streaming into the gaming scene. Taking advantage of that processing power is definitely a challenge, and a design similar to what we have described in this article will allow game developers to use much more of the available processing horsepower than do gaming titles today.

Intel’s software development team built Smoke simply to demonstrate that an efficiently threaded gaming engine for any number of threads is possible. While we do not expect to see game developers pick up on the design directly and port this exact framework to their own games, Intel does present the code freely to all game developers at http://Whatif.intel.com, helping to educate the market on what is possible with today’s and tomorrow’s CPU hardware.

Having software that can completely utilize the hardware in our PCs is not just a neat technology topic, but is important to current and future computing on a higher level as the demands for power-efficiency and green technologies take a front-row seat in the global market.

And while we definitely need to see increased efficiency in all areas of processing, gaming is equally important and equally lucrative: After all, what’s the use of all the work without a little play? The Intel Smoke framework is a fantastic forward-looking example of how software developers can utilize Intel hardware for the best possible user experience.


Article Start Previous Page 3 of 3

Related Jobs

SideFX
SideFX — Toronto, Ontario, Canada
[05.18.21]

3D Software Developer (Maya plugin)
Square Enix Co., Ltd.
Square Enix Co., Ltd. — Tokyo, Japan
[05.18.21]

Experienced Game Developer
Pixologic, makers of ZBrush
Pixologic, makers of ZBrush — Los Angeles, California, United States
[05.18.21]

3D Graphics Programmer
iD Tech
iD Tech — N/A, California, United States
[05.17.21]

Online STEAM Instructor/Mentor





Loading Comments

loader image