Skip to content

Add user-documentation for isprecompilable #411

@charleskawczynski

Description

@charleskawczynski

Over at Clima we're running into some latency issues, and a lot of our code seems to be, according to the docs, not "naively precompilable". We generated flame graphs using @snoop_inference, but most of them are red. There isn't really any mention of what conditions are needed to make code precompilable.

Our code satisfies a lot of other important properties:

  • it's type stable as I can see (we pass JET tests)
  • not allocating
  • No type piracy
  • we've reduced loads of method invalidations

Any tips are greatly appreciated.

We have experiments that, as far as I can tell, result in the compiler allocating ~100 GB of memory and takes ~7 minutes to compile for the first time (99% of the time is compilation). I can't easily make a "simple reproducer" for this, but we are definitely experiencing development pains as this is difficult to develop with.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions