Skip to main content

No project description provided

Project description

https://img.shields.io/pypi/pyversions/code-data-share https://img.shields.io/pypi/implementation/code-data-share https://img.shields.io/badge/platform-linux--64%20%7C%20osx--64-lightgrey

Introduction

The main goal of code-data-share-for-python is to improve the efficiency of importing python module, including time and memory footprint, by persistence of code object of imported modules with a memory-mapped file.

For more information not included in this README, e.g. detailed user and developer guide, performance results, please refer to our wiki page.

Basic Usage

code-data-share-for-python provides mechanism to determine imported packages, dump a memory mapped file from the list of packages and import packages directly from the memory mapped file.

Install

pip install code-data-share

Determine the imported packages

# tracer: list imported packages to mod.lst
PYCDSMODE=TRACE PYCDSLIST=mod.lst python -c 'import json'

Create the memory-mapped file

# dumper: create archive named mod.img from mod.lst
python -c 'import cds.dump; cds.dump.run_dump("mod.lst", "mod.img")'

Import packages from archive

# replayer
PYCDSMODE=SHARE PYCDSARCHIVE=mod.img python -c 'import json'

AppCDS in Java

The design is inspired by the Application Class-Data Sharing (AppCDS) feature, introduced in OpenJDK. AppCDS allows a set of application classes to be pre-processed into a shared archive file, which can then be memory-mapped at runtime to reduce startup time and memory footprint.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

code_data_share-0.1.0.tar.gz (41.2 kB view hashes)

Uploaded Source

Built Distributions

code_data_share-0.1.0-cp312-cp312-win_arm64.whl (17.7 kB view hashes)

Uploaded CPython 3.12 Windows ARM64

code_data_share-0.1.0-cp312-cp312-win_amd64.whl (19.2 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

code_data_share-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (19.3 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

code_data_share-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (19.4 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

code_data_share-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (17.8 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

code_data_share-0.1.0-cp312-cp312-macosx_10_9_x86_64.whl (17.5 kB view hashes)

Uploaded CPython 3.12 macOS 10.9+ x86-64

code_data_share-0.1.0-cp312-cp312-macosx_10_9_universal2.whl (27.8 kB view hashes)

Uploaded CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64)

code_data_share-0.1.0-cp311-cp311-win_arm64.whl (16.9 kB view hashes)

Uploaded CPython 3.11 Windows ARM64

code_data_share-0.1.0-cp311-cp311-win_amd64.whl (18.5 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

code_data_share-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.4 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

code_data_share-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (18.3 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

code_data_share-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (17.0 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

code_data_share-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl (16.8 kB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

code_data_share-0.1.0-cp311-cp311-macosx_10_9_universal2.whl (26.3 kB view hashes)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

code_data_share-0.1.0-cp310-cp310-win_arm64.whl (16.8 kB view hashes)

Uploaded CPython 3.10 Windows ARM64

code_data_share-0.1.0-cp310-cp310-win_amd64.whl (18.3 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

code_data_share-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.1 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

code_data_share-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (18.1 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

code_data_share-0.1.0-cp310-cp310-macosx_11_0_arm64.whl (16.8 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

code_data_share-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl (16.6 kB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

code_data_share-0.1.0-cp310-cp310-macosx_10_9_universal2.whl (25.8 kB view hashes)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

code_data_share-0.1.0-cp39-cp39-win_arm64.whl (16.9 kB view hashes)

Uploaded CPython 3.9 Windows ARM64

code_data_share-0.1.0-cp39-cp39-win_amd64.whl (18.4 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

code_data_share-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.2 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

code_data_share-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (18.2 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

code_data_share-0.1.0-cp39-cp39-macosx_11_0_arm64.whl (16.8 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

code_data_share-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl (16.7 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

code_data_share-0.1.0-cp39-cp39-macosx_10_9_universal2.whl (26.0 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

code_data_share-0.1.0-cp38-cp38-win_amd64.whl (19.0 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

code_data_share-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (19.0 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

code_data_share-0.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (18.8 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

code_data_share-0.1.0-cp38-cp38-macosx_11_0_arm64.whl (17.3 kB view hashes)

Uploaded CPython 3.8 macOS 11.0+ ARM64

code_data_share-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl (17.2 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

code_data_share-0.1.0-cp38-cp38-macosx_10_9_universal2.whl (27.1 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64)

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page