Changho Hwang
4cdb100265
Release GIL for Python APIs with wait ( #190 )
2023-11-14 21:11:01 +08:00
Changho Hwang
3521fb0280
Clear minor warnings ( #214 )
...
Clear warnings from the clang compiler.
2023-11-14 09:28:48 +08:00
Saeed Maleki
85e8017535
Atomic for semaphores instead of fences ( #188 )
...
Co-authored-by: Pratyush Patel <pratyushpatel.1995@gmail.com >
Co-authored-by: Esha Choukse <eschouks@microsoft.com >
Co-authored-by: Changho Hwang <changhohwang@microsoft.com >
2023-10-13 18:57:08 +08:00
Saeed Maleki
148681b4bc
Fix a pytest bug ( #196 )
2023-10-13 16:39:43 +08:00
Changho Hwang
8c0f9e84d0
v0.3.0 ( #171 )
2023-10-11 22:35:54 +08:00
Changho Hwang
11ac824cc7
Align interfaces of put/get/putPackets/getPackets ( #185 )
2023-10-07 22:18:26 +08:00
Changho Hwang
6c0ee72916
Construct ProxyChannel with shared pointers ( #184 )
2023-09-18 05:46:23 +00:00
Changho Hwang
3aa72098d9
Add poll() for semaphores ( #181 )
2023-09-15 07:40:44 +00:00
Binyang2014
097aa8843a
Fix pytest unstable issue. ( #170 )
...
- remove `#include <cstdint>` from `poll.hpp`. To make it only contains
device-side code
- Fix compilation issue, which will cause pytest fail randomly. Reuse
the compiled result for same kernel with different arguments
2023-09-06 17:09:04 -07:00
Olli Saarikivi
828be48b21
Add Context and Endpoint classes to enable non-Communicator use-cases ( #166 )
...
This PR implements and closes #137 . The new `Endpoint` and `Context`
classes expose the connection establishing functionality from
`Communicator`, which now is only responsible for tying together the
bootstrapper with a context.
The largest breaking change here is that
`Communicator.connectOnSetup(...)` now returns the `Connection` wrapped
inside a `NonblockingFuture`. This is because with the way `Context` is
implemented a `Connection` is now fully initialized on construction.
Some smaller breaking API changes from this change are that
`RegisteredMemory` no longer has a `rank()` function (as there maybe no
concept of rank), and similarly `Connection` has no `remoteRank()` and
`tag()` functions. The latter are replaced by `remoteRankOf` and `tagOf`
functions in `Communicator`.
A new `EndpointConfig` class is introduced to avoid duplication of the
IB configuration parameters in the APIs of `Context` and `Communicator`.
The usual usage pattern of just passing in a `Transport` still works due
to an implicit conversion into `EndpointConfig`.
Miscellaneous changes:
-Cleans up how the PIMPL pattern is applied by making both the `Impl`
struct and the `pimpl_` pointers private for all relevant classes in the
core API.
-Enables ctest to be run from the build root directory.
2023-09-06 13:10:04 +08:00
Binyang2014
858e381829
Pytest ( #162 )
...
Port python tests to mscclpp.
Please run
`mpirun -tag-output -np 8 pytest ./python/test/test_mscclpp.py -x` to start pytest
---------
Co-authored-by: Saeed Maleki <saemal@microsoft.com >
Co-authored-by: Changho Hwang <changhohwang@microsoft.com >
Co-authored-by: Saeed Maleki <30272783+saeedmaleki@users.noreply.github.com >
2023-09-01 21:22:11 +08:00
Saeed Maleki
8d1b984bed
Change device handle interfaces & others ( #142 )
...
* Changed device handle interfaces
* Changed proxy service interfaces
* Move device code into separate files
* Fixed FIFO polling issues
* Add configuration arguments in several interface functions
---------
Co-authored-by: Changho Hwang <changhohwang@microsoft.com >
Co-authored-by: Binyang Li <binyli@microsoft.com >
Co-authored-by: root <root@a100-saemal0.qxveptpukjsuthqvv514inp03c.gx.internal.cloudapp.net >
2023-08-16 20:00:56 +08:00
Olli Saarikivi
4865b2017b
Add Python get_include() ( #141 )
...
Introduces a mscclpp.get_include() in the Python module.
The extension module is now named _mscclpp so that we can have
Python code in the mscclpp module.
Also does some miscellaneous cleanup.
2023-07-25 10:23:16 -07:00
Binyang2014
9a488f0da2
update python binding ( #136 )
...
update pythons binding for `device_handle`
2023-07-24 03:00:33 +00:00
Saeed Maleki
e7d5e652df
Python bindings ( #125 )
...
Co-authored-by: Olli Saarikivi <olsaarik@microsoft.com >
Co-authored-by: Changho Hwang <changhohwang@microsoft.com >
Co-authored-by: Binyang Li <binyli@microsoft.com >
2023-07-19 15:35:54 +08:00
Madan Musuvathi
c042d9af54
Merge branch 'cpp-api' into saemal/api-extension
2023-04-13 22:32:38 +00:00
Crutcher Dunnavant
272097fb9b
[python] switch to python setup.py build and wheels
2023-04-12 12:40:25 -07:00
Crutcher Dunnavant
d9077e5795
[python] switch to setup.py to build package
2023-04-12 12:29:17 -07:00
Felipe Petroski Such
516349c282
fix write_all
2023-04-12 12:29:17 -07:00
Crutcher Dunnavant
b93cfa3ca4
registeredmemory wip
2023-04-12 12:29:17 -07:00
Crutcher Dunnavant
19962a8002
format
2023-04-12 12:29:17 -07:00
Crutcher Dunnavant
b25bcf5f93
register buffers
2023-04-12 12:29:17 -07:00
Crutcher Dunnavant
00d382dbf7
format
2023-04-07 19:12:05 -07:00
Crutcher Dunnavant
34464b40bb
register buffers
2023-04-07 19:11:50 -07:00
Crutcher Dunnavant
44a8a539ad
types
2023-04-07 12:08:32 -07:00
Crutcher Dunnavant
d014693288
cleanup tests
2023-04-07 11:37:24 -07:00
Crutcher Dunnavant
68eff98bbc
update ci.sh
2023-04-07 11:27:45 -07:00
Crutcher Dunnavant
e65def8657
bug
2023-04-07 11:27:45 -07:00
Crutcher Dunnavant
7753c38eb1
working on connect
2023-04-07 11:27:45 -07:00
Crutcher Dunnavant
f7e330da21
Fixup formating for python
2023-04-05 21:47:08 +00:00
Saeed Maleki
5fe87e5da6
lint fixes
2023-04-05 01:41:21 +00:00
Crutcher Dunnavant
151b29f70c
docs and format
2023-04-04 18:55:08 +00:00
Crutcher Dunnavant
659a88a767
remove env hook
2023-04-04 18:31:08 +00:00
Crutcher Dunnavant
aaf93c858d
extract level
2023-04-04 18:29:45 +00:00
Crutcher Dunnavant
0df50830e1
log callbacks
2023-04-04 17:57:46 +00:00
Crutcher Dunnavant
423affeaa6
all gather bytes, json, pickle
2023-04-03 23:39:06 +00:00
Crutcher Dunnavant
17e1885981
allocation fixes
2023-04-03 23:39:06 +00:00
Crutcher Dunnavant
8cac41c8ac
[python] working on bootstrap all gather bug
2023-04-03 23:39:06 +00:00
Saeed Maleki
19bf369dc1
link format correction
2023-03-27 20:40:15 +00:00
Saeed Maleki
9eca65283c
added cmake requirement -- it needs 3.18 or higher
2023-03-25 18:44:20 +00:00
Crutcher Dunnavant
98e254c5f6
readme change
2023-03-25 01:06:23 -07:00
Crutcher Dunnavant
f929d2eaba
add ci hook
2023-03-25 00:41:21 +00:00
Crutcher Dunnavant
3b1abaaad1
basic init test
2023-03-24 23:45:29 +00:00
Crutcher Dunnavant
8b6e35d5e0
rebase and fix
2023-03-24 22:23:20 +00:00
Crutcher Dunnavant
57b3c36975
include left out lib; add enums
2023-03-24 22:18:51 +00:00
Crutcher Dunnavant
e181cca064
switch to static linking of nanobind
2023-03-24 22:18:51 +00:00
Crutcher Dunnavant
69957baf8d
update readme, build python package dir
2023-03-24 22:18:51 +00:00
Crutcher Dunnavant
48e4bac1e0
formatting and additional methods
2023-03-24 22:18:51 +00:00
Crutcher Dunnavant
eb9b750830
format and guard
2023-03-24 22:18:51 +00:00
Crutcher Dunnavant
be96f38ba3
Work towards a nanobind wrapper
2023-03-24 22:18:51 +00:00