Some 'reverse-engineering' of Zen

By: Banana_Comedown (, November 5, 2015 12:23 pm
Room: Moderated Discussions
Jukka Larja ( on November 5, 2015 3:51 am wrote:

> Well, my guess is that you just have more narrow definition for AAA games than I do. Some
> of them certainly made a great use of each console's special cababilities, especially exclusive
> titles, but that seems to have been more exception than a rule. Many of the big games aren't
> particularly good looking at all (think of all the crap that gets rushed out for Christmas
> or movie premier), but you could of course argue that those aren't AAA at all.
> (Definition of what makes an AAA game is murky. I mostly consider budget (including marketing budget),
> some people seem to consider only success (which makes many mobile games technically AAA), some
> think that there's a certain technical and artistic quality required, which would for example exemp
> all Bioware's recent games :) . Or you can require of combination of all the above.)

That's a touch mean to Bioware! =) This is probably a meandering topic best addressed for another day, In this context I was driving at exclusive titles or big budget FPS multi-platform.

> Anyway, running code better suited for GPU on CPU just because you happen to have abundance of
> CPU resources and too little GPU isn't what I would call "well threaded code". It may be ingenious
> on console, but it doesn't make the game require or even run better on octa-core PC.

It's quite fascinating what was done to in this regard to free up GPU time in the last generation consoles but I introduced that really as a point of context. Getting the very highest possible utilisation out of the console hardware implicitly means leaving no CPU stone unturned.

> The efforts to avoid cache misses help 3.8 GHz i3 too. Consoles do have much more streamlined graphics
> pipeline (and whole OS too) and much better facilities to offload stuff for GPU (if for nothing
> else, then just because on PC you want to support low end and older hardware too). I'm not trying
> to dispute the huge benefit you get from optimizing the game for one target and only having to worry
> about (and optimize) a single code path.

Fair enough

> Much of the effect is also cultural. On consoles many games
> are rendered below screen resolution or variable resolution to stay at decided FPS. For whatever
> reason, such techniques are frowned upon in PC world and considered cheating.

I think the problem in the PC space is first and foremost one of drivers and compatibility concerns. I can see a nightmare scenario akin to Rage (opengl title released a few years ago with a laundry list of rendering issues) where a title has it's sales and reputation torpedoed by early technical issues

> Anyway, PS4 and Xbox One having 6 core CPU's doesn't automatically mean that PC gamer must get a hex-core
> or octo-core to achieve similar performance.

Very true

If PC port is done badly (or, to use more console friendly
> way to say the same thing, a quote from you: "The threading models were not feasibly transferable to an
> x86 CPU and so 'basic' versions of ingenious schemes were put in place for the move to the Windows space,
> hence the poor multicore awareness often displayed in PC versions."), then nothing will help, and it's
> just better to buy the console rather than pour hundreds of euros to faster CPU and GPU. If port is done
> even moderately well, then quad-core i5 or even dual-core i3 should be more than enough.

Exactly. Some ports are literally by-the-numbers. The Final Fantasy games are bad culprits. In the PC space the 5-6-7 threads of console versions are not needed so they do not get transferred.

> -JLarja

< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Some 'reverse-engineering' of Zenjuanrga2015/10/03 03:48 AM
  Some 'reverse-engineering' of ZenHeikki Kultala2015/10/03 07:01 AM
    Some 'reverse-engineering' of Zenitsmydamnation2015/10/03 02:47 PM
      Some 'reverse-engineering' of ZenAnders2015/10/03 10:04 PM
        Some 'reverse-engineering' of ZenContrarian2015/10/04 10:53 AM
          Some 'reverse-engineering' of ZenJukka Larja2015/10/05 08:15 AM
            Some 'reverse-engineering' of Zenmpx2015/10/05 08:37 AM
              Some 'reverse-engineering' of ZenContrarian2015/10/25 11:25 AM
                Some 'reverse-engineering' of Zenitsmydamnation2015/10/26 12:49 AM
                Some 'reverse-engineering' of Zenjuanrga2015/10/29 01:16 AM
                  Some 'reverse-engineering' of Zenanon2015/10/30 05:54 AM
                    Some 'reverse-engineering' of Zenjuanrga2015/10/30 09:37 AM
                    POWER8 load/store unitsGabriele Svelto2015/10/30 05:34 PM
                Some 'reverse-engineering' of Zenlurker2015/10/29 02:12 PM
                  Some 'reverse-engineering' of ZenDavid Kanter2015/10/29 11:06 PM
                    Some 'reverse-engineering' of Zenlurker2015/10/30 01:39 AM
                      Some 'reverse-engineering' of ZenGabriele Svelto2015/10/30 02:14 AM
                        Some 'reverse-engineering' of Zenlurker2015/10/30 02:41 AM
                      Some 'reverse-engineering' of Zendmcq2015/10/30 04:12 AM
                        Some 'reverse-engineering' of Zenlurker2015/10/30 04:56 AM
                          Some 'reverse-engineering' of Zendmcq2015/10/30 05:09 AM
                            Some 'reverse-engineering' of Zennone2015/10/30 05:16 AM
                          Some 'reverse-engineering' of ZenDavid Kanter2015/10/30 07:16 AM
                            Some 'reverse-engineering' of Zenlurker2015/10/30 07:44 AM
                          Some 'reverse-engineering' of Zenjuanrga2015/10/30 12:00 PM
                            AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)Heikki Kultala2015/10/30 02:45 PM
                              AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)juanrga2015/10/31 05:20 AM
                                AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)Heikki Kultala2015/10/31 01:19 PM
                                  AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)juanrga2015/11/01 06:41 AM
                                    AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)Anne O. Nymous2015/11/01 08:39 AM
                                AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)Matthias Waldhauer2015/11/02 12:26 PM
                                  AVX and 128-bit FPUs in Zen(Re:Some 'reverse-engineering' of Zen)juanrga2015/11/03 02:42 AM
                            Some 'reverse-engineering' of ZenMatthias Waldhauer2015/11/02 10:39 AM
                        Some 'reverse-engineering' of Zenbakaneko2015/10/31 06:28 AM
                          Some 'reverse-engineering' of Zendmcq2015/10/31 07:19 AM
                            Some 'reverse-engineering' of ZenJukka Larja2015/10/31 08:21 AM
                            Some 'reverse-engineering' of Zenbakaneko2015/10/31 09:23 AM
                              Some 'reverse-engineering' of Zendmcq2015/10/31 03:12 PM
                                Some 'reverse-engineering' of Zenbakaneko2015/10/31 04:25 PM
                                  Some 'reverse-engineering' of Zendmcq2015/11/01 06:36 AM
                                    Some 'reverse-engineering' of Zenbakaneko2015/11/01 09:11 AM
                                      Some 'reverse-engineering' of Zendmcq2015/11/01 09:27 AM
                                        Some 'reverse-engineering' of Zenbakaneko2015/11/01 02:35 PM
                                          Some 'reverse-engineering' of Zendmcq2015/11/01 03:52 PM
                                            Some 'reverse-engineering' of Zenbakaneko2015/11/03 02:17 AM
                                              Some 'reverse-engineering' of Zendmcq2015/11/03 03:17 AM
                  Some 'reverse-engineering' of Zenjuanrga2015/10/30 11:43 AM
                    Some 'reverse-engineering' of Zenlurker2015/10/30 01:09 PM
                      Some 'reverse-engineering' of Zenjuanrga2015/10/31 05:58 AM
                        Some 'reverse-engineering' of Zenlurker2015/10/31 07:07 AM
                          Some 'reverse-engineering' of Zenjuanrga2015/10/31 11:50 AM
                            Some 'reverse-engineering' of ZenPoindexter2015/10/31 01:47 PM
                              Some 'reverse-engineering' of Zenlurker2015/10/31 03:06 PM
                                Some 'reverse-engineering' of ZenPoindexter2015/10/31 04:37 PM
                                  Some 'reverse-engineering' of Zenlurker2015/11/01 02:46 AM
                                  Some 'reverse-engineering' of Zenjuanrga2015/11/01 07:16 AM
                                    Some 'reverse-engineering' of ZenMaynard Handley2015/11/01 05:33 PM
                                      Some 'reverse-engineering' of Zenjuanrga2015/11/02 04:06 AM
                                        Zen transistor countHeikki Kultala2015/11/04 12:30 AM
                                          Zen transistor countjuanrga2015/11/05 04:34 AM
                                    Some 'reverse-engineering' of ZenSymmetry2015/11/02 05:56 AM
                                      Some 'reverse-engineering' of ZenDavid Hess2015/11/02 06:16 AM
                                      Some 'reverse-engineering' of Zennobody2015/11/02 07:19 AM
                                        Some 'reverse-engineering' of ZenJukka Larja2015/11/02 08:34 PM
                                          Some 'reverse-engineering' of Zennobody2015/11/03 12:35 AM
                                            Some 'reverse-engineering' of ZenJukka Larja2015/11/03 01:41 AM
                                              Some 'reverse-engineering' of Zennobody2015/11/03 04:10 AM
                                                Some 'reverse-engineering' of ZenJukka Larja2015/11/04 01:52 AM
                                            Some 'reverse-engineering' of ZenKlimax2015/11/03 01:47 AM
                                              Some 'reverse-engineering' of Zennobody2015/11/03 03:19 AM
                                                Some 'reverse-engineering' of ZenKlimax2015/11/03 11:09 AM
                                          Some 'reverse-engineering' of ZenBanana_Comedown2015/11/04 10:17 AM
                                            Some 'reverse-engineering' of ZenJukka Larja2015/11/05 02:51 AM
                                              Some 'reverse-engineering' of ZenBanana_Comedown2015/11/05 12:23 PM
                                      Some 'reverse-engineering' of Zenjuanrga2015/11/03 03:13 AM
                                Some 'reverse-engineering' of Zennobody2015/10/31 07:16 PM
                                  Some 'reverse-engineering' of Zenlurker2015/11/01 02:48 AM
                                    Some 'reverse-engineering' of Zensylt2015/11/01 03:07 AM
                                    Some 'reverse-engineering' of Zennobody2015/11/01 10:49 AM
                                  Some 'reverse-engineering' of Zenmd2015/11/01 12:06 PM
                                    Some 'reverse-engineering' of Zenblu2015/11/01 12:59 PM
                                      Some 'reverse-engineering' of Zenjuanrga2015/11/02 04:10 AM
                              Some 'reverse-engineering' of Zenjuanrga2015/11/01 06:00 AM
                                Some 'reverse-engineering' of ZenPoindexter2015/11/01 08:25 AM
                                  Some 'reverse-engineering' of Zenjuanrga2015/11/02 03:47 AM
                                    Some 'reverse-engineering' of ZenPoindexter2015/11/02 04:39 AM
                                      Some 'reverse-engineering' of Zenjuanrga2015/11/02 12:26 PM
                                        Some 'reverse-engineering' of ZenDan Downs2015/11/02 02:12 PM
                                          Some 'reverse-engineering' of Zenjuanrga2015/11/03 02:51 AM
                            Some 'reverse-engineering' of Zenlurker2015/10/31 02:57 PM
                              Some 'reverse-engineering' of Zenjuanrga2015/11/01 06:26 AM
                                Some 'reverse-engineering' of ZenHeikki Kultala2015/11/01 08:57 AM
                                  Some 'reverse-engineering' of ZenMaynard Handley2015/11/01 05:39 PM
                              Some 'reverse-engineering' of ZenUngo2015/11/01 01:05 PM
                  Some 'reverse-engineering' of Zenquzhujian2015/10/31 09:39 AM
                  Some 'reverse-engineering' of ZenPoindexter2015/11/04 05:10 AM
                    Some 'reverse-engineering' of Zenlurker2015/11/05 12:54 PM
                      Some 'reverse-engineering' of Zennobody2015/11/05 02:28 PM
                      The sad status of tech mediajuanrga2015/11/06 04:19 AM
                        The sad status of tech mediaJoel2015/11/06 05:45 PM
                        The sad status of tech mediaMatthias Waldhauer2015/11/07 02:12 PM
                          The sad status of tech mediaJoel2015/11/07 04:40 PM
Reply to this Topic
Body: No Text
How do you spell tangerine? ūüćä