Skip to main content

A high-performance implementation of the Empirical Dynamic Modeling (EDM) framework

Project description

kEDM

build Documentation Status PyPI version

kEDM (Kokkos-EDM) is a high-performance implementation of the Empirical Dynamical Modeling (EDM) framework. The goal of kEDM is to provide an optimized and parallelized implementation of EDM algorithms for high-end CPUs and GPUs, while ensuring compatibility with the original reference implementation (cppEDM).

Following EDM algorithms are currently implemented in kEDM:

  • Simplex projection [1]
  • Sequential Locally Weighted Global Linear Maps (S-Map) [2]
  • Convergent Cross Mapping (CCM) [3]

Installation

CPU (Linux and macOS)

pip3 install kedm

NVIDIA GPU (CUDA 11.2 or later)

pip3 install kedm-11x

NVIDIA GPU (CUDA 12.0 or later)

pip3 install kedm-12x

Citing

Please cite the following papers if you find kEDM useful:

  • Keichi Takahashi, Kohei Ichikawa, Joseph Park, Gerald M. Pao, “Scalable Empirical Dynamic Modeling with Parallel Computing and Approximate k-NN Search,” IEEE Access, vol. 11, pp. 68171–68183, Jun. 2023. 10.1109/ACCESS.2023.3289836
  • Keichi Takahashi, Wassapon Watanakeesuntorn, Kohei Ichikawa, Joseph Park, Ryousei Takano, Jason Haga, George Sugihara, Gerald M. Pao, "kEDM: A Performance-portable Implementation of Empirical Dynamical Modeling," Practice & Experience in Advanced Research Computing (PEARC 2021), Jul. 2021. 10.1145/3437359.3465571

References

  1. George Sugihara, Robert May, "Nonlinear forecasting as a way of distinguishing chaos from measurement error in time series," Nature, vol. 344, pp. 734–741, 1990. 10.1038/344734a0
  2. George Sugihara, "Nonlinear forecasting for the classification of natural time series. Philosophical Transactions," Physical Sciences and Engineering, vol. 348, no. 1688, pp. 477–495, 1994. 10.1098/rsta.1994.0106
  3. George Sugihara, Robert May, Hao Ye, Chih-hao Hsieh, Ethan Deyle, Michael Fogarty, Stephan Munch, "Detecting Causality in Complex Ecosystems," Science, vol. 338, pp. 496–500, 2012. 10.1126/science.1227079

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

kedm_cuda12x-0.6.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

kedm_cuda12x-0.6.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

kedm_cuda12x-0.6.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

kedm_cuda12x-0.6.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

kedm_cuda12x-0.6.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

kedm_cuda12x-0.6.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

File details

Details for the file kedm_cuda12x-0.6.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kedm_cuda12x-0.6.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7547acd22ff045c76b4ad4311c838ad1bbd60c5cec6b86353210c12abac2d14a
MD5 d817214776bc35475ae113e77e262580
BLAKE2b-256 5ff0a2c37bb4fc549d6b20d4f98e51d04de2e5654019d95b64b7bff6c95df53e

See more details on using hashes here.

File details

Details for the file kedm_cuda12x-0.6.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kedm_cuda12x-0.6.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eead0f7c3be73e2e9c239e0515e3cd73754f4d7df4bd1ad362a9165b5c44bbab
MD5 c13de0df906db9fe220b38d804d4f57b
BLAKE2b-256 a47bbeb9f4b617d47854092e64810d8ac574c17ab20580b159c79f3171679667

See more details on using hashes here.

File details

Details for the file kedm_cuda12x-0.6.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kedm_cuda12x-0.6.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9e024880a263541b47421f83584fa80de77cd4b7511f2279fa383bf25ecd4d7a
MD5 a3c1cf0434e615f8a91ebfcc6e50e9d9
BLAKE2b-256 9f9bfee0e802008e25e3618f7bdbc9c1c54d6ba1aa252b0f22fc870b750925ec

See more details on using hashes here.

File details

Details for the file kedm_cuda12x-0.6.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kedm_cuda12x-0.6.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aec034f29d634ad2c7e72a2653be999efa675b9d16e97fed859fc80e848f3308
MD5 acfdb0cc6309d45d32ca36ddace1bf7c
BLAKE2b-256 a8a0cbc835305a759fb4996cf693f0e76d6b4652b20300f944fff405e3e0a22b

See more details on using hashes here.

File details

Details for the file kedm_cuda12x-0.6.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kedm_cuda12x-0.6.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f793b2963e7a2cc9ab2099f60ddc26f0ba6d7c3a0067861c0c8a045fc1c456b8
MD5 9cef9351ea8b7b1a3d0daae09535b7d1
BLAKE2b-256 59ce3979aebf5f9b2bf37bba33973b8aac767fb894820373d969cc8ebc3acf70

See more details on using hashes here.

File details

Details for the file kedm_cuda12x-0.6.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kedm_cuda12x-0.6.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 92d549a9c0a91fe4cf495bdc0ec7925541dcf409ddaa26a9409ef41a810fd351
MD5 c1721bd6711e0fae41bd60d9c48c48c6
BLAKE2b-256 926eb87c07b1766c3c6e7832d1f373ac03ba6845b761ab41774376749673d170

See more details on using hashes here.

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