GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — JIT/Tier 2 tracing: plans for function-entry hotness triggers (hot callbacks from C loops)? · Issue #143778 · python/cpython Closed as duplicate Closed as duplicate Copy link Labels type-featureA feature request or enhancementA feature request or enhancement DescriptionTitle: JIT/Tier 2 tracing: plans for function-entry hotness triggers (hot callbacks from C loops)? QuestionWhen experimenting with the experimental JIT (PEP 744), I got the impression that trace construction / compilation is primarily triggered by loop/backedge warmup (e.g. If that’s correct:
Why I’m asking (workloads impacted)Some real workloads execute a small Python callback many times from C-level loops, so there may be no Python-level backedge to ever warm up. Examples include:
In these cases, the callback function can be extremely hot, but a loop/backedge-only trigger would not start tracing/compilation for it. (For reference, other runtimes/JITs (e.g. Cinder) can also trigger compilation from hot functions, not only hot loops.) Minimal example (no Python loop)def key(x): return (x * 3) ^ 0x1234 data = list(range(500_000)) sorted(data, key=key) # key() is called many times from C Activity
MetadataMetadataAssigneesLabelstype-featureA feature request or enhancementA feature request or enhancement ProjectsMilestoneRelationshipsDevelopmentIssue actions |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |