Low tps in dedicated

Discussion in 'Performance Tweaking' started by Ser3195, Jun 4, 2017.

  1. With 70 users on, my server gets low tps, but I don't know why the processor only have like 20% usage.
    Do you know any way to allow the server use all the processor?
    It's an i7 with 16gb ram and ssd disk, and I allowed 10gb for the server
  2. Gaxan


    Give us a timings report. Preferably from paper spigot.
  3. Is your map fully generated? There's a good chance TPS lag could be coming from chunk generation and loading.
  4. May be… But I don't understand why it's only 18% of CPU usage, why my server does not use all the cpu :(
  5. There are many other variables for why it may be bottle necking elsewhere. On my server the hardest hitters are always chunk generation and hoppers. If using plugins like Epic world gen without pre-genning the map it makes the hits even harder.

    But like Gaxan said, If your provide a timings when these issues are happening via /timings report. People could possibly give you more insight on whats going on. :3
    • Useful Useful x 1
  6. It's possible that one (or multiple) plugins are using asynchronous threads to complex timing things, which is generally frowned upon. Another possibility is that the plugins are using Thread.sleep() for no reason
  7. electronicboy

    IRC Staff

    Minecraft is mostly single-threaded, which means that you're only going to really see spigot using a single core, as well as other plugins using async threads (which, is actually recommended, so no idea what ^ is going on about). a timings report is the only way to really see what is going on, also, for that amount of ram and number of players; https://mcflags.emc.gs
    • Like Like x 1
    • Agree Agree x 1
  8. I was just guessing. I assumed running async tasks meant that it was run on a separate thread oop
  9. electronicboy

    IRC Staff

    Async tasks are run on a separate thread, there is literally nothing wrong about that.
    • Agree Agree x 2
  10. You must not understand what i'm trying to say. The async thread is the thread where ticks are located and all the important junk. Messing with this and lagging the thread fucks up everything. This is why people dont use async unless they need to make precision timers
  11. electronicboy

    IRC Staff

    No, the "async thread" is the concept of a thread other than the "Server (main) thread", hence: it is *async*ronous to the main thread.
    the bukkit scheduler provides a nice thread pool for the async tasks, in order to allow them to execute on their own thread without touching the main server thread.

    I'd highly suggest that you at least learn base terminology before attempting to help people with performance issues.
    • Agree Agree x 1
  12. https://timings.aikar.co/?id=f2d6814c70974f1da9989d7c8c04b122

    Thank you :)