xoscar 0.7.10__tar.gz → 0.7.11__tar.gz

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.

Files changed (92) hide show
  1. {xoscar-0.7.10 → xoscar-0.7.11}/PKG-INFO +1 -1
  2. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/mlx.py +11 -9
  3. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar.egg-info/PKG-INFO +1 -1
  4. {xoscar-0.7.10 → xoscar-0.7.11}/MANIFEST.in +0 -0
  5. {xoscar-0.7.10 → xoscar-0.7.11}/pyproject.toml +0 -0
  6. {xoscar-0.7.10 → xoscar-0.7.11}/setup.cfg +0 -0
  7. {xoscar-0.7.10 → xoscar-0.7.11}/setup.py +0 -0
  8. {xoscar-0.7.10 → xoscar-0.7.11}/versioneer.py +0 -0
  9. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/__init__.py +0 -0
  10. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/_utils.pxd +0 -0
  11. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/_utils.pyx +0 -0
  12. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/_version.py +0 -0
  13. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/aio/__init__.py +0 -0
  14. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/aio/base.py +0 -0
  15. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/aio/file.py +0 -0
  16. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/aio/lru.py +0 -0
  17. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/aio/parallelism.py +0 -0
  18. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/api.py +0 -0
  19. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backend.py +0 -0
  20. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/__init__.py +0 -0
  21. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/allocate_strategy.py +0 -0
  22. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/communication/__init__.py +0 -0
  23. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/communication/base.py +0 -0
  24. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/communication/core.py +0 -0
  25. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/communication/dummy.py +0 -0
  26. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/communication/errors.py +0 -0
  27. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/communication/socket.py +0 -0
  28. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/communication/ucx.py +0 -0
  29. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/communication/utils.py +0 -0
  30. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/config.py +0 -0
  31. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/context.py +0 -0
  32. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/core.py +0 -0
  33. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/indigen/__init__.py +0 -0
  34. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/indigen/__main__.py +0 -0
  35. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/indigen/backend.py +0 -0
  36. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/indigen/driver.py +0 -0
  37. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/indigen/fate_sharing.py +0 -0
  38. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/indigen/pool.py +0 -0
  39. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/indigen/shared_memory.py +0 -0
  40. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/message.pyi +0 -0
  41. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/message.pyx +0 -0
  42. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/pool.py +0 -0
  43. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/router.py +0 -0
  44. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/test/__init__.py +0 -0
  45. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/test/backend.py +0 -0
  46. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/backends/test/pool.py +0 -0
  47. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/batch.py +0 -0
  48. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/collective/__init__.py +0 -0
  49. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/collective/common.py +0 -0
  50. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/collective/core.py +0 -0
  51. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/collective/process_group.py +0 -0
  52. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/collective/utils.py +0 -0
  53. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/collective/xoscar_pygloo.pyi +0 -0
  54. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/constants.py +0 -0
  55. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/context.pxd +0 -0
  56. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/context.pyx +0 -0
  57. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/core.pxd +0 -0
  58. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/core.pyx +0 -0
  59. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/debug.py +0 -0
  60. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/driver.py +0 -0
  61. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/errors.py +0 -0
  62. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/libcpp.pxd +0 -0
  63. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/metrics/__init__.py +0 -0
  64. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/metrics/api.py +0 -0
  65. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/metrics/backends/__init__.py +0 -0
  66. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/metrics/backends/console/__init__.py +0 -0
  67. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/metrics/backends/console/console_metric.py +0 -0
  68. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/metrics/backends/metric.py +0 -0
  69. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/metrics/backends/prometheus/__init__.py +0 -0
  70. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/metrics/backends/prometheus/prometheus_metric.py +0 -0
  71. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/nvutils.py +0 -0
  72. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/profiling.py +0 -0
  73. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/__init__.py +0 -0
  74. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/aio.py +0 -0
  75. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/core.pxd +0 -0
  76. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/core.pyi +0 -0
  77. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/core.pyx +0 -0
  78. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/cuda.py +0 -0
  79. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/exception.py +0 -0
  80. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/numpy.py +0 -0
  81. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/pyfury.py +0 -0
  82. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/serialization/scipy.py +0 -0
  83. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/utils.py +0 -0
  84. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/virtualenv/__init__.py +0 -0
  85. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/virtualenv/core.py +0 -0
  86. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/virtualenv/utils.py +0 -0
  87. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar/virtualenv/uv.py +0 -0
  88. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar.egg-info/SOURCES.txt +0 -0
  89. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar.egg-info/dependency_links.txt +0 -0
  90. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar.egg-info/not-zip-safe +0 -0
  91. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar.egg-info/requires.txt +0 -0
  92. {xoscar-0.7.10 → xoscar-0.7.11}/xoscar.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: xoscar
3
- Version: 0.7.10
3
+ Version: 0.7.11
4
4
  Summary: Python actor framework for heterogeneous computing.
5
5
  Home-page: http://github.com/xorbitsai/xoscar
6
6
  Author: Qin Xuye
@@ -40,25 +40,27 @@ dtype_map = {
40
40
  class MLXSerislizer(Serializer):
41
41
  @buffered
42
42
  def serial(self, obj: "mx.array", context: dict): # type: ignore
43
- mv = memoryview(obj)
44
- header = dict(shape=obj.shape, format=mv.format)
45
- # If the memoryview is a multi-dimension view, then there could
46
- # trigger a bug of asyncio write: https://github.com/python/cpython/issues/135862
47
- if mv.ndim > 1 or not mv.c_contiguous:
43
+ ravel_obj = obj.reshape(-1).view(mx.uint8)
44
+ mv = memoryview(ravel_obj)
45
+ header = dict(
46
+ shape=obj.shape, format=mv.format, dtype=str(obj.dtype).rsplit(".", 1)[-1]
47
+ )
48
+ if not mv.c_contiguous:
49
+ # NOTE: we only consider c contiguous here,
50
+ # MLX has no way to create f contiguous arrays.
48
51
  mv = memoryview(bytes(mv))
49
52
  return (header,), [mv], True
50
53
 
51
54
  def deserial(self, serialized: tuple, context: dict, subs: List[Any]):
52
55
  header = serialized[0]
53
- shape, format = header["shape"], header["format"]
56
+ shape, format, dtype = header["shape"], header["format"], header["dtype"]
54
57
  mv = memoryview(subs[0])
55
58
  if mv.format != format:
56
59
  dtype = dtype_map.get(format, np.uint8)
57
60
  np_arr = np.frombuffer(mv, dtype=dtype).reshape(shape) # parse
58
61
  mv = memoryview(np_arr) # recreate memoryview
59
- elif mv.shape != shape:
60
- mv = mv.cast(format, shape) # cast directly
61
- return mx.array(mv)
62
+ ravel_array = mx.array(mv)
63
+ return ravel_array.view(getattr(mx, dtype)).reshape(shape)
62
64
 
63
65
 
64
66
  if mx is not None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: xoscar
3
- Version: 0.7.10
3
+ Version: 0.7.11
4
4
  Summary: Python actor framework for heterogeneous computing.
5
5
  Home-page: http://github.com/xorbitsai/xoscar
6
6
  Author: Qin Xuye
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes