1. Do you need support for Assetto Corsa Competizione? Please use the proper forum below and ALWAYS zip and attach the WHOLE "Logs" folder in your c:\users\*youruser*\AppData\Local\AC2\Saved. The "AppData" folder is hidden by default, check "Hidden items" in your Windows view properties. If you report a crash, ALWAYS zip and attach the WHOLE "Crashes" folder in the same directory. Do not post "I have the same issue" in an existing thread with a game crash, always open your own thread. Do not PM developers and staff members for personal troubleshooting and support.
  2. As part of our continuous maintenance and improvements to Assetto Corsa Competizione we will be releasing small updates on a regular basis during the esports season which might not go through the usual announcement process detailing the changes until a later version update where these changes will be listed retrospectively.
  3. If ACC doesn't start with an error or the executable is missing, please add your entire Steam directory to the exceptions in your antivirus software, run a Steam integrity check or reinstall the game altogether. Make sure you add the User/Documents/Assetto Corsa Competizione folder to your antivirus/Defender exceptions and exclude it from any file sharing app (GDrive, OneDrive or Dropbox)! The Corsair iCue software is also known to conflict with Input Device initialization, if the game does not start up and you have such devices, please try disabling the iCue software and try again. [file:unknown] [line: 95] secure crt: invalid error is a sign of antivirus interference, while [Pak chunk signing mismatch on chunk] indicates a corrupted installation that requires game file verification.
  4. When reporting an issue with saved games, please always zip and attach your entire User/Documents/Assetto Corsa Competizione/Savegame folder, along with the logs and the crash folder (when reporting related to a crash).

Physics and FF frequency

Discussion in 'Chit Chat Room' started by jajp999, Mar 31, 2016.

  1. CPU value is for the graphics thread. It shows the relationship between the time spent in the application (CPU) and the time spent to complete a frame (FRAME TIME). Values of CPU near 100% indicate a CPU-bound system graphically.
    EX... if a frame took 16ms to complete and CPU is 50% it means that AC was able to prepare the frame in 8ms.. and the GPU took 16ms to render it. (GPU bound).. if CPU is 100% then it took the CPU 16ms to prepare the frame and the GPU is probably capable to go faster (CPU bound).
    No relationship whatsoever with the value read in task manager.

    PHY is relative to the physics thread, values above 100% indicates that the system is not able to calculate the physics in time (3ms per step) and that the game is now running slower than realtime (slowmo). Practically means there are too many AI and the CPU is not able to handle it.
     
  2. Quffy

    Quffy Alien

    Ty. Does RAM quantity also play a role in the bigger tracks like Nordschleife+Nurburgring when racing with opponents? Or if I'm getting >99% on a set CPU with 4gb ram, making it 8gb or more would lower the PHY%?
    (This over occupancy mostly appears on the grid straight at the race start, with dual core hyperthreaded, and 4gb ram, at the endurance/cup circuit, and 15 cars). Sorry for trying to squeeze all questions in two posts, but would graphics threading help with anything, like threading was introduced to physics? The card amd r9 290 runs well, I'm just bound to CPU (i3-3220) and maybe the 4gb ram too. Or could the physics also run or be shared on the gpu?
     
  3. the answer is "I dont' know", all I know is that AC is as optimized as it can.
    you want better performance you buy better hardware...it doesn't get any simpler than that.
     
  4. Quffy

    Quffy Alien

    I know, have to get on as the gaming era advances.
    Should have bought a quad core instead of dual core a few years ago. Searching on the internet "dual core vs quad core" back then told me, "almost no games are making use of quad core cpus, so dual is enough, get a good graphics card"... but then I got into sim racing :D
     
    stefanoCasillo likes this.
  5. f1webberfan

    f1webberfan Simracer

    Well I understand @Lord Kunos point - performance = better hardware, as well of that of @Quffy, as I'm in the same boat as him - not so powerful PC.

    In that respect, the efforts Kunos make to optimize the game ... my hat off to the whole team! I'm able to play the game pretty comfortably with my current config and have very decent FPS.

    So big thanks to the whole Kunos team, that they think big but also think about the people who don't have such powerful configurations. :)
    Optimization beats quantity every time. :)
     
  6. ARGT2RS

    ARGT2RS Gamer

    Most of the time, better perf = hardware is almost laughable.

    If we lived in the early 80 yes, but with multi-core CPUs it very often, if not all the time, that software does not leverage all the resources and most people find acceptable completely inefficient and software. Developing software that uses 1-2 cores for calculating anything is extremely easy, to the point that 8-9th grader could do.
    Developing software that orchestrates 10's cores is very complicated, and it is clear that ACC barely uses 2 cores.

    ACC, probably, was good then back then when they wrote the first line of code. Probably when CPUs had 1-2 cores.

    ACC has not kept up with hardware development.

    I do ML and AI research for a very large software company, and I get to have a couple of decent workstations at my desk and at home.
    My home system workstation has:
    • 2 sockets with 2 Xeon Platinum 9282 x 56 cores each
    • 512GB-DDR4
    • 3 Nvidia T4 GPUs in the MB PCIe slots and 16 T4s in the GPU bank.
    • 2 MSI GeForce RTX 2080 Ti SEAHAWK X
    And ACC pegs just 2 cores.

    It would not matter if ACC run in one of our HPC (1024 nodes, and each node is 8 times my workstation, minus the MSI cards), and ACC will use only and only 2 cores. So adding more hardware is not the answer, Kumos is asking you to spend $1000's to get marginally gains because ACC does not know how to leverage the hardware that it runs on. Period.

    If ACC spent some time and $ they could even use porting (compiler like) services to optimize their code for multi-core environments. We do this all the time.
     
  7. anthonylroy

    anthonylroy Hardcore Simmer

    Optimizing games is different from optimizing other types of software and is often more difficult, if it was easy adding two GPUS for example would increase performance by 100%, lots of technical issues to resolve
     
  8. ARGT2RS

    ARGT2RS Gamer

    I would like to understand what leads you to say this as I always eager to learn something new.
    I hope you do not mind educating me a little and answer a few questions.
    • How are thread and mutex orchestration different?
    • How are memory management and memory calls different?
    • How does "game" software leverages hardware that is so different from any other software?
    • Does game software leverage different libraries and primitives that are available and get used from weather forecasting, games like MSFT Flight Simulator, real flight, car and boat simulators, any kind of AI or ML, CFD, NASDAQ transaction and analysis software, highway modeling, geno and cancer research, neural networks, and so many other?
    • Do game software have different system calls? If so can you please point me to them, I would really like to learn about them. Interestingly enough, I had done a few live KDs while running ACC, and I could not see any special, maybe I am missing something.
     
  9. anthonylroy

    anthonylroy Hardcore Simmer

    I think ACC uses four cores , not sure about eight threads though.

    As a normal software engineer you are probably well protected against Thread management and locks and semaphores and all the other things that dingaly dangaly operating systems services provide do. If not you are not taking the best advantages of your resources.
    • How are thread and mutex orchestration different?
    1. They are not different. they are just design patterns. If your are developing real-time games, your are far more likely to understand a lot more about synchronisation patterns and the most efficient uses of such designs. As a Non gaming software engineer you are probably well protected against Thread management and locks and semaphores and all the other things that dingaly dangaly operating systems services provide . If not you are not taking the best advantages of the resources available , and wasting time.
    • How are memory management and memory calls different?
    1. If you are a developer, a generic developer , you write software using libraries, because it saves you a lot of time. If you are a games developer and you are trying get the best performance from a constricted environment, then you are forced to go into more detail and have a better understanding of how memory management works. Which can be extremely difficult in a multithreaded system
    • How does "game" software leverages hardware that is so different from any other software?
    1. This boils down to the same question, optimisation , To optimise better you have to know better (sorry just made that up). However the statement is true , If you are developing a mealtime or transactions systems , then a large number of libraries are already available to you, they solve a generic problem , with generic software. No one I know of will de-compile a transaction library to see if they can improve its efficiency. Game developers may however even attempt to modify drivers or work with driver developers to improve performance.
    • Does game software leverage different libraries and primitives that are available and get used from weather forecasting, games like MSFT Flight Simulator, real flight, car and boat simulators, any kind of AI or ML, CFD, NASDAQ transaction and analysis software, highway modeling, geno and cancer research, neural networks, and so many other?
    1. This is the thing, A good gaming house will have the necessary skill to write there own libraries
    • Do game software have different system calls? If so can you please point me to them, I would really like to learn about them. Interestingly enough, I had done a few live KDs while running ACC, and I could not see any special, maybe I am missing something.
    1.
    To be Honest, i have no real idea. The last time I ever took part in writing a game (many years ago), we did not used very little of the operating system wrote our own screen and keyboard drivers, and managed our own memory because the standard libraries where not designed for what we wanted to do. So much fun

    If you are developing a game especially a real time game. You will need to understand a lot more about these patterns than the average developer . I am a standard developer , getting on a bit but still happy developing , generic software. However I do sometimes envy game developers , the freedom to optimise is a good thing. because it actually matters.
     
  10. Rudski

    Rudski Alien

    You know what's odd about this "setup"? The complete waste of resources.
    I guess people can run their business how they want, but I couldn't imagine a well run large software company offering super high-end "take home workstations" like this.
    Why?
    You say you have a workstation both at work and home (roughly a $60 grand home workstation) and yet all you would do as a well run business is have a workstation at work and allow users to remote in from home. Or look at it from another perspective? Combine the resources of both workstations into one mega workstation and leave it at work, surely that would be a better solution.
    A well run company, using finite resources like money, wouldn't typically waste those resources by duplicating infrastructure when there's no practical need. I'm not calling you a liar but it's odd and unusual to hear large software companies do this type of thing.
    Is it a publicly listed company?
     
    Last edited: Nov 30, 2019
  11. ARGT2RS

    ARGT2RS Gamer

    Anthonylroy, I appreciate the discussion :)

    1) I would disagree in the fact that in windows, MSFT gives you a set of function calls and APIs to interact with windows and although you can get very creative, specially with system and device drivers, a developer can only interact with this given set of APIs and functions to interact with the kernel. (linux is a complete different animal).

    2) Unless you work at or for MSFT, you can't touch memory manager, period. All what a developer can do is to create its own trees, tables and keep "track" of their memory space, which is a virtualization of the real thing done by windows memory manager (if you want we can discuss this in private messages). Kind of like interacting with a hard disk, useraland apps do not get to tell the the physical addressing space.

    3) What is there more real-time/life impacting operations than CFD, weather analysis, nuclear and power plant monitoring and orchestration, flight controls from a drone to a jet fighter, autonomous driving and Stock market transactions? They all use the same set of functions and APIs.
    Game developers can not change a driver that it is not their own, and if they try they can't unless they impersonate the driver vendor and somehow get access to the vendor's certs and MSFT's WHQL's certs. Possible? Yes. Likely? Not really, because these companies are not into hacking. They might change the behavior of how a driver operates by a common set of APIs the driver provides, lets say Nvidia, provides to interact with the driver and their hardware.

    I guess my point is that MSFT and hardware vendors offer for the most part access (hardware vendors and MSFT can in occasions and under strict guidelines give you access to some private verbs) to all the necessary tools to build simple or complex software. It is up to the developer how to use them.


    Maybe tomorrow I will do a wait chain analysis and see where ACC spends all the time, but without the symbols there is not much I could derive but it should be an interesting little project.

    Back to ACC :), are there any params in one of their inis that control allocations or pools?

    BTW, it is nice to have a back and forth without egos getting in the way.
     
Similar Threads
Forum Title Date
Physics modding - Cars & Tyres Tyre Physics settings ( PIRELLI 265/645-18 DH, DHB, WH ) Jun 29, 2023
ACC Physics New physics didn't work for the BMW M4 GT3 May 2, 2023
ACC User Interface Simulation is not only the physics!!! Apr 20, 2023
ACC Blog The ACC V1.9.0 physics notes document Apr 19, 2023
Physics modding - Cars & Tyres Tyres physics, need some explanations on FZ's, Dx_REF,LS_EXP's and MULT Jan 19, 2023
Programming Language - Apps - GUI Themes Small excel tool to edit car physics Jan 15, 2023
Programming Language - Apps - GUI Themes Is it possible to change physics values in game with Python? Sep 12, 2022
ACC Troubleshooting Crashes in MP endurance race UE4 & Physics (12h) Mar 12, 2022
ACC Physics ABS problem ? Physics ? What happened here ? Dec 7, 2021
ACC Troubleshooting Сar does not move [Duplicate report from Physics] Dec 1, 2021
ACC Controls & Peripherals 400hz physics refresh rate. Nov 24, 2021
Physics Bugs & Issues Physics issue with road cars in AC 1.16.X Oct 29, 2021
Physics modding - Cars & Tyres Realistic physics? Aug 29, 2021
ACC Physics Contact/Crash Physics Apr 28, 2021
PlayStation 4 Discussions PS4 vs PC: Difference in physics Jan 10, 2021

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice