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.3.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.3-cp313-cp313-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.13Windows x86-64

xoscar-0.9.3-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.3-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.3-cp313-cp313-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.13+ x86-64

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

Uploaded CPython 3.12Windows x86-64

xoscar-0.9.3-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.3-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.3-cp312-cp312-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.13+ x86-64

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

Uploaded CPython 3.11Windows x86-64

xoscar-0.9.3-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.3-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.3-cp311-cp311-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.9+ x86-64

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

Uploaded CPython 3.10Windows x86-64

xoscar-0.9.3-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.3-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.3-cp310-cp310-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.10macOS 10.9+ x86-64

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

Uploaded CPython 3.9Windows x86-64

xoscar-0.9.3-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.3-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.3-cp39-cp39-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

xoscar-0.9.3-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.3.tar.gz.

File metadata

  • Download URL: xoscar-0.9.3.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.3.tar.gz
Algorithm Hash digest
SHA256 10006b7ed364cdca3a742451336ff845c52ebaa6bc04ecad3024d4352fe68321
MD5 f4830706bef44df8139d34da473f7a5b
BLAKE2b-256 dd926c21ddb262d7fdf204ecf2bd586a16aedc565f5c1f7f585875dcfb703f02

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xoscar-0.9.3-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.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 8d7f7fc37ac568a2412776832825d02ffd6a0dfe09c37384e06bec745f15210c
MD5 25bf4c29b67d6ebd9a0085fd9aabd80c
BLAKE2b-256 5fcc6bb509e9c9efcf7ebe5b47a5ba5db45951401227e9732f661a248b440210

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 714b66e216f25001c28422dba70d74d4df5be6275cd5611c7b716e2b1ddcdbc9
MD5 b4622bf65a83cb7479b183cd5e6ee5e7
BLAKE2b-256 73f80edc627cae6010297f3424523ad22b277cedbc6cf2a172557fe44619853e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 88ccfd4e90740096a8834992e13c0aafcd42a077358a6b3fde4b8851ad434f85
MD5 1cbef5fcb13e3541c2070031ce8f6982
BLAKE2b-256 4d9a7c1f7eac6bffb2b43c295712ac0131f81d3a57a16a1431e479471b95a8c9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d4f9369cc2a0896700547a1d0c3aac49a297bcbe38556c981502f1a82e065e88
MD5 4eeefb7403a31914c989ab8bdbc7a0c1
BLAKE2b-256 84d558af45ebd36c0f3a4dfb313dd511b214f5faca9fcd000e402cad2dad17df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2b70c50cdb8a68c328ce9e131f0acabc7c9f79dba5b230d59e610bb8ef8a7668
MD5 1e7d449ec584b8c6088f1f3ba4c4b9be
BLAKE2b-256 f1ea2fc34ccb5648c3e4ca047fb53ab832b12f29ef2b7d00e4d5401f8875e098

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xoscar-0.9.3-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.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 bcad63dead6227eaab4ff4773718f26e3e8365ae5580ea94c7b54bfe57ed774a
MD5 a6aa0787305d49090f727f0d6d006f83
BLAKE2b-256 9c7ff0989b11f0c76bdb3e9475b44f01a2b8cac75f8e7dcf71c93cbfb17bae4b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 344500a6f59ed767e736606b825c7159ab0c2940692a954ad3fb868b64e74405
MD5 a8a6563b36da065ac3e82af17d9079c1
BLAKE2b-256 6a89c039b0861dafdb503b5575373fa2207ccbbfa04624f0229f5cd5f88bfe5a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 f0c28287aa5b35a211cbdb0bf0b322b3a70929d778b344e4f64b909b77381732
MD5 414ebb1db167da18dfc6cdb8730afdb8
BLAKE2b-256 c7025068d713f054d82df4f85402e9e0b7b790affd681e448632b22062bcdb8e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2cac9cdad359c21a61a090a6465be3da7429596ad096172ccbf612c849133c17
MD5 cb248323b16973481934c38560cfdd22
BLAKE2b-256 03007ed428228a4c871f2dadfacb9290ac583b4ab9fa819cde6ffa23f1a9b155

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 634b455b330eb6fe1af42f75400103e3532b7e3b64a289de6941913f968d74b6
MD5 b1ebc030fbb04d79e3ab67c3f2371fe6
BLAKE2b-256 d5720a7051945c3d12df9b9b197404ac1a3a1cf2e4f63c76cbf453834d3f2381

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xoscar-0.9.3-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.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 566b7dbcb18d583cd619c611645d7e73da1e36d27507cf9bb266a905a5277bf6
MD5 c2002303ac3e9f7f27c704ac7b6e6489
BLAKE2b-256 b30bc1d905877cf15953c43a7f31aca32e2f72b50f6918d79d7f23889d754c22

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3c1780c2db0b5f7187f1a9bbbff85c0f267b8c56fbbb6d6f57d202a08e57c88e
MD5 ab1088b33a5e06d63225f473e44eac30
BLAKE2b-256 e7a8cd367831dffe1c38d6fbe11d2bd789119f7974c2fa1f047139f8f6ebebce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 203024e708fb8ef5c92d06c783c9d831d60110244d45b8279923ecaca50d86e1
MD5 ac9905ffd6451e13051965f31c3ed32e
BLAKE2b-256 9e0cc1c7c0ca6a53098cc9132b6c382c7c6fdb4249f89b11ff02c38224ec9e5d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 960a6e627f0659a55af72e5788c71caf1b2805fe30e921841f98ecef6bd1c1f9
MD5 702493db8278be7cbe9ea806c28ed2a5
BLAKE2b-256 15cf2b831e9f2c5afa3bba7e82f8c5da21ed98075a7030676c53efd76ece369b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f4c584f541c493b4ee4cb521e089f322f6869b7abc6d518e775747219c000728
MD5 7b6227f90a6aa699ccbdd0824bc38273
BLAKE2b-256 14117d536d1fca715944d7d889e6fd42e9c8598be70c30d5526886b5a5913aa2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xoscar-0.9.3-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.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 7da4effabfd0d722fa6af40c80ddf9d38e0aec4370fa7380dff4bcaaae05b995
MD5 2b8614ebf0571791e96d27e4301e07ec
BLAKE2b-256 5679ce2f8cb08fbbd617676abe302e44e96ceed479a12619b70e86ffc3a54703

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ca723ae364d815e795b722a33004264c910d53c6f32a9f5b1871ed8874b42f24
MD5 06bdb946c23b7fba10a09ad93665c383
BLAKE2b-256 4e187d782c70471feeb76ef4359c93916a1b598b0fffc073cbf8784b186db1d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 3aa7c53a8b40ecd0a70808413ee39667b7f85bf98635f9d89b4773924e119970
MD5 0a49c423efb1b603c3e4d29ea541f7b2
BLAKE2b-256 2aa640531ddcd4eed93fb8fb73026c46de6d4064a1972d347abc24300e60213b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1add65e85d0006fa8f81a8b62ee3405616b924b5ba6662a60b5623f4e2aab03e
MD5 6beeaa203037e090d5203d2279324f74
BLAKE2b-256 c4c55b9678534ad75ac2e4f9d0d60112355f0dd8d8b8502f6ac09f33b2eb6dc2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4577cc6cb79544bb98a22e583f42ed08b6589cad2b8d6949c8df131122883c77
MD5 1f45790fc9a9b1291c4129c35dbc7bd5
BLAKE2b-256 4e03568eb26489b077970d430a2befef60f845743e4c7fc4a183ad1cbdccb1c2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xoscar-0.9.3-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.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 5b21c9582191d700675f4d25acdef95d2f6c8bee6ba2b4fac01738664a413254
MD5 8e9196605fa85480424f0d521b9015d2
BLAKE2b-256 77cb78da3d124f0aec24ec36179e04c6f727f9f2efdd403797c58986a0d589b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ef4c4112d5f1515673894d2a59fd1c8b7720d1db893d6b12e51e6d33796c6567
MD5 e29b6e6dc487ef4f3e530f4e3112e79b
BLAKE2b-256 508ab917b18552123453d05c5bb3aaa96e9b99086eb7cc83272529b945ca1ee2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 64efe6eb06ed92ba62733014243f29a9040184187258eec67236cd85d4a1923a
MD5 a6036a00d023e8d2f46f027b2a6007ad
BLAKE2b-256 2a8b1d99c68e5fc47b3fbc3e70c0d8a4ecb078e73e411ac6ccf4b391d5ff1398

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c305d6cd4e0537e79f9bc19a2c77a52239df007cce24cdf4ee448b8a8aaa564
MD5 d9ee07ceef377bc65673747ea2cb93d5
BLAKE2b-256 d625e3b0d28979d6b254a5109b23709392c5ce3e69dbe6af7c3262a3748ca5b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xoscar-0.9.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 30f973f91d705351e2e1834782d39ffc7f5bc96aba973bad8be6d52c226bf7bf
MD5 8e529967c48fc8b87c61fd0b4ae28264
BLAKE2b-256 fbd108ee0c301abb6a52ae3ad5ca5d5bb9dec0e0c4366aad5ebab138dbc5a4a4

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