How I cut GTA Online loading times by 70%

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • GTAO_Booster_PoC

  • winsdk-10

  • I think that the author hasn't checked them all. Even this isn't checking them all.

    The MUSL C library' sscanf() does not do this, but does call memchr() on limited substrings of the input string as it refills its input buffer, so it's not entirely free of this behaviour.

    * https://git.musl-libc.org/cgit/musl/tree/src/stdio/vsscanf.c

    The sscanf() in Microsoft's C library does this because it all passes through a __stdio_common_vsscanf() function which uses length-counted rather than NUL-terminated strings internally.

    * https://github.com/tpn/winsdk-10/blob/master/Include/10.0.16...

    * https://github.com/huangqinjin/ucrt/blob/master/inc/corecrt_...

    The GNU C library does something similar, using a FILE structure alongside a special "operations" table, with a memchr() in the initialization.

    * https://github.com/bminor/glibc/blob/master/libio/strops.c#L...

    * https://github.com/bminor/glibc/blob/master/libio/strfile.h#...

    The FreeBSD C library does not use a separate "operations" table.

    * https://github.com/freebsd/freebsd-src/blob/main/lib/libc/st...

    A glib summary is that sscanf() in these implementations has to set up state on every call that fscanf() has the luxury of keeping around over multiple calls in the FILE structure. They're setting up special nonce FILE objects for each sscanf() call, and that involves finding out how long the input string is every time.

    It is food for thought. How much could life be improved if these implementations exported the way to set up these nonce FILE structures from a string, and callers used fscanf() instead of sscanf()? How many applications are scanning long strings with lots of calls to sscanf()?

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • caprine

    Elegant Facebook Messenger desktop app

  • Unfortunately I'm on Linux, and they don't seem to provide a Linux client. I did try out https://github.com/sindresorhus/caprine/, which worked really well, but I'm one of those weirdos who prefers websites to desktop apps.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts