Skip to content

Bench: add a polymorphic object-shape JSC workload #61

Description

@chrisbbreuer

Parent: #50
Related: #47, #49, #52, #60

Problem

The accepted comparison needed a polymorphic object workload whose hot named access crosses multiple live receiver shapes instead of only monomorphic numeric loops. polymorphic_properties now supplies that row across direct, independent steady/cold, and shared modes.

Acceptance criteria

  • Exercise at least four live receiver shapes and a real named-property read/modify/write in the timed loop.
  • Extend harness validation and document the workload and timed boundaries.
  • Preserve stable cross-engine checksums in every mode/lane count.
  • Calibrate equal job counts so every full-run engine/mode row exceeds the publication timing floor.
  • Capture and link an initial symmetric baseline before optimization.
  • Optimize only general structural engine paths with live shape/property guards and correct fallback.
  • Beat JSC in every fair direct and independent-context row.
  • Keep zig-js shared-realm scaling above 1.0x at every reported lane count.
  • Pass focused semantic/GC/no-GIL tests, the comparison harness, and the final batched full suite/TSan gate.
  • Publish the expanded report/TSV and generated README summary only after all gates pass.

Current evidence: July 15 report, raw samples, and the README scorecard.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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