xoscar 0.3.0__cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl → 0.3.2__cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of xoscar might be problematic. Click here for more details.
- xoscar/__init__.py +0 -4
- xoscar/_utils.cpython-310-aarch64-linux-gnu.so +0 -0
- xoscar/backends/context.py +6 -2
- xoscar/backends/core.py +2 -1
- xoscar/backends/message.cpython-310-aarch64-linux-gnu.so +0 -0
- xoscar/backends/pool.py +0 -3
- xoscar/context.cpython-310-aarch64-linux-gnu.so +0 -0
- xoscar/core.cpython-310-aarch64-linux-gnu.so +0 -0
- xoscar/serialization/core.cpython-310-aarch64-linux-gnu.so +0 -0
- xoscar/utils.py +38 -0
- {xoscar-0.3.0.dist-info → xoscar-0.3.2.dist-info}/METADATA +3 -2
- {xoscar-0.3.0.dist-info → xoscar-0.3.2.dist-info}/RECORD +56 -57
- xoscar/entrypoints.py +0 -42
- {xoscar-0.3.0.dist-info → xoscar-0.3.2.dist-info}/WHEEL +0 -0
- {xoscar-0.3.0.dist-info → xoscar-0.3.2.dist-info}/top_level.txt +0 -0
xoscar/__init__.py
CHANGED
|
@@ -50,7 +50,6 @@ from ._utils import create_actor_ref
|
|
|
50
50
|
|
|
51
51
|
# make sure methods are registered
|
|
52
52
|
from .backends import indigen, test
|
|
53
|
-
from .entrypoints import init_extension_entrypoints
|
|
54
53
|
from . import _version
|
|
55
54
|
|
|
56
55
|
del indigen, test
|
|
@@ -59,6 +58,3 @@ _T = TypeVar("_T")
|
|
|
59
58
|
ActorRefType = Union[ActorRef, _T]
|
|
60
59
|
|
|
61
60
|
__version__ = _version.get_versions()["version"]
|
|
62
|
-
|
|
63
|
-
init_extension_entrypoints()
|
|
64
|
-
del init_extension_entrypoints
|
|
Binary file
|
xoscar/backends/context.py
CHANGED
|
@@ -26,7 +26,7 @@ from ..context import BaseActorContext
|
|
|
26
26
|
from ..core import ActorRef, BufferRef, FileObjectRef, create_local_actor_ref
|
|
27
27
|
from ..debug import debug_async_timeout, detect_cycle_send
|
|
28
28
|
from ..errors import CannotCancelTask
|
|
29
|
-
from ..utils import dataslots
|
|
29
|
+
from ..utils import dataslots, fix_all_zero_ip
|
|
30
30
|
from .allocate_strategy import AddressSpecified, AllocateStrategy
|
|
31
31
|
from .communication import Client, DummyClient, UCXClient
|
|
32
32
|
from .core import ActorCaller
|
|
@@ -187,6 +187,7 @@ class IndigenActorContext(BaseActorContext):
|
|
|
187
187
|
|
|
188
188
|
async def actor_ref(self, *args, **kwargs):
|
|
189
189
|
actor_ref = create_actor_ref(*args, **kwargs)
|
|
190
|
+
connect_addr = actor_ref.address
|
|
190
191
|
local_actor_ref = create_local_actor_ref(actor_ref.address, actor_ref.uid)
|
|
191
192
|
if local_actor_ref is not None:
|
|
192
193
|
return local_actor_ref
|
|
@@ -195,7 +196,10 @@ class IndigenActorContext(BaseActorContext):
|
|
|
195
196
|
)
|
|
196
197
|
future = await self._call(actor_ref.address, message, wait=False)
|
|
197
198
|
result = await self._wait(future, actor_ref.address, message)
|
|
198
|
-
|
|
199
|
+
res = self._process_result_message(result)
|
|
200
|
+
if res.address != connect_addr:
|
|
201
|
+
res.address = fix_all_zero_ip(res.address, connect_addr)
|
|
202
|
+
return res
|
|
199
203
|
|
|
200
204
|
async def send(
|
|
201
205
|
self,
|
xoscar/backends/core.py
CHANGED
|
@@ -85,7 +85,8 @@ class ActorCaller:
|
|
|
85
85
|
f"Remote server {client.dest_address} closed"
|
|
86
86
|
) from None
|
|
87
87
|
future = self._client_to_message_futures[client].pop(message.message_id)
|
|
88
|
-
future.
|
|
88
|
+
if not future.done():
|
|
89
|
+
future.set_result(message)
|
|
89
90
|
except DeserializeMessageFailed as e:
|
|
90
91
|
message_id = e.message_id
|
|
91
92
|
future = self._client_to_message_futures[client].pop(message_id)
|
|
Binary file
|
xoscar/backends/pool.py
CHANGED
|
@@ -33,7 +33,6 @@ from .._utils import TypeDispatcher, create_actor_ref, to_binary
|
|
|
33
33
|
from ..api import Actor
|
|
34
34
|
from ..core import ActorRef, BufferRef, FileObjectRef, register_local_pool
|
|
35
35
|
from ..debug import debug_async_timeout, record_message_trace
|
|
36
|
-
from ..entrypoints import init_extension_entrypoints
|
|
37
36
|
from ..errors import (
|
|
38
37
|
ActorAlreadyExist,
|
|
39
38
|
ActorNotExist,
|
|
@@ -188,8 +187,6 @@ class AbstractActorPool(ABC):
|
|
|
188
187
|
self._asyncio_task_timeout_detector_task = (
|
|
189
188
|
register_asyncio_task_timeout_detector()
|
|
190
189
|
)
|
|
191
|
-
# load third party extensions.
|
|
192
|
-
init_extension_entrypoints()
|
|
193
190
|
# init metrics
|
|
194
191
|
metric_configs = self._config.get_metric_configs()
|
|
195
192
|
metric_backend = metric_configs.get("backend")
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
xoscar/utils.py
CHANGED
|
@@ -462,3 +462,41 @@ def is_windows():
|
|
|
462
462
|
|
|
463
463
|
def is_linux():
|
|
464
464
|
return sys.platform.startswith("linux")
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
def is_v4_zero_ip(ip_port_addr: str) -> bool:
|
|
468
|
+
return ip_port_addr.startswith("0.0.0.0:")
|
|
469
|
+
|
|
470
|
+
|
|
471
|
+
def is_v6_zero_ip(ip_port_addr: str) -> bool:
|
|
472
|
+
# tcp6 addr ":::123", ":: means all zero"
|
|
473
|
+
arr = ip_port_addr.split(":")
|
|
474
|
+
if len(arr) <= 2: # Not tcp6 or udp6
|
|
475
|
+
return False
|
|
476
|
+
for part in arr[0:-1]:
|
|
477
|
+
if part != "":
|
|
478
|
+
if int(part, 16) != 0:
|
|
479
|
+
return False
|
|
480
|
+
return True
|
|
481
|
+
|
|
482
|
+
|
|
483
|
+
def fix_all_zero_ip(remote_addr: str, connect_addr: str) -> str:
|
|
484
|
+
"""
|
|
485
|
+
Use connect_addr to fix ActorRef.address return by remote server.
|
|
486
|
+
When remote server listen on "0.0.0.0:port" or ":::port", it will return ActorRef.address set to listening addr,
|
|
487
|
+
it cannot be use by client for the following interaction unless we fix it.
|
|
488
|
+
(client will treat 0.0.0.0 as 127.0.0.1)
|
|
489
|
+
|
|
490
|
+
NOTE: Server might return a different addr from a pool for load-balance purpose.
|
|
491
|
+
"""
|
|
492
|
+
if remote_addr == connect_addr:
|
|
493
|
+
return remote_addr
|
|
494
|
+
if not is_v4_zero_ip(remote_addr) and not is_v6_zero_ip(remote_addr):
|
|
495
|
+
# Remote server returns on non-zero ip
|
|
496
|
+
return remote_addr
|
|
497
|
+
if is_v4_zero_ip(connect_addr) or is_v6_zero_ip(connect_addr):
|
|
498
|
+
# Client connect to local server
|
|
499
|
+
return remote_addr
|
|
500
|
+
remote_port = remote_addr.split(":")[-1]
|
|
501
|
+
connect_ip = ":".join(connect_addr.split(":")[0:-1]) # Remote the port
|
|
502
|
+
return f"{connect_ip}:{remote_port}"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: xoscar
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Python actor framework for heterogeneous computing.
|
|
5
5
|
Home-page: http://github.com/xorbitsai/xoscar
|
|
6
6
|
Author: Qin Xuye
|
|
@@ -18,11 +18,12 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
18
18
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
19
19
|
Classifier: Topic :: Software Development :: Libraries
|
|
20
20
|
Description-Content-Type: text/markdown
|
|
21
|
-
Requires-Dist: numpy
|
|
21
|
+
Requires-Dist: numpy <2.0.0,>=1.14.0
|
|
22
22
|
Requires-Dist: pandas >=1.0.0
|
|
23
23
|
Requires-Dist: cloudpickle >=1.5.0
|
|
24
24
|
Requires-Dist: psutil >=5.9.0
|
|
25
25
|
Requires-Dist: tblib >=1.7.0
|
|
26
|
+
Requires-Dist: packaging
|
|
26
27
|
Requires-Dist: pickle5 ; python_version < "3.8"
|
|
27
28
|
Requires-Dist: uvloop >=0.14.0 ; sys_platform != "win32"
|
|
28
29
|
Requires-Dist: scipy >=1.0.0 ; sys_platform != "win32" or python_version >= "3.10"
|
|
@@ -1,81 +1,80 @@
|
|
|
1
|
-
xoscar/
|
|
2
|
-
xoscar/
|
|
3
|
-
xoscar
|
|
4
|
-
xoscar/
|
|
5
|
-
xoscar/
|
|
1
|
+
xoscar-0.3.2.dist-info/WHEEL,sha256=H0QERcJuEKoCcMIutioyRp9n3LaQjdVoB25CT5wQyPk,154
|
|
2
|
+
xoscar-0.3.2.dist-info/top_level.txt,sha256=vYlqqY4Nys8Thm1hePIuUv8eQePdULVWMmt7lXtX_ZA,21
|
|
3
|
+
xoscar-0.3.2.dist-info/RECORD,,
|
|
4
|
+
xoscar-0.3.2.dist-info/METADATA,sha256=Sw1MUXmjiJDvY37wnlzYTfiAyRYM3pqIMfefEvjPr94,9246
|
|
5
|
+
xoscar/batch.py,sha256=DpArS0L3WYJ_HVPG-6hSYEwoAFY1mY2-mlC4Jp5M_Dw,7872
|
|
6
6
|
xoscar/_utils.pxd,sha256=5KYAL3jfPdejsHnrGGT2s--ZUX5SXznQWpHVSno429k,1157
|
|
7
|
-
xoscar/
|
|
8
|
-
xoscar/errors.py,sha256=wBlQOKsXf0Fc4skN39tDie0YZT-VIAuLNRgoDl2pZcA,1241
|
|
9
|
-
xoscar/context.pyx,sha256=8CdgPnWcE9eOp3N600WgDQ03MCi8P73eUOGcfV7Zksg,10942
|
|
7
|
+
xoscar/context.pxd,sha256=qKa0OyDPZtVymftSh447m-RzFZgmz8rGqQBa7qlauvc,725
|
|
10
8
|
xoscar/driver.py,sha256=498fowtJr6b3FE8FIOA_Tc1Vwx88nfZw7p0FxrML0h4,1372
|
|
9
|
+
xoscar/__init__.py,sha256=0zX8kKaio3ZIrlzB79WybcravMJw1OxPWjDspTgJFyQ,1608
|
|
10
|
+
xoscar/core.cpython-310-aarch64-linux-gnu.so,sha256=8GaaxdgvX_qv0TlUUm9yE1CLeC9CSwYdw3vrF34qLxU,3474048
|
|
11
|
+
xoscar/debug.py,sha256=9Z8SgE2WaKYQcyDo-5-DxEJQ533v7kWjrvCd28pSx3E,5069
|
|
12
|
+
xoscar/_utils.cpython-310-aarch64-linux-gnu.so,sha256=dSrr2ptBB5Pxys0lsJygbZrXJSCsfevpu76xEr9iReE,1100360
|
|
13
|
+
xoscar/errors.py,sha256=wBlQOKsXf0Fc4skN39tDie0YZT-VIAuLNRgoDl2pZcA,1241
|
|
14
|
+
xoscar/_utils.pyx,sha256=UR1FtYXAYKIdEWR9HulEpMbSOrkQWi6xGz63d4IQmG0,7059
|
|
15
|
+
xoscar/_version.py,sha256=ClSPrUjgGRGHIkVMQV9XQnkQ-n0akJMnq_rh819nqFE,23719
|
|
16
|
+
xoscar/core.pxd,sha256=4lBq8J0kjcXcsGuvN7Kv4xcL5liHwTTFWlqyK7XAEnw,1280
|
|
11
17
|
xoscar/backend.py,sha256=is436OPkZfSpQXaoqTRVta5eoye_pp45RFgCstAk2hU,1850
|
|
12
|
-
xoscar/
|
|
13
|
-
xoscar/
|
|
18
|
+
xoscar/constants.py,sha256=Yn59lRIOvE1VFwyuZB5G2-gxYIyhIZ1rVovbdFAR2NM,759
|
|
19
|
+
xoscar/context.pyx,sha256=8CdgPnWcE9eOp3N600WgDQ03MCi8P73eUOGcfV7Zksg,10942
|
|
14
20
|
xoscar/core.pyx,sha256=Aqc2i8Fetsd5wRAPF4kL0ddnBZn3E2HRNCvup79BbQc,21730
|
|
15
|
-
xoscar/libcpp.pxd,sha256=DJqBxLFOKL4iRr9Kale5UH3rbvPRD1x5bTSOPHFpz9I,1147
|
|
16
|
-
xoscar/context.pxd,sha256=qKa0OyDPZtVymftSh447m-RzFZgmz8rGqQBa7qlauvc,725
|
|
17
|
-
xoscar/nvutils.py,sha256=qmW4mKLU0WB2yCs198ccQOgLL02zB7Fsa-AotO3NOmg,20412
|
|
18
21
|
xoscar/api.py,sha256=3hztPoOxg8A_mlhWyWgVP7FMXG0PATA1TP4Rbaj7A-g,13327
|
|
19
|
-
xoscar/core.pxd,sha256=4lBq8J0kjcXcsGuvN7Kv4xcL5liHwTTFWlqyK7XAEnw,1280
|
|
20
|
-
xoscar/batch.py,sha256=DpArS0L3WYJ_HVPG-6hSYEwoAFY1mY2-mlC4Jp5M_Dw,7872
|
|
21
22
|
xoscar/profiling.py,sha256=BC5OF0HzSaXv8V7w-y-B8r5gV5DgxHFoTEIF6jCMioQ,8015
|
|
22
|
-
xoscar/
|
|
23
|
-
xoscar/
|
|
24
|
-
xoscar/
|
|
25
|
-
xoscar/
|
|
26
|
-
xoscar/collective/common.py,sha256=INAnISbfnRicbbbDHTqbSr9ITb89ZphH5BUkSpEdXXU,3561
|
|
27
|
-
xoscar/collective/xoscar_pygloo.cpython-310-aarch64-linux-gnu.so,sha256=VkNyJqW6TdAHbmWBjbxsjMq4oPf54V7yhtj7l5Pl8vs,1648920
|
|
28
|
-
xoscar/collective/process_group.py,sha256=zy7LcIFnEcmrcxuECI89v0bQlUbSqQMkVyBw468WBnk,22599
|
|
29
|
-
xoscar/collective/core.py,sha256=WfMJZloiRiqsLlIMhU4Pa47eo0jE-hoXdbTBwZPM6TM,23498
|
|
23
|
+
xoscar/utils.py,sha256=TYp6wC8xx2AjKcoKt6Xk0bwhFeccBJKCK50YQE1XOV4,16076
|
|
24
|
+
xoscar/nvutils.py,sha256=qmW4mKLU0WB2yCs198ccQOgLL02zB7Fsa-AotO3NOmg,20412
|
|
25
|
+
xoscar/context.cpython-310-aarch64-linux-gnu.so,sha256=1u9Z42JkAAcINK15mDao2mu8OdiNcAlbtr1ld-5wrKM,1434376
|
|
26
|
+
xoscar/libcpp.pxd,sha256=DJqBxLFOKL4iRr9Kale5UH3rbvPRD1x5bTSOPHFpz9I,1147
|
|
30
27
|
xoscar/metrics/__init__.py,sha256=9Badi7rxYikGm2dQiNCrj9GgMRBxwuR3JaEKcFZmfak,705
|
|
31
28
|
xoscar/metrics/api.py,sha256=BBlMIFvVAGVfrtpeJ1YlH9Tqhy9OzGavwvGyeHcQ0Tk,8856
|
|
32
29
|
xoscar/metrics/backends/__init__.py,sha256=h_JgzSqV5lP6vQ6XX_17kE4IY4BRnvKta_7VLQAL1ms,581
|
|
33
30
|
xoscar/metrics/backends/metric.py,sha256=aPhyc8JgH22L3rcHP8IjsmgrhSODjg6B5TZVnre97y8,4446
|
|
34
|
-
xoscar/metrics/backends/console/console_metric.py,sha256=y5CCtH33j3AqI5_Uhwi4mgOcAhyhb4cWv_YvR6fxcbQ,2082
|
|
35
|
-
xoscar/metrics/backends/console/__init__.py,sha256=h_JgzSqV5lP6vQ6XX_17kE4IY4BRnvKta_7VLQAL1ms,581
|
|
36
31
|
xoscar/metrics/backends/prometheus/__init__.py,sha256=h_JgzSqV5lP6vQ6XX_17kE4IY4BRnvKta_7VLQAL1ms,581
|
|
37
32
|
xoscar/metrics/backends/prometheus/prometheus_metric.py,sha256=MxoMvVrg0pOkKpkjJ0PcAuEaaEJR2FZljmPrLjQ1-oc,2050
|
|
38
|
-
xoscar/
|
|
39
|
-
xoscar/
|
|
40
|
-
xoscar/serialization/core.cpython-310-aarch64-linux-gnu.so,sha256=awmtcftYGmT4YAnJyleiiMLEQJxDoMn9T5lZGk2-HHo,3216632
|
|
41
|
-
xoscar/serialization/core.pyx,sha256=E3xIKmdI2gn99JduR3yuU_YTm-lOyG0Tkc7fZVBWCho,30131
|
|
42
|
-
xoscar/serialization/cuda.py,sha256=iFUEnN4SiquBIhyieyOrfw3TnKnW-tU_vYgqOxO_DrA,3758
|
|
43
|
-
xoscar/serialization/aio.py,sha256=S9e3rHMBwqqKmJtDz7KzYAqWc8w9bttA0Dj83IBfEU0,4577
|
|
44
|
-
xoscar/serialization/core.pxd,sha256=k4RoJgX5E5LGs4jdCQ7vvcn26MabXbrWoWhkO49X6YI,985
|
|
45
|
-
xoscar/serialization/exception.py,sha256=Jy8Lsk0z-VJyEUaWeuZIwkmxqaoB-nLKMa1D15Cl4js,1634
|
|
46
|
-
xoscar/serialization/numpy.py,sha256=5Kem87CvpJmzUMp3QHk4WeHU30FoQWTJJP2SwIcaQG0,2919
|
|
47
|
-
xoscar/serialization/scipy.py,sha256=yOEi0NB8cqQ6e2UnCZ1w006RsB7T725tIL-DM_hNcsU,2482
|
|
33
|
+
xoscar/metrics/backends/console/__init__.py,sha256=h_JgzSqV5lP6vQ6XX_17kE4IY4BRnvKta_7VLQAL1ms,581
|
|
34
|
+
xoscar/metrics/backends/console/console_metric.py,sha256=y5CCtH33j3AqI5_Uhwi4mgOcAhyhb4cWv_YvR6fxcbQ,2082
|
|
48
35
|
xoscar/backends/__init__.py,sha256=VHEBQcUWM5bj027W8EUf9PiJUAP7JoMrRw3Tsvy5ySw,643
|
|
36
|
+
xoscar/backends/core.py,sha256=aHb3mMZ9vJe6pxg0P8kSOKvjXF1IaqgOgyhKVhHpNLM,7432
|
|
37
|
+
xoscar/backends/message.cpython-310-aarch64-linux-gnu.so,sha256=24rr32IsojmJgDb8MvgsWBzYW15FHFdWfMAUzaSbcZU,3058656
|
|
49
38
|
xoscar/backends/message.pyx,sha256=_rXcsWPcWu77Z_38rvjDBdQojpY5xJoaHQrt57_LVyo,17612
|
|
50
|
-
xoscar/backends/router.py,sha256=mhSvM5KVfV882jricVcpyxAqHEvhS4zL6ivczC6fOTE,7746
|
|
51
|
-
xoscar/backends/message.cpython-310-aarch64-linux-gnu.so,sha256=S36a5RdLZj_JMGuHl4n9sHOd7a6WRqwzGJPnNZhHciA,3058648
|
|
52
|
-
xoscar/backends/core.py,sha256=o6g3ZOW7PkGmiu-nNtp6I3Sd_2KkQDwOsKz-FdgRFs0,7390
|
|
53
39
|
xoscar/backends/config.py,sha256=EG26f0GwX_f4dAhwTW77RBjiK9h8R_3JrD-rBF1bAq8,4984
|
|
54
|
-
xoscar/backends/pool.py,sha256=DsArJyR754IDF3rak452Ft5i_VbYvWFTO9_QAfZtDxY,59278
|
|
55
40
|
xoscar/backends/allocate_strategy.py,sha256=tC1Nbq2tJohahUwd-zoRYHEDX65wyuX8tmeY45uWj_w,4845
|
|
56
|
-
xoscar/backends/
|
|
41
|
+
xoscar/backends/pool.py,sha256=bvS1r31O01E8jTdoWOhSqcFymksNqO2nX3Fkqary8Ro,59149
|
|
42
|
+
xoscar/backends/router.py,sha256=mhSvM5KVfV882jricVcpyxAqHEvhS4zL6ivczC6fOTE,7746
|
|
43
|
+
xoscar/backends/context.py,sha256=Vr_PibRxYCDQ_gYK7r-BOlw9TXw8VQbFsVTH7K7mHPk,15470
|
|
44
|
+
xoscar/backends/test/__init__.py,sha256=j2ZfD6prD9WjUxRUDC7Eq5Z7N7TkL6fFr59oNyc_vY4,682
|
|
45
|
+
xoscar/backends/test/backend.py,sha256=nv9WFhH5Bbq4Q1HB9yfpciZBaeHT4IQAtzugBWESrUY,1263
|
|
46
|
+
xoscar/backends/test/pool.py,sha256=TW4X6J-92Pti66103poQBNDBznX6CBD3RLOc_zixjTo,7257
|
|
47
|
+
xoscar/backends/indigen/driver.py,sha256=VGzkacYKykegW5qhCuhx01gdgBZEKJjNIyfNCnA6Nm8,952
|
|
48
|
+
xoscar/backends/indigen/__init__.py,sha256=tKHP5ClzedBRBpZsLRVErR3EUNbbDm4CY4u0rCFJr44,685
|
|
49
|
+
xoscar/backends/indigen/backend.py,sha256=znl_fZzWGEtLH8hZ9j9Kkf0fva25jEem2_KO7I1RVvc,1612
|
|
50
|
+
xoscar/backends/indigen/pool.py,sha256=3C1N2sbq02maUjl7jDhRkyYAoYmZD8hZBct6wxblq_Y,16709
|
|
57
51
|
xoscar/backends/communication/__init__.py,sha256=tB05BlK63iWQnfJgRzKt4mFKRtmWUki5hUGSZQwAotc,1050
|
|
58
|
-
xoscar/backends/communication/utils.py,sha256=AmovE-hmWLXNCPwHafYuaRjOk8m42BUyT3XBqfXQRVI,3664
|
|
59
|
-
xoscar/backends/communication/errors.py,sha256=V3CdBe2xX9Rwv32f2dH2Msc84yaUhlyerZ42-739o1Q,723
|
|
60
|
-
xoscar/backends/communication/socket.py,sha256=VBPiesyjX8c3ECWn8kv8qGwK3xCBqh_CHPrNDapYH6w,11819
|
|
61
|
-
xoscar/backends/communication/base.py,sha256=0P4Tr35GSWpRp394e9jVWUUoKKa-gIk177eYPw1BnSU,7421
|
|
62
52
|
xoscar/backends/communication/core.py,sha256=sJeE3foRIqVPXldzYpFKHDSsabfAIFBU4JuXY4OyklY,2130
|
|
53
|
+
xoscar/backends/communication/base.py,sha256=0P4Tr35GSWpRp394e9jVWUUoKKa-gIk177eYPw1BnSU,7421
|
|
54
|
+
xoscar/backends/communication/errors.py,sha256=V3CdBe2xX9Rwv32f2dH2Msc84yaUhlyerZ42-739o1Q,723
|
|
63
55
|
xoscar/backends/communication/ucx.py,sha256=eidp4l-YAzFMCYaeUcvpK4ecapg-92fXFKO-t_bBkTU,19267
|
|
56
|
+
xoscar/backends/communication/socket.py,sha256=VBPiesyjX8c3ECWn8kv8qGwK3xCBqh_CHPrNDapYH6w,11819
|
|
57
|
+
xoscar/backends/communication/utils.py,sha256=AmovE-hmWLXNCPwHafYuaRjOk8m42BUyT3XBqfXQRVI,3664
|
|
64
58
|
xoscar/backends/communication/dummy.py,sha256=gaKPNiN4x2aGZV3IGaaa8eaweBVjRh8B19jU1B5t2yw,7798
|
|
65
|
-
xoscar/
|
|
66
|
-
xoscar/
|
|
67
|
-
xoscar/
|
|
68
|
-
xoscar/
|
|
69
|
-
xoscar/
|
|
70
|
-
xoscar/
|
|
71
|
-
xoscar/
|
|
72
|
-
xoscar/
|
|
59
|
+
xoscar/serialization/__init__.py,sha256=5Y_C3cYbQJIZ09LRjeCf-jrkLma7mfN8I5bznHrdsbg,846
|
|
60
|
+
xoscar/serialization/core.cpython-310-aarch64-linux-gnu.so,sha256=8cTcS86ouvGAlQYGyHtuqFRO05mfolBobRCUv7K_QZU,3216640
|
|
61
|
+
xoscar/serialization/cuda.py,sha256=iFUEnN4SiquBIhyieyOrfw3TnKnW-tU_vYgqOxO_DrA,3758
|
|
62
|
+
xoscar/serialization/core.pxd,sha256=k4RoJgX5E5LGs4jdCQ7vvcn26MabXbrWoWhkO49X6YI,985
|
|
63
|
+
xoscar/serialization/aio.py,sha256=S9e3rHMBwqqKmJtDz7KzYAqWc8w9bttA0Dj83IBfEU0,4577
|
|
64
|
+
xoscar/serialization/scipy.py,sha256=yOEi0NB8cqQ6e2UnCZ1w006RsB7T725tIL-DM_hNcsU,2482
|
|
65
|
+
xoscar/serialization/numpy.py,sha256=5Kem87CvpJmzUMp3QHk4WeHU30FoQWTJJP2SwIcaQG0,2919
|
|
66
|
+
xoscar/serialization/exception.py,sha256=Jy8Lsk0z-VJyEUaWeuZIwkmxqaoB-nLKMa1D15Cl4js,1634
|
|
67
|
+
xoscar/serialization/core.pyx,sha256=E3xIKmdI2gn99JduR3yuU_YTm-lOyG0Tkc7fZVBWCho,30131
|
|
68
|
+
xoscar/serialization/pyfury.py,sha256=sifOnVMYoS82PzZEkzkfxesmMHei23k5UAUUKUyoOYQ,1163
|
|
69
|
+
xoscar/collective/process_group.py,sha256=zy7LcIFnEcmrcxuECI89v0bQlUbSqQMkVyBw468WBnk,22599
|
|
70
|
+
xoscar/collective/__init__.py,sha256=XsClIkO_3Jd8GDifYuAbZCmJLAo9ZqGvnjUn9iuogmU,774
|
|
71
|
+
xoscar/collective/core.py,sha256=WfMJZloiRiqsLlIMhU4Pa47eo0jE-hoXdbTBwZPM6TM,23498
|
|
72
|
+
xoscar/collective/common.py,sha256=INAnISbfnRicbbbDHTqbSr9ITb89ZphH5BUkSpEdXXU,3561
|
|
73
|
+
xoscar/collective/utils.py,sha256=3S4qF4JEnAUD3RiWVBUj-ZptL83CBSwGYyVZyIasAsE,1178
|
|
74
|
+
xoscar/collective/xoscar_pygloo.cpython-310-aarch64-linux-gnu.so,sha256=VkNyJqW6TdAHbmWBjbxsjMq4oPf54V7yhtj7l5Pl8vs,1648920
|
|
73
75
|
xoscar/aio/__init__.py,sha256=4Rv9V_wDIKlg7VcJeo1GVlvobwskYb1jYXef-0GQOaY,809
|
|
74
76
|
xoscar/aio/base.py,sha256=9j0f1piwfE5R5GIvV212vSD03ixdaeSzSSsO2kxJZVE,2249
|
|
75
77
|
xoscar/aio/file.py,sha256=PBtkLp-Q7XtYl-zk00s18TtgIrkNr60J3Itf66ctO1o,1486
|
|
76
|
-
xoscar/aio/parallelism.py,sha256=VSsjk8wP-Bw7tLeUsTyLVNgp91thjxEfE3pCrw_vF5Q,1293
|
|
77
78
|
xoscar/aio/_threads.py,sha256=WE9_NZY3K9n5bAzXRbj1Bc4dxS-1m1erMfZsUu-ULU4,1313
|
|
78
|
-
xoscar
|
|
79
|
-
xoscar
|
|
80
|
-
xoscar-0.3.0.dist-info/WHEEL,sha256=H0QERcJuEKoCcMIutioyRp9n3LaQjdVoB25CT5wQyPk,154
|
|
81
|
-
xoscar-0.3.0.dist-info/top_level.txt,sha256=vYlqqY4Nys8Thm1hePIuUv8eQePdULVWMmt7lXtX_ZA,21
|
|
79
|
+
xoscar/aio/lru.py,sha256=rpXCqSLtPV5xnWtd6uDwQQFGgIPEgvmWEQDkPNUx9cM,6311
|
|
80
|
+
xoscar/aio/parallelism.py,sha256=VSsjk8wP-Bw7tLeUsTyLVNgp91thjxEfE3pCrw_vF5Q,1293
|
xoscar/entrypoints.py
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
# Copyright 2022-2023 XProbe Inc.
|
|
2
|
-
#
|
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
-
# you may not use this file except in compliance with the License.
|
|
5
|
-
# You may obtain a copy of the License at
|
|
6
|
-
#
|
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
-
#
|
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
-
# See the License for the specific language governing permissions and
|
|
13
|
-
# limitations under the License.
|
|
14
|
-
|
|
15
|
-
import functools
|
|
16
|
-
import logging
|
|
17
|
-
import warnings
|
|
18
|
-
|
|
19
|
-
logger = logging.getLogger(__name__)
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
# from https://github.com/numba/numba/blob/master/numba/core/entrypoints.py
|
|
23
|
-
# Must put this here to avoid extensions re-triggering initialization
|
|
24
|
-
@functools.lru_cache(maxsize=None)
|
|
25
|
-
def init_extension_entrypoints():
|
|
26
|
-
"""Execute all `xoscar_extensions` entry points with the name `init`
|
|
27
|
-
If extensions have already been initialized, this function does nothing.
|
|
28
|
-
"""
|
|
29
|
-
from pkg_resources import iter_entry_points # type: ignore
|
|
30
|
-
|
|
31
|
-
for entry_point in iter_entry_points("xoscar_extensions", "init"):
|
|
32
|
-
logger.info("Loading extension: %s", entry_point)
|
|
33
|
-
try:
|
|
34
|
-
func = entry_point.load()
|
|
35
|
-
func()
|
|
36
|
-
except Exception as e:
|
|
37
|
-
msg = "Xoscar extension module '{}' failed to load due to '{}({})'."
|
|
38
|
-
warnings.warn(
|
|
39
|
-
msg.format(entry_point.module_name, type(e).__name__, str(e)),
|
|
40
|
-
stacklevel=2,
|
|
41
|
-
)
|
|
42
|
-
logger.info("Extension loading failed for: %s", entry_point)
|
|
File without changes
|
|
File without changes
|