Skip to main content

Python actor framework for heterogeneous computing.

Project description


Python actor framework for heterogeneous computing.

PyPI Latest Release Coverage Build Status License

What is actor

Writing parallel and distributed programs is often challenging and requires a lot of time to deal with concurrency issues. Actor model provides a high-level, scalable and robust abstraction for building distributed applications. It provides several benefits:

  • Scalability: Actors easily scale across nodes. The asynchronous, non-blocking nature of actors allows them to handle huge volumes of concurrent tasks efficiently.
  • Concurrency: The actor model abstracts over concurrency, allowing developers to avoid raw threads and locks.
  • Modularity: An actor system decomposes naturally into a collection of actors that can be understood independently. Actor logic is encapsulated within the actor itself.

Why Xoscar

Xoscar implements the actor model in Python and provides user-friendly APIs that offer significant benefits for building applications on heterogeneous hardware:

  • Abstraction over low-level communication details: Xoscar handles all communication between actors transparently, whether on CPUs, GPUs, or across nodes. Developers focus on application logic rather than managing hardware resources and optimizing data transfer.
  • Flexible actor models: Xoscar supports both stateful and stateless actors. Stateful actors ensure thread safety for concurrent systems while stateless actors can handle massive volumes of concurrent messages. Developers choose the appropriate actor model for their needs.
  • Batch method: Xoscar provides a batch interface to significantly improve call efficiency when an actor interface is invoked a large number of times.
  • Advanced debugging support: Xoscar can detect potential issues like deadlocks, long-running calls, and performance bottlenecks that would otherwise be nearly impossible to troubleshoot in a heterogeneous environment.
  • Automated recovery: If an actor fails for any reason, Xoscar will automatically restart it if you want. It can monitor actors and restart them upon failure, enabling fault-tolerant systems.

Overview

architecture.png Xoscar allows you to create multiple actor pools on each worker node, typically binding an actor pool to a CPU core or a GPU card. Xoscar provides allocation policies so that whenever an actor is created, it will be instantiated in the appropriate pool based on the specified policy.

When actors communicate, Xoscar will choose the optimal communication mechanism based on which pools the actors belong to. This allows Xoscar to optimize communication in heterogeneous environments with multiple processing units and accelerators.

Where to get it

PyPI

Binary installers for the latest released version are available at the Python Package Index (PyPI).

# PyPI
pip install xoscar

Build from source

The source code is currently hosted on GitHub at: https://github.com/xorbitsai/xoscar .

Building from source requires that you have cmake and gcc installed on your system.

  • cmake >= 3.11
  • gcc >= 8
# If you have never cloned xoscar before
git clone --recursive https://github.com/xorbitsai/xoscar.git
cd xoscar/python
pip install -e .

# If you have already cloned xoscar before
cd xoscar
git submodule init
git submodule update
cd python && pip install -e .

APIs

Here are basic APIs for Xoscar.

Define an actor

import xoscar as xo

# stateful actor, for stateless actor, inherit from xo.StatelessActor
class MyActor(xo.Actor):
    def __init__(self, *args, **kwargs):
        pass

    async def __post_create__(self):
        # called after created
        pass

    async def __pre_destroy__(self):
        # called before destroy
        pass

    def method_a(self, arg_1, arg_2, **kw_1):  # user-defined function
        pass

    async def method_b(self, arg_1, arg_2, **kw_1):  # user-defined async function
        pass

Create an actor

import xoscar as xo

actor_ref = await xo.create_actor(
    MyActor, 1, 2, a=1, b=2,
    address='<ip>:<port>', uid='UniqueActorName')

Get an actor reference

import xoscar as xo

actor_ref = await xo.actor_ref(address, actor_id)

Invoke a method

# send
await actor_ref.method_a.send(1, 2, a=1, b=2)
# equivalent to actor_ref.method_a.send
await actor_ref.method_a(1, 2, a=1, b=2)
# tell, it sends a message asynchronously and does not wait for a response.
await actor_ref.method_a.tell(1, 2, a=1, b=2)

Batch method

Xoscar provides a set of APIs to write batch methods. You can simply add a @extensible decorator to your actor method and create a batch version. All calls wrapped in a batch will be sent together, reducing possible RPC cost.

Define a batch method

import xoscar as xo

class ExampleActor(xo.Actor):
    @xo.extensible
    async def batch_method(self, a, b=None):
        pass

Xoscar also supports creating a batch version of the method:

class ExampleActor(xo.Actor):
    @xo.extensible
    async def batch_method(self, a, b=None):
        raise NotImplementedError  # this will redirect all requests to the batch version

    @batch_method.batch
    async def batch_method(self, args_list, kwargs_list):
        results = []
        for args, kwargs in zip(args_list, kwargs_list):
            a, b = self.batch_method.bind(*args, **kwargs)
            # process the request
            results.append(result)
        return results  # return a list of results

In a batch method, users can define how to more efficiently process a batch of requests.

Invoke a batch method

Calling batch methods is easy. You can use <method_name>.delay to make a batched call and use <method_name>.batch to send them:

ref = await xo.actor_ref(uid='ExampleActor', address='127.0.0.1:13425')
results = await ref.batch_method.batch(
    ref.batch_method.delay(10, b=20),
    ref.batch_method.delay(20),
)

License

Apache 2

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

xoscar-0.9.4.tar.gz (152.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

xoscar-0.9.4-cp313-cp313-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.13Windows x86-64

xoscar-0.9.4-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

xoscar-0.9.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

xoscar-0.9.4-cp313-cp313-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

xoscar-0.9.4-cp313-cp313-macosx_10_13_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

xoscar-0.9.4-cp312-cp312-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.12Windows x86-64

xoscar-0.9.4-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

xoscar-0.9.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

xoscar-0.9.4-cp312-cp312-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

xoscar-0.9.4-cp312-cp312-macosx_10_13_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

xoscar-0.9.4-cp311-cp311-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.11Windows x86-64

xoscar-0.9.4-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

xoscar-0.9.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

xoscar-0.9.4-cp311-cp311-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

xoscar-0.9.4-cp311-cp311-macosx_10_9_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

xoscar-0.9.4-cp310-cp310-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.10Windows x86-64

xoscar-0.9.4-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

xoscar-0.9.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

xoscar-0.9.4-cp310-cp310-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

xoscar-0.9.4-cp310-cp310-macosx_10_9_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

xoscar-0.9.4-cp39-cp39-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.9Windows x86-64

xoscar-0.9.4-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

xoscar-0.9.4-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

xoscar-0.9.4-cp39-cp39-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

xoscar-0.9.4-cp39-cp39-macosx_10_9_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file xoscar-0.9.4.tar.gz.

File metadata

  • Download URL: xoscar-0.9.4.tar.gz
  • Upload date:
  • Size: 152.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for xoscar-0.9.4.tar.gz
Algorithm Hash digest
SHA256 7f0c14872a875131568eae2de7613b0bff12d2e186ef4f2d629320fb72fafcf6
MD5 60f28644c2ade76b50a502ea1fb6a740
BLAKE2b-256 c8b8cb704dc8d941a5944f8c135dfd4a33ec29adc0a15b8e1c1d9d0536e8f53d

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: xoscar-0.9.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for xoscar-0.9.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 2fcc6147cb254497bbf1c85603ca7a284a3bc24780b05e1b2b17fc61d30fc47c
MD5 5b9463c2a7315426df7968fb2a7c3337
BLAKE2b-256 96b98def1530bcb222aaf6f459f04bb73011dd952c26d04ff5b623b84a4f39a8

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2950809541913dec75929efdf13a75ec32e6defa9e48db375335cf496453cecb
MD5 8cd2960492f7ce267d2ab033c0466ae4
BLAKE2b-256 f16e1b6d19abe6c718c7aacd5bd2be5df6a8729ecba10739969f2950dd8a5eab

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 6ec03f45af29c2518e98fd92998e72dbfb29a7ca173ad3bd29ec1b08fb801a28
MD5 007fe7fa91ef7f87d21036926f1cae88
BLAKE2b-256 913acbef31d2d0167a1246a2971e3275de8f24a673d5e695623c9d29e094120c

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4d4761642b62d006aaf8fb93d42653f077da6e5771d4b3f6d7d344d316aeaf7f
MD5 cc126576fe0d39685944b3ae2570726b
BLAKE2b-256 8280ead33e1da086052bb10c22852430bb13c53ec8f93625b8fdab5b30dad1bd

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 7dc7dfeb5ed2f0add04ea3a88e25059a8a8047e19ca06b3668bb84abc3a2dd94
MD5 14dad9c11dc67d7b5495d703cf62f44d
BLAKE2b-256 bb0c418796d1900b619e28f0cceb29e64853ed381f7bd6057db3c54799681313

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: xoscar-0.9.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for xoscar-0.9.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1b2c2ddef664fb33a59684991fecf392b8a22acf5911a37d29ccd3d84229d552
MD5 1f34665694468b9cdd5070d1b84caa51
BLAKE2b-256 f3c4080a95b8847c23cb99715801fbced7e04b579f4e38a1686f933f0457ca65

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 57e98c7f86100f1a43f6248d6504ed0151953673566cb83a59ad5990316a2de2
MD5 d2ff379c0fbdf741ad1230e10d4f3136
BLAKE2b-256 e549275ad9f9a7420ade5e581a9caf1bdf9b92ee712b71618d36a9f74fdd5fc6

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 930a73fcd6b98486f9bbfa102d0bf47794b872c1e504dcce64eaa6649bf91387
MD5 f8f986246bdf249a595f5a71420cb2c9
BLAKE2b-256 ebbd6b8f74d536c7cea62103d4fd8414f0c64f073bc20b40781cba0bb93c8996

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ad8e42869c1732cf8fdf115b5074f02c03594f6401c39cf9554fac14526474bc
MD5 0ce5644311fe7aa9630d29f8e0d9c503
BLAKE2b-256 6c363ac103e6d8ee5f726de9ae85ff3c95d8775e220fa62ea947e11478e7fca1

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 792cbfa9770a4ff032a9427497c3e7fb5d8ed99bfcc2bdefb47e483c4095767b
MD5 7696f897e73d23f8216b3efb0c0e06d8
BLAKE2b-256 8332a3646a58f3402a1fc4a42bf765e4a701aeca7f01995ddeb62c3583d06108

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: xoscar-0.9.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for xoscar-0.9.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6053361c7e6438992d6a2720bc34d68e1c8e43e9a8ef0161375c80e62d959015
MD5 d57bf5901711b9f1a0aecbbbbd4a7d4e
BLAKE2b-256 f61636dfaef470b139963aedf217c586b86b5c746e90757fbd4e90385355ce86

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8b0f877b20e5244ff6a65ae555a24a945186c601843322cd011dea0dc7bb9eac
MD5 753a139bdcd871f92d010a5468080986
BLAKE2b-256 81996fcf45e27cfcd6204fb2b6f4736ac2c79d5552114bf88fff518cbae1d46f

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 6705a311eb617c0b99bb74a057efbdd253833ca293f62c724c8176688bc8fa42
MD5 e0f5ea672944749e7fff66b49fa3d840
BLAKE2b-256 3a08bbbc28526cddf43ceb4b71059e53eb2ddb0ddabd84c731499bda6d5422cf

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9bab2a7a6652c306d856cc1cdadc08bd5002f0f29a9cd32e2d5bb227587c1334
MD5 c0c9a6c69e37b9f7a7bc64d8c4998209
BLAKE2b-256 cf1b0bb9861028cb88cd714e59dd02d321c265b81f11c9d1890755320d79fbee

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b4fe5cec9462a7faab2b596d5dd726badb522fdf05a6941ad724c02a5078707e
MD5 7dcc9c3d9dafa2b3aa26428433df4e2c
BLAKE2b-256 c160779443a475e9176ea9e0fff5491fcc727adb301cf2f7b73047c7d819994e

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: xoscar-0.9.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for xoscar-0.9.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ce5b13889dca4e3a29908c48785dbbd2ef3b98462cc68688ef877f55b5dd2206
MD5 a24ceca23bc4c50890683f54ad59983b
BLAKE2b-256 66e21d0da103638e87da64a591cc84f14a15287dee54c71e03375916b8ae21ab

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 55ec9d05dd901c32878a83d0835e91ff6e9982fd1f0abcacf5d2c8fa047ba063
MD5 064785d45e820d527285839b80330c86
BLAKE2b-256 b3530f13db526d191c47d1c3d2489fb409761bcdcf7a09e2136bcf46c7fdba05

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 e9fed547258e8ae76fa8a1e5ec075a9cca06f59e80da57ced2a57c7084cf418a
MD5 091c7ed4ba71d228a243c64f23a397d6
BLAKE2b-256 c6b16e5d2ec39d3fffd1119d0d130e6e9e4cc1f5a2876c38c9dd5c5fca19b333

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9d433e23a409d2380a976cab59fbcf9cd843a1bf6c3f000986c3fd1b10706edb
MD5 3c711124faeda3175c577037c1a5b722
BLAKE2b-256 7281036f46506675aba8f2fe4894ca7dd31d529316b56039263c9c7b274ac8b6

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5b6d64b5682408599e0057c1dd1bac2a8b473cda909628044a355b54a5777cf6
MD5 3c7f81928191b6be6bfc8f4e3080aa09
BLAKE2b-256 c4d66acd3025f262cd01601f0298ee042d9a6b7f8abaef428d67f7c0128a93d2

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: xoscar-0.9.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for xoscar-0.9.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 579cf41574257d26855bf36e2f73d319a7e25bec7e5d0ef2c7e20daa71da765a
MD5 1189f0edc8a25bf77ae0a800071e96ac
BLAKE2b-256 a5dbbcc2480ffce8f8af2a48057dfba62f8c2f0003b05b70b881f145f2bbe326

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ce218b387247410148ba137f0a26d521f2c2d87d3e36d2ae4e5c26a4664a4714
MD5 a49eac88a12a59ef8c5cb87072e11f03
BLAKE2b-256 d6c1b753ebf1887e0840ef261f1e95fb1b22b1f45531a51562252230c9315c13

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 6f9f8061426f01d45a101427fe51a120a283c52eebca5d6911b4daaced37beb6
MD5 cc3c95d4031989e656b8c8e912e03894
BLAKE2b-256 562eacb9df47b24b514280efeef1548c356d47c07b682ad0dc61dac62984c375

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 71899fba898a24325e9b2658c4590dab5e58b1168702e314c15a23a72ce233cc
MD5 7965b5dc9db231f8c4c8b85ff66106c1
BLAKE2b-256 6c9b7f1784d9c375d639af1182c1fdd50afcb9e8133d0f0714c4613988c171b8

See more details on using hashes here.

File details

Details for the file xoscar-0.9.4-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for xoscar-0.9.4-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ba547674d0a2ee4c7a64190ff95a9dfac1c61aac78b5167dfb4273a2bcae51f8
MD5 ac572de84f1907dce638da7701f69d6b
BLAKE2b-256 cd08dfc4219c5bc890cb2dfceaf58a40eaf25aaf40950c8cdad87c237ff4897e

See more details on using hashes here.

Supported by

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