Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

py/map.c: Add a cache of bytecode location to map position. #7680

Closed
wants to merge 7 commits into from

Commits on Sep 15, 2021

  1. py/vm.c: Add a fast path for LOAD_ATTR on instance types.

    Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
    jimmo committed Sep 15, 2021
    Configuration menu
    Copy the full SHA
    e8aff00 View commit details
    Browse the repository at this point in the history
  2. py/map.c: Add a cache of (map+index) to map position.

    This is an alternative to the bytecode caching (which is incompatible
    with bytecode-in-ROM).
    
    Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
    jimmo committed Sep 15, 2021
    Configuration menu
    Copy the full SHA
    946f0ae View commit details
    Browse the repository at this point in the history
  3. stm32: Enable LOAD_ATTR fast path.

    Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
    jimmo committed Sep 15, 2021
    Configuration menu
    Copy the full SHA
    be62b44 View commit details
    Browse the repository at this point in the history
  4. stm32: Enable map lookup caching on STM32 (>M0).

    Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
    jimmo committed Sep 15, 2021
    Configuration menu
    Copy the full SHA
    807d7e5 View commit details
    Browse the repository at this point in the history
  5. unix: Enable LOAD_ATTR fast path.

    Enabled for all variants except minimal.
    
    Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
    jimmo committed Sep 15, 2021
    Configuration menu
    Copy the full SHA
    37cc3f3 View commit details
    Browse the repository at this point in the history
  6. unix: Enable map lookup caching.

    Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
    jimmo committed Sep 15, 2021
    Configuration menu
    Copy the full SHA
    82cd216 View commit details
    Browse the repository at this point in the history
  7. top: Remove MICROPY_OPT_CACHE_MAP_LOOKUP_IN_BYTECODE.

    This feature originally provided a significant performance boost for Unix,
    but wasn't able to be enabled for MCU targets, and added significant extra
    complexity to generating .mpy files. The equivalent performance gain is
    now provided by MICROPY_OPT_LOAD_ATTR_FAST_PATH and
    MICROPY_OPT_MAP_LOOKUP_CACHE.
    
    See micropython#7680 for discussion.
    
    Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
    jimmo committed Sep 15, 2021
    Configuration menu
    Copy the full SHA
    033ed8d View commit details
    Browse the repository at this point in the history