Releases: mars-project/mars
v0.4.0a1
This is the release notes of v0.4.0a1. See here for the complete list of solved issues and merged PRs.
Announcements
Due to the end-of-life (EOL) of Python 2 in January 1, 2020, from v0.4.0a1 on, v0.4.x series will no longer support Python 2, for Python 2.7 users, please use 0.3.x series.
Changes that break compatibility
- Operand now supports stages(#934), reduction operands as well as those operands whose tiled chunks contain map or reduce phases cannot be serialized between this and former versions.
New Features
- Tensor
- DataFrame
- Support creating DataFrame from dict whose values are tensors (#903)
- Support DataFrame and Series count (#900)
- Implement
mean
operator for DataFrame and Series (#907) - Implements
DataFrame.quantile
andSeries.quantile
(#911) - Add comparison functions for DataFrame (#921)
- Support
df.reset_index
andseries.reset_index
(#915)
- Learn
- Others
- Add function objects implementation for tokenizer (#893)
Enhancements
- Use default args for super() (#878)
- Skip preparing specified chunks when preparing for execution (#891)
- Accelerate
LU
when input has one chunk (#905) - Add support for AnyReference in serialization (#874)
- Merge operands representing multiple stages of one single operand (#934)
Tests
- Add
TestExecutor
that serde graph every time when executing to ensure all operands work well with serialize (#880) - Fix possible failure of
testIterativeTilingWithoutEtcd
for Python 3.5 in CI (#896) - Switch coverage service to codecov (#909)
- Remove *_pb2.py to reduce chances of code conflict (#913)
- Fix failures in Windows tests (#938)
Others
v0.3.0
This is the release notes of v0.3.0. See here for the complete list of solved issues and merged PRs.
This release note only covers the difference from v0.3.0rc1; for all highlights and changes, please refer to the release notes of the pre-releases:
Announcements
From v0.3.0 on, v0.3.x will be the last series that support Python 2 until release of v0.4.0.
Changes that break compatibility
- Operand now supports stages(#935), reduction operands as well as those operands whose tiled chunks contain map or reduce phases cannot be serialized between this and former versions.
New Features
- Tensor
- DataFrame
- Support creating DataFrame from dict whose values are tensors (#922)
- Implements
DataFrame.quantile
andSeries.quantile
(#924) - Support DataFrame and Series count (#923)
- Implement
mean
operator for DataFrame and Series (#927) - Add comparison operands for DataFrame (#929)
- Support
df.reset_index
andseries.reset_index
(#933)
Enhancements
- Add public base class for entity data (#879)
- Merge operands representing multiple stages of one single operand (#935)
Bug fixes
- Fix sparse behavior for
tensor.min
andtensor.max
(#936)
Tests
v0.3.0rc1
This is the release notes of 0.3.0rc1. See here for the complete list of solved issues and merged PRs.
Highlights
- Mars now can handle more cases that failed due to tensors with unknown chunk shapes via iterative tiling support introduced in #834.
- Python 3.8 wheels are supported in this release.
New Features
- Support iterative tiling (#834)
- Add experimental column pruning rules for tileable graph optimization (#865)
- Tensor
- Add
mt.sort
support (#827)
- Add
- DataFrame
- Learn
Enhancements
- Add ReceiverStatusActor to help listening at receiver end (#833)
- Assign enqueued operands immediately when no descendants are ready (#854)
- Support transferring multiple chunks at one time (#841)
Bug fixes
- Fix incorrect behavior of dataframe arithmetic (#838)
- Mark resource as processing once allocated (#848)
- Fix
read_csv
execution on GPU (#859) - Kill process tree when terminating a worker process (#864)
Tests
v0.2.4
This is the release notes of v0.2.4. See here for the complete list of solved issues and merged PRs.
New Features
- Add
mt.sort
support (#862) - Support DataFrame rechunk (#866)
- Support Series's setitem and getitem by iloc operation (#868)
- Add tree reduction method for DataFrame groupby aggregations (#869)
Enhancements
Bug fixes
- Fix incorrect behavior of dataframe arithmetic (#840)
- Mark resource as processing once allocated (#851)
- Kill process tree when terminating a worker process (#867)
- Fix
read_csv
execution on GPU (#870)
Tests
- Add separate environment to test HDFS (#835)
v0.3.0b2
This is the release notes of v0.3.0b2. See here for the complete list of solved issues and merged PRs.
Highlights
- Interoperability with XGBoost and TensorFlow are introduced:
mars.learn.contrib.xgboost.XGBClassifier
andmars.learn.contrib.xgboost.XGBRegressor
can be used to do distributed classification and regression mission.mars.learn.contrib.tensorflow.run_tensorflow_script
supports running distributed TensorFlow 2.0 training in Mars cluster.
New Features
- Tensor
- Add
mt.unique
support for tensor (#783)
- Add
- DataFrame
- Learn
Enhancements
- Return execution exception info properly to session client (#770)
- Simplify tiles logic to improve its performance (#792)
- Support
axis
argument forpermutation
andshuffle
(#803) - Support
__iadd__
etc by wrapadd
without
argument (#813) - Handle worker storage in batches (#818)
Bug fixes
- Correct type checking for DataFrame arithmetic (#815)
Tests
Others
- Bump copyright year to 2020 (#809)
v0.2.3
This is the release notes of v0.2.3. See here for the complete list of solved issues and merged PRs.
New Features
- Tensor:
- Add
mt.unique
support for tensor (#798)
- Add
- DataFrame
Enhancements
- Simplify tiles logic to improve its performance (#801)
- Return execution exception info properly to session client. (#821)
- Support
axis
argument forpermutation
andshuffle
(#822) - Support
__iadd__
etc by wrapadd
without
argument (#824)
Bug fixes
- Correct type checking for DataFrame arithmetic (#819)
- Fix stuck issue of GeventThreadPoolExecutor (#823)
Tests
v0.3.0b1
This is the release notes of v0.3.0b1. See here for the complete list of solved issues and merged PRs.
New Features
- Implements
numpy.random.shuffle
andnumpy.random.permutation
for tensor (#762) - Add preliminary support for distributed execution with CUDA (#776)
- Add multiple GPU support for local execution (#779)
- Support DataFrame
groupby.agg
(#767)
Enhancements
- Overhaul dataframe/series index alignment. (#737)
- Add support for controlling data copy across processes (#766)
Bug fixes
v0.2.2
This is the release notes of v0.2.2. See here for the complete list of solved issues and merged PRs.
New Features
- Add multiple GPU support for local execution (#781)
- Implements
numpy.random.shuffle
andnumpy.random.permutation
for tensor (#780) - Support DataFrame
groupby.agg
(#782)
Enhancements
- Overhaul dataframe/series index alignment (#778)
Bug fixes
- Fix execution of arithmetic on GPU (#777)
v0.3.0a2
This is the release notes of v0.3.0a2. See here for the complete list of solved issues and merged PRs.
New Features
- Add
to_gpu
andto_cpu
support for both tensor and DataFrame (#630) - Access column using
__getattr__
syntax for DataFrame (#712)
Enhancements
- Move related files to optimizes module (#640)
- Add option for plasma path (#699)
- Wait for graph to finish instead of querying with fixed intervals (#701)
- Submit initial operands together in one RPC call (#711)
- Add lock free option for workers (#716)
- Implements more flexible
tileable.cix[]
(#731) - Submit metas obtained from schedulers (#727)
- Spawn promise to utilize async network libs (#725)
- Simplify data transfer protocol (#736)
- Fuse some operations in cholesky's tile (#742)
Bug fixes
- Separate flags for initials and terminals for operands (#703)
- Remove redundant RPC calls for schedulers (#705)
- Fix incorrect chunk shape in QR decomposition (#719)
__setitem__
on a view should be still a view (#733)- Processing
index
andcolumns
seperately (and correctly) infrom_tensor
(#723) - Add a config to use cpuacct.stat to calculate cpu usage (#740)
- Fix race condition when starting tasks and adding callbacks (#755)
v0.2.1
This is the release notes of v0.2.1. See here for the complete list of solved issues and merged PRs.
New Features
- Add
to_gpu
andto_cpu
support for both tensor and DataFrame (#706) - Access column using
__getattr__
syntax for DataFrame (#746)
Enhancements
- Wait for graph to finish instead of querying with fixed intervals (#707)
- Spawn promise to utilize async network libs (#735)
- Submit metas obtained from schedulers (#741)
- Submit initial operands together in one RPC call (#745)
- Fuse some operations in cholesky's tile (#749)
- Simplify data transfer protocol (#744)
Bug fixes
- Separate flags for initials and terminals (#708)
- Remove redundant RPC calls for schedulers (#709)
- Fix incorrect chunk shape in QR (#722)
- Use cpuacct.stat to calculate cpu usage in Docker containers (#743)
- Processing
index
andcolumns
seperately (and correctly) infrom_tensor
(#747) __setitem__
on a view should be still a view (#748)