SUBSTANCE ENGINE

Discussion in 'Console Technology' started by Shortbread, Dec 19, 2013.

  1. ERP

    ERP
    Veteran

    Joined:
    Feb 11, 2002
    Messages:
    3,669
    Likes Received:
    49
    Location:
    Redmond, WA
    While that may be true, the more interesting question is why, it should be relatively straight forward for any cross platform dev to run a set of tests and determine that.
    My guess would be some overhead from the hypervisor, or possibly some weird timing quirk with the bus.

    In terms of compiler optimizations, the MS compiler is not particularly stellar, it does some things well, but others not so much.
    Optimizing for modern processors is hard, and in some cases less that obvious, I recently saw a case where calling a function to increment a memory resident variable was faster than just incrementing it in line because the write is attempted speculatively by the processor which fails and has to be rescheduled the function call gives enough dead time for the write to succeed, so doesn't have the overhead of the reschedule and so runs faster.
     
  2. upnorthsox

    Veteran

    Joined:
    May 7, 2008
    Messages:
    2,106
    Likes Received:
    380

    Good observation

    Hhmmm...

     
  3. MJP

    MJP
    Regular

    Joined:
    Feb 21, 2007
    Messages:
    566
    Likes Received:
    187
    Location:
    Irvine, CA
    That's some pretty poor reasoning, IMO. If you have some particularly strong evidence proving that Microsoft's compiler generally produces faster-performing code on Jaguar, then you should provide it.
     
  4. Globalisateur

    Globalisateur Globby
    Veteran Subscriber

    Joined:
    Nov 6, 2013
    Messages:
    4,592
    Likes Received:
    3,412
    Location:
    France
    You forget the most probable cause: number of cores that games can use. 7 or 7.5 cores available for games with the PS4 versus 6 for X1 would easily explain the difference in the Substance test.

    We have a hint with Battlefield 4 which has been announced taking advantage of 8 cores when I am sure on PC 8 cores are never available for games because one core (at least) must be reserved for the OS.
     
  5. pjbliverpool

    pjbliverpool B3D Scallywag
    Legend

    Joined:
    May 8, 2005
    Messages:
    9,237
    Likes Received:
    4,260
    Location:
    Guess...
    As far as I'm aware there is no specific core reservation for the OS on PC's. The OS simply uses as much or as little of the CPU as it requires. It's one of the advantages of not having a guaranteed performance level.
     
  6. Shifty Geezer

    Shifty Geezer uber-Troll!
    Moderator Legend

    Joined:
    Dec 7, 2004
    Messages:
    44,106
    Likes Received:
    16,898
    Location:
    Under my bridge
    And one of the disadvantages is the OS can come along and take resources away causing stutters and framedrops in your game at random. The guaranteed service is an important part of the console experience which'll explain higher reservations that can be reduced over time.
     
  7. macabre

    Regular

    Joined:
    Jul 25, 2005
    Messages:
    707
    Likes Received:
    14
    Location:
    Porta Hercynia
    Also depends on the Quality of the OS. With a mess like Vista that even slows itself down you would have to disable all the stuff you don`t want manually.
     
  8. pjbliverpool

    pjbliverpool B3D Scallywag
    Legend

    Joined:
    May 8, 2005
    Messages:
    9,237
    Likes Received:
    4,260
    Location:
    Guess...
    That's true but I'm just pointing out its not a win/win whichever option you go with - one has the potential for the OS to interfere with game performance and the other has the potential to waste CPU performance when the OS isn't using it.

    That said, is it possible to manually reserve threads in Windows for specific tasks?
     
  9. DSoup

    DSoup Series Soup
    Legend Subscriber

    Joined:
    Nov 23, 2007
    Messages:
    16,785
    Likes Received:
    12,697
    Location:
    London, UK
    If by threads you mean a logical processor then I'm fairly sure that the Windows kernel does not support this. If you need guaranteed access to a processor right now then you can set your process thread priority class to REALTIME and it's priority level to TIME_CRITICAL and Windows will do the rest, including sidelining anything else with a lower priority.

    However games generally do not run at higher [than NORMAL] priorities on Windows.
     
  10. Shortbread

    Shortbread Island Hopper
    Legend

    Joined:
    Jul 1, 2013
    Messages:
    5,632
    Likes Received:
    4,921
    I'm wondering why the simplest explanation is also being overlooked as well?! It's makes more sense for the PS4 not to reserve any Jag-cores. Given PS4 GPU specs, it would be somewhat odd to limit its potential by being CPU bound by imposed limits of core reservations. PS4 OS is pretty much PSP/Vita/SonySmartTV with glossier lipstick on, IMHO. I'm not saying the OS doesn't reserve any time slices, or a small percentage across 1 or 2 cores... but a full 2 reserved for OS needs seems somewhat ridiculous in the PS4 case.

    I'm more inclined to believe the OS is primarily being handled by the ARM processor, only needing the Jaguar assistance for more meatier task, like game/socialApp interactions.

    There have been two vetted Devs, who mentioned that the PS4 CPU has more potential to work with - that doesn't sound like a compiler/mem-timing thing... that sounds like more hardware (CPU in this case) is available to use. But I'm making assumptions, and I hate assumptions, so I will wait until Sony or a PS4 Developer officially states "whats going on".
     
  11. fxtech

    Newcomer

    Joined:
    Apr 23, 2003
    Messages:
    77
    Likes Received:
    5
    offtopic but you can change cpu affinity to all the running process and set cpu affinity to your thread to the cpu not used by other procecess
     
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...