Tasty Technology! By Tim Scarfe. Wednesday, November 15, 2006 - 02:23 [#]
QuakeCon 06: John Carmack Keynote AddressThis evening I had the great pleasure of watching John Carmack go into detail about various technical issues pertaining to:
This video really resonated with me and it touches on many relevant issues that are going to become increasingly prevalent in the near future. At Dot Net Solutions we tend to write business middleware and use high level languages and object frameworks. Much of our stuff runs single threaded and when we do multi-threaded apps they're "coarsely" threaded. The kind of parallelism John is talking about (computationally intensive applications) is seriously non-trivial and would soon hit diminishing returns when you ramp up the cores anyway. While some applications spread out nicely over multiple processors; games are usually an example of processing where split items of execution require constant synchronisation. John points out that we can't expect much more brute force performance from processors; and we may only expect to get another single order of magnitude before hitting limits. The near future will see 4 and 8 core processors and contrary to what some non-techie people may believe; it will not mean 4 or 8 times the performance. Not even close. This came at a good time for me because only last week Anandtech posted a great parallelism article about how Valve software are trying to solve this problem in their next game. We had quite the little e-mail thread in the office about it at the time. An interesting paper about programming Threads in C# (Andrew D. Birrell) that Mike Taulty linked to some time back. Multi-threaded programming may seem easy, but it's not. Copyright Tim Scarfe © 1999-2006. All rights reserved. |