Unified Distributed Execution

Related tags

Miscellaneousunidist
Overview

Unified Distributed Execution

The framework supports multiple execution backends: Ray, Dask, MPI and MultiProcessing.

To run tests you need to install pytest package:

pip install pytest

Run tests using command:

pytest unidist/test/

For unidist MPI backend follow additional instructions.

Comments
  • FIX-#106: Change directories to be checked by linters

    FIX-#106: Change directories to be checked by linters

    Signed-off-by: Igoshev, Yaroslav [email protected]

    What do these changes do?

    • [x] passes flake8 unidist/
    • [x] passes black unidist/
    • [x] signed commit with git commit -s
    • [x] Resolves #106
    • [x] tests passing
    • [x] module layout described at docs/developer/architecture.rst is up-to-date
    opened by YarShev 11
  • FIX-#99: Upgrade min python version

    FIX-#99: Upgrade min python version

    Signed-off-by: Igoshev, Yaroslav [email protected]

    What do these changes do?

    • [x] passes flake8 .
    • [x] passes black .
    • [x] signed commit with git commit -s
    • [x] Resolves #99
    • [x] tests passing
    • [x] module layout described at docs/developer/architecture.rst is up-to-date
    opened by YarShev 9
  • FEAT-#2: Add CLI interface for `unidist`

    FEAT-#2: Add CLI interface for `unidist`

    PR adds CLI interface for unidist. The examples of usage can be received:

    user$: python unidist/cli -h
    

    or if package is installed

    user$: unidist --help
    

    Signed-off-by: Alexey Prutskov [email protected]

    opened by prutskov 8
  • FIX-#91: Add readthedocs config file

    FIX-#91: Add readthedocs config file

    Signed-off-by: Alexey Prutskov [email protected]

    What do these changes do?

    PR adds .readthedocs.yaml configuration file. Only one difference from the main doc building flow is using python3.8 instead of using 3.7 by default. In case of using python3.7 we have documentation built failed because MPI backend in this case requires optional pickle5 package. Updating python version to 3.8 is a way to fix this.

    • [x] passes flake8 .
    • [x] passes black .
    • [x] signed commit with git commit -s
    • [x] Resolves #91
    • [ ] tests added and passing
    • [ ] module layout described at docs/developer/architecture.rst is up-to-date
    opened by prutskov 7
  • FIX-#104: Add testing py3.9 in CI

    FIX-#104: Add testing py3.9 in CI

    Signed-off-by: Alexey Prutskov [email protected]

    What do these changes do?

    • [x] passes flake8 .
    • [x] passes black .
    • [x] signed commit with git commit -s
    • [x] Resolves #104
    • [x] tests added and passing
    • [ ] module layout described at docs/developer/architecture.rst is up-to-date
    opened by prutskov 6
  • FEAT-#54 Add unidist main logo image

    FEAT-#54 Add unidist main logo image

    What do these changes do?

    Add logo to the README

    • [ ] passes flake8 .
    • [ ] passes black .
    • [ ] signed commit with git commit -s
    • [x] Resolves #54
    • [ ] tests added and passing
    • [ ] module layout described at docs/developer/architecture.rst is up-to-date
    documentation 📜 
    opened by no-ponomarev 6
  • DOCS-#88:  Update main/getting_started pages of rst docs

    DOCS-#88: Update main/getting_started pages of rst docs

    Signed-off-by: Alexey Prutskov [email protected]

    What do these changes do?

    • [x] passes flake8 .
    • [x] passes black .
    • [x] signed commit with git commit -s
    • [x] Resolves #88
    • [x] tests passing
    • [ ] module layout described at docs/developer/architecture.rst is up-to-date
    opened by prutskov 6
  • `mpi` backend can't start on Windows due to access violation

    `mpi` backend can't start on Windows due to access violation

    Unidist can't start mpi backend on Windows with the next exception:

    Log
    C:\Users\aprutsko\repositories\unidist>python unidist\cli -m pytest unidist\test\test_general.py -b mpi
    Windows fatal exception: access violation
    
    Current thread 0x00005c44 (most recent call first):
      File "<frozen importlib._bootstrap>", line 219 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 1174 in exec_module
      File "<frozen importlib._bootstrap>", line 671 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 975 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 991 in _find_and_load
      File "<frozen importlib._bootstrap>", line 219 in _call_with_frames_removed
      File "<frozen importlib._bootstrap>", line 1042 in _handle_fromlist
      File "C:\Users\aprutsko\repositories\unidist\unidist\core\backends\mpi\core\communication.py", line 18 in <module>
      File "<frozen importlib._bootstrap>", line 219 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 843 in exec_module
      File "<frozen importlib._bootstrap>", line 671 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 975 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 991 in _find_and_load
      File "C:\Users\aprutsko\repositories\unidist\unidist\core\backends\mpi\core\executor.py", line 13 in <module>
      File "<frozen importlib._bootstrap>", line 219 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 843 in exec_module
      File "<frozen importlib._bootstrap>", line 671 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 975 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 991 in _find_and_load
      File "C:\Users\aprutsko\repositories\unidist\unidist\core\backends\mpi\core\__init__.py", line 5 in <module>
      File "<frozen importlib._bootstrap>", line 219 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 843 in exec_module
      File "<frozen importlib._bootstrap>", line 671 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 975 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 991 in _find_and_load
      File "C:\Users\aprutsko\repositories\unidist\unidist\core\backends\mpi\backend.py", line 10 in <module>
      File "<frozen importlib._bootstrap>", line 219 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 843 in exec_module
      File "<frozen importlib._bootstrap>", line 671 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 975 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 991 in _find_and_load
      File "C:\Users\aprutsko\repositories\unidist\unidist\core\base\utils.py", line 88 in get_backend_proxy
      File "C:\Users\aprutsko\repositories\unidist\unidist\api.py", line 34 in make_decorator
      File "C:\Users\aprutsko\repositories\unidist\unidist\api.py", line 118 in remote
      File "C:\Users\aprutsko\repositories\unidist\unidist\test\utils.py", line 40 in <module>
      File "<frozen importlib._bootstrap>", line 219 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 843 in exec_module
      File "<frozen importlib._bootstrap>", line 671 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 975 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 991 in _find_and_load
      File "C:\Users\aprutsko\repositories\unidist\unidist\test\test_general.py", line 10 in <module>
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\assertion\rewrite.py", line 170 in exec_module
      File "<frozen importlib._bootstrap>", line 671 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 975 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 991 in _find_and_load
      File "<frozen importlib._bootstrap>", line 1014 in _gcd_import
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\importlib\__init__.py", line 127 in import_module
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\pathlib.py", line 524 in import_path
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\python.py", line 578 in _importtestmodule
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\python.py", line 500 in _getobj
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\python.py", line 291 in obj
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\python.py", line 516 in _inject_setup_module_fixture
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\python.py", line 503 in collect
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\runner.py", line 341 in <lambda>
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\runner.py", line 311 in from_call
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\runner.py", line 341 in pytest_make_collect_report
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_callers.py", line 39 in _multicall
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_manager.py", line 80 in _hookexec
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_hooks.py", line 265 in __call__
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\runner.py", line 458 in collect_one_node
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\main.py", line 808 in genitems
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\main.py", line 634 in perform_collect
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\main.py", line 333 in pytest_collection
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_callers.py", line 39 in _multicall
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_manager.py", line 80 in _hookexec
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_hooks.py", line 265 in __call__
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\main.py", line 322 in _main
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\main.py", line 269 in wrap_session
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\main.py", line 316 in pytest_cmdline_main
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_callers.py", line 39 in _multicall
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_manager.py", line 80 in _hookexec
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pluggy\_hooks.py", line 265 in __call__
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\config\__init__.py", line 162 in main
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\_pytest\config\__init__.py", line 185 in console_main
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\site-packages\pytest\__main__.py", line 5 in <module>
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\runpy.py", line 87 in _run_code
      File "C:\Users\aprutsko\.conda\envs\unidist\lib\runpy.py", line 194 in _run_module_as_main
    
    ===================================================================================
    
    bug 🦗 P1 
    opened by prutskov 6
  • FIX-#36: Serialization caches.

    FIX-#36: Serialization caches.

    Performance numbers

    plasticc: | | I_MPI 112 previous | I_MPI 112 | MPICH 112 | |----------|--------------------|-----------|-----------| | read_csv | 187,14 | 185.85539 | | | t_etl | 735,44 | 380.46509 | |

    ny_taxi: | | I_MPI 112 previous | I_MPI 112 | MPICH 112 | |----------|--------------------|-----------|-----------| | read_csv | 289,68 | 238.94134 | | | Q1 | 1,84 | 1.09677 | | | Q2 | 52,93 | 50.96434 | | | Q3 | 12,20 | 4.78096 | | | Q4 | 7,33 | 5.09975 | |

    census: | | I_MPI 112 previous | I_MPI 112 | MPICH 112 | |----------|--------------------|-----------|-----------| | read_csv | 7,73 | 6.54384 | | | t_etl | 103,75 | 81.01938 | |

    opened by no-ponomarev 5
  • FIX-#13: Busy wait MPI receive to remove unidist.get contention problem

    FIX-#13: Busy wait MPI receive to remove unidist.get contention problem

    Modin plasticc benchmark reveals heavy contention problem when using all CPU cores and MPI backend. One heavy worker task contents with unidist.get receive operation, which previously never went to sleep.

    opened by no-ponomarev 5
  • FIX-#130: Make unidist be pure Python

    FIX-#130: Make unidist be pure Python

    Signed-off-by: Igoshev, Yaroslav [email protected]

    What do these changes do?

    • [x] passes flake8 .
    • [x] passes black .
    • [x] signed commit with git commit -s
    • [x] Resolves #130
    • [x] tests passing
    • [x] module layout described at docs/developer/architecture.rst is up-to-date
    opened by YarShev 4
  • FIX-#219: Update min Ray version to 1.13.0

    FIX-#219: Update min Ray version to 1.13.0

    Signed-off-by: Igoshev, Iaroslav [email protected]

    What do these changes do?

    • [x] passes flake8 .
    • [x] passes black .
    • [x] signed commit with git commit -s
    • [x] Resolves #219
    • [x] tests passing
    • [x] module layout described at docs/developer/architecture.rst is up-to-date
    opened by YarShev 0
  • FEAT-#0000: Add new implementation of actors for multiprocessing

    FEAT-#0000: Add new implementation of actors for multiprocessing

    What do these changes do?

    • [ ] passes flake8 .
    • [ ] passes black .
    • [ ] signed commit with git commit -s
    • [ ] Resolves #?
    • [ ] tests added and passing
    • [ ] module layout described at docs/developer/architecture.rst is up-to-date
    opened by prutskov 0
  • [MPI] Shared object storage performance research

    [MPI] Shared object storage performance research

    Look at benefits and possible data transfer protocol problems for MPI backend if we use shared object storage for each node.

    • [ ] Need to find scalable representative benchmark for this.
    performance 🚀 P1 
    opened by no-ponomarev 0
  • Add documentation on execution flows of unidist with different backends

    Add documentation on execution flows of unidist with different backends

    We should add sections/pages on execution flows of unidist with different backends:

    • unidist_on_ray
    • unidist_on_dask
    • unidist_on_mpi
    • unidist_on_multiprocessing
    • unidist_on_python
    documentation 📜 P2 Epic 
    opened by YarShev 0
Releases(0.2.1)
  • 0.2.1(Nov 22, 2022)

    This release contains multiple important bugfixes for MPI backend, which makes it be more functional and stable.

    Key Features and Updates

    • Stability and Bugfixes
      • FIX-#170: Fix serialization/deserialization for Ray actors (#171)
      • FIX-#172: Fix serialization/deserialization for Dask actors (#173)
      • FIX-#174: Fix serialization/deserialization for MPI actors (#177)
      • FIX-#179: Handle None return values correctly on MPI backend (#180)
      • FIX-#175: FIX-#178: Fix nested remote calls of remote tasks and actor methods (#176)
      • FIX-#187: Make Data_ID unique for different workers on MPI backend (#188)
      • FIX-#183: Fix serialization of dict_keys for MPI backend (#184)
      • FEAT-#185: Add communication logging (#186)
      • FIX-#189: Fix Actor scheduling (#190)
      • FIX-#191: Fix pendinq response after blocking GET request (#192)
      • FIX-#195: Fix serialization for pandas and numpy objects (#196)
      • FIX-#193: Fix actor async execution (#194)
      • FIX-#197: Initialize a backend when doing unidist.put (#198)
    • Update testing suite
      • TEST-#181: Added async actor tests (#182)

    Contributors

    @YarShev @Retribution98

    Source code(tar.gz)
    Source code(zip)
  • 0.2.0(Sep 28, 2022)

    This release adds support for the dynamic spawning of MPI worker processes, contains significant refactoring of MPI backend, cut off unidist CLI, includes important updates for documentation and a bunch of bugfixes.

    Key Features and Updates

    • Stability and Bugfixes
      • FIX-https://github.com/modin-project/unidist/issues/130: Make unidist be pure Python (https://github.com/modin-project/unidist/pull/131)
      • FIX-https://github.com/modin-project/unidist/issues/133: Add support of running mpi backend via CLI on Windows (https://github.com/modin-project/unidist/pull/134)
      • FIX-https://github.com/modin-project/unidist/issues/69: Pin min msgpack version (https://github.com/modin-project/unidist/pull/135)
      • FIX-https://github.com/modin-project/unidist/issues/124: Set max_retries=0 for Ray backend (https://github.com/modin-project/unidist/pull/136)
      • FIX-https://github.com/modin-project/unidist/issues/142: Fix flake8 CI fail (https://github.com/modin-project/unidist/pull/143)
      • FIX-https://github.com/modin-project/unidist/issues/145: Synchronize Ray with latest changes (https://github.com/modin-project/unidist/pull/146)
      • FIX-https://github.com/modin-project/unidist/issues/137: Set threads_per_worker=1 for local Dask cluster (https://github.com/modin-project/unidist/pull/151)
      • FIX-https://github.com/modin-project/unidist/issues/152: Clean up MPI backend (https://github.com/modin-project/unidist/pull/153)
      • FIX-https://github.com/modin-project/unidist/issues/161: Propagate Backend.put('mpi') to MPI workers (https://github.com/modin-project/unidist/pull/162)
      • FIX-https://github.com/modin-project/unidist/issues/163: Fix unwrapping object refs and data IDs (https://github.com/modin-project/unidist/pull/164)
      • FIX-https://github.com/modin-project/unidist/issues/167: Set lowest bound for Ray versions (https://github.com/modin-project/unidist/pull/168)
    • New Features
      • FEAT-https://github.com/modin-project/unidist/issues/3: Add cluster_resources in API (https://github.com/modin-project/unidist/pull/35)
      • FEAT-https://github.com/modin-project/unidist/issues/139; REFACTOR-https://github.com/modin-project/unidist/issues/100: Implement the spawning of MPI processes dynamically (https://github.com/modin-project/unidist/pull/144)
      • FEAT-https://github.com/modin-project/unidist/issues/159: Add support for Async Actors on MPI backend (https://github.com/modin-project/unidist/pull/160)
      • FEAT-https://github.com/modin-project/unidist/issues/165: Add is_initialized feature to unidist API (https://github.com/modin-project/unidist/pull/166)
    • Refactor Codebase
      • REFACTOR-https://github.com/modin-project/unidist/issues/149: Cut off unidist CLI (https://github.com/modin-project/unidist/pull/150)
    • Documentation improvements
      • DOCS-https://github.com/modin-project/unidist/issues/128: Update installation section in docs (https://github.com/modin-project/unidist/pull/132)
      • DOCS-https://github.com/modin-project/unidist/issues/85: Add docs on running unidist with different backends (https://github.com/modin-project/unidist/pull/140)
      • DOCS-https://github.com/modin-project/unidist/issues/147: Update docs to be in line with the code base (https://github.com/modin-project/unidist/pull/148)
      • DOCS-https://github.com/modin-project/unidist/issues/154: Make documentation fail on warning (https://github.com/modin-project/unidist/pull/155)
      • DOCS-https://github.com/modin-project/unidist/issues/157: Set fail_on_warning: false (https://github.com/modin-project/unidist/pull/158)

    Contributors

    @YarShev, @prutskov, @no-ponomarev

    Source code(tar.gz)
    Source code(zip)
  • 0.1.0(Feb 1, 2022)

    This is the first release of undist, which includes support for different execution backends such as Ray, MPI, Dask, Python Multiprocessing, as well as a sequential Python backend for debugging. This release contains significant changes and upgrades to codebase, unidist's documentation, and some bugfixes.

    Key Features and Updates

    • Initial changes
    • Stability and bugfixes
      • FIX-#13: Add busy wait mpi recv to remove unidist.get contention problem
      • TEST-#20: Add linters CI (#19)
      • FEAT-#4: Add configs for unidist behavior tuning (#21)
      • FEAT-#38: Add configs for Dask cluster setup (#39)
      • FIX-#45: Add What do these changes do section in PRs description (#46)
      • FIX-#29: Throw a user-friendly error message in case pickle5 is not installed (#31)
      • FIX-#25: Throw a user-friendly error message in case mpi4py is not installed (#32)
      • FEAT-#47: Add BackendName namespace class to use instead of strings (#48)
      • FIX-#49: Add check on entry in Parameter.choices (#50)
      • FIX-#51: Use lower-case for str TypeDescriptor (#52)
      • FEAT-#2: Add CLI interface for unidist (#14)
      • FIX-#58: Add exit status when run from CLI (#59)
      • FEAT-#62: Add ValueSource enum to check source of value in Parameter (#63)
      • FIX-#60: Align default value of REDIS_PASSWORD with Ray (#61)
      • TEST-#24: Add tests run to CI (#56)
      • FIX-#76: Rename UNIDIST_OBJECT_STORE_MEMORY to (#77)
      • FIX-#71: Fix for detecting compatible types for out-of-band serialization (#74)
      • FEAT-#96: Add python-versioneer to get exact unidist version (#105)
      • FIX-#109: Fix test_get_ip for Ray backend (#110)
      • FIX-#104: Add testing py3.9 in CI (#112)
      • FIX-#118: Choose dependencies for pip install unidist[all] based on platform (#119)
      • FIX-#79: Update copyright 2021 to 2021-2022 (#80)
    • Performance enhancements
      • FIX-#36: Use data serialization caches to improve performance for MPI backend (#53)
    • Refactor Codebase
      • FIX-#16: Apply black to all project (#17)
      • FIX-#97: Remove readme file for MPI backend (#98)
    • Dependencies
      • FIX-#22: Add dependencies for development and packaging (#23)
      • DOCS-#7: Add deps for building docs (#28)
      • FIX-#33: Add black and flake8 to env files (#34)
      • FIX-#40: Get rid of pandas dependency for Ray backend (#42)
      • FIX-#43: Add mpi4py to pip distribution dependencies (#44)
      • FIX-#41: Remove Pandas package reference (#57)
      • FIX-#67: Replace mpi4py to mpi4py-mpich in pip dependencies (#68)
      • FIX-#99: Upgrade min python version (#103)
      • FIX-#121: Downgrade min supported python version to 3.7.1 (#123)
    • Documentation improvements
      • DOCS-#5: Add a contributing page for unidist (#82)
      • DOCS-#73: Add documentation page on CLI usage (#83)
      • DOCS-#37: Add rst documentation for unidist.config (#78)
      • DOCS-#6: Update and extend readme.md (#87)
      • FIX-#91: Add readthedocs config file (#92)
      • DOCS-#81: Update High-Level Execution View section (#90)
      • FIX-#94: Change docs copyright statement to Modin Authors (#95)
      • DOCS-#88: Update main/getting_started pages of rst docs (#93)
      • FEAT-#54 Add unidist main logo image (#108)
      • FIX-#111: Fix build warning for communication module (#113)
      • FIX-#114: Change readthedocs icon format (#115)
      • FIX-#116: Add PyPI badge on README.md (#117)
      • FIX-#120: Change unidist logo path to absolute (#122)

    Contributors

    @YarShev, @prutskov, @no-ponomarev

    Source code(tar.gz)
    Source code(zip)
🚀 emojimash 🚀 is a programming language with ALL THE EMOJI

🚀 emojimash 🚀 is a programming language with ALL THE EMOJI

Python Whiz 256 1 Oct 26, 2021
IOP Support for Python (Experimental)

TAGS Experimental IOP Framework for Python WARNING: Currently, this project has NO EXCEPTION HANDLING. USE AT YOUR OWN RISK! I. Introduction to Interf

1 Oct 22, 2021
Kolibri: the offline app for universal education

Kolibri This repository is for software developers wishing to contribute to Kolibri. If you are looking for help installing, configuring and using Kol

Learning Equality 564 Jan 02, 2023
aaencode for python,把python代码转换为颜文字

py-aaencode aaencode for python,把python代码转换为颜文字 compile.py: 将python编译成颜文字,编译结果有随机性,可以选择BPE词表压缩代码 compile_min.py: 最小化的编译器 compiled_min.txt: 编译得到的最小的com

11 Dec 30, 2021
Python Create Your Own Tool Series

Python Create Your Own Tool Series Hey there! This is an additional Github repository that contains the final product files for each video in my Youtu

Joe Helle 21 Dec 02, 2022
An application to see if your Ethereum staking validator(s) are members of the current or next post-Altair sync committees.

eth_sync_committee.py Since the Altair upgrade, 512 validators are randomly chosen every 256 epochs (~27 hours) to form a sync committee. Validators i

4 Oct 27, 2022
Displays Christmas-themed ASCII art

Christmas Color Scripts Displays Christmas-themed ASCII art. This was mainly inspired by DistroTube's Shell Color Scripts Screenshots ASCII Shadow Tex

1 Aug 09, 2022
TriOTP, the OTP framework for Python Trio

TriOTP, the OTP framework for Python Trio See documentation for more informations. Introduction This project is a simplified implementation of the Erl

David Delassus 7 Nov 21, 2022
Py4J enables Python programs to dynamically access arbitrary Java objects

Py4J Py4J enables Python programs running in a Python interpreter to dynamically access Java objects in a Java Virtual Machine. Methods are called as

Barthelemy Dagenais 1k Jan 02, 2023
Linux GUI app to codon optimize many single-fasta files with coding sequences , using many taxonomy ids

codon_optimize_cds_with_many_taxids_singlefasta Linux GUI app to codon optimize many single-fasta files with coding sequences, using many taxonomy ids

Olga Tsiouri 1 Jan 23, 2022
A basic DIY-project made using Python and MySQL

Banking-Using-Python-MySQL This is a basic DIY-project made using Python and MySQL. Pre-Requisite needed:-- MySQL command Line:- creating a database

ABHISHEK 0 Jul 03, 2022
Timetable scripts for python

Timetable Scripts timetable_to_json: https://beta.elektronplus.pl/timetable classes_taught_by_teacher: a.adam (aa) ['1Tc', '1Td', '3Te', '3Ti', '4Tf',

Elektron++ 2 Jan 02, 2022
Persistent/Immutable/Functional data structures for Python

Pyrsistent Pyrsistent is a number of persistent collections (by some referred to as functional data structures). Persistent in the sense that they are

Tobias Gustafsson 1.8k Dec 31, 2022
New multi tool im making adding features currently

Emera Multi Tool New multi tool im making adding features currently Current List of Planned Features - Linkvertise Bypasser - Discord Auto Bump - Gith

Lamp 3 Dec 03, 2021
A small script I made that takes any standard Decklist of magic the gathering cards and pulls all card images from scryfall at once!

A small script I made that takes any standard Decklist of magic the gathering cards and pulls all card images from scryfall at once!

15 Aug 26, 2022
oracle arm registration script.

oracle_arm oracle arm registration script. 乌龟壳刷ARM脚本 本脚本优点 简单,主机配置好oci,然后下载main.tf即可,不用自己获取各种参数。 运行环境配置 本简单脚本使用python3编写,请自行配置好python3环境和requests库。(高版

test1234455 419 Jan 01, 2023
This repository can help you made a PocketMine-MP Server with Termux apps!

Hello This GitHub repository can made you a Server PocketMine-MP On development! How to Install Open Termux Type "pkg install git && python" If python

1 Mar 04, 2022
A simple script written using symbolic python that takes as input a desired metric and automatically calculates and outputs the Christoffel Pseudo-Tensor, Riemann Curvature Tensor, Ricci Tensor, Scalar Curvature and the Kretschmann Scalar

A simple script written using symbolic python that takes as input a desired metric and automatically calculates and outputs the Christoffel Pseudo-Tensor, Riemann Curvature Tensor, Ricci Tensor, Scal

2 Nov 27, 2021
IPython: Productive Interactive Computing

IPython: Productive Interactive Computing Overview Welcome to IPython. Our full documentation is available on ipython.readthedocs.io and contains info

IPython 15.6k Dec 31, 2022
Todos os exercícios do Curso de Python, do canal Curso em Vídeo, resolvidos em Python, Javascript, Java, C++, C# e mais...

Exercícios - CeV Oferecido por Linguagens utilizadas atualmente O que vai encontrar aqui? 👀 Esse repositório é dedicado a armazenar todos os enunciad

Coding in Community 43 Nov 10, 2022