Skip to content

"gix status" is slow on Windows #2296

@Byron

Description

@Byron

Here are some benchmarks that show the difference.

status-benchmarks-gix.zip

In short:

  • direct lstat checks are like 10x slower on Windows and they don't scale
  • one has to do dirlists which come with stats information for all entries
  • this is why Git has a filesystem cache that probably works exactly that way, uses dirlists when needed to provide stat information, at least on Windows.

To have fast status information on Windows, one would have to provide some sort of trait which can do caching, and which ideally is shared across threads with the ability to list multiple directories at the same time.

Research

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-WindowsWindows-specific issues

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions