[libc-commits] [PATCH] D148600: Rebase D148288 and associated test commits by jhuber6 on D148191
Jon Chesterfield via Phabricator via libc-commits
libc-commits at lists.llvm.org
Mon Apr 17 19:17:03 PDT 2023
JonChesterfield created this revision.
JonChesterfield added reviewers: jhuber6, jdoerfert, tianshilei1992, michaelrj, sivachandra, tra, gchatelet.
Herald added subscribers: libc-commits, kosarev, mattd, asavonic, kerbowa, jvesely.
Herald added projects: libc-project, All.
JonChesterfield requested review of this revision.
[Not to land] Rebase D148288 <https://reviews.llvm.org/D148288> and associated tests on D148191 <https://reviews.llvm.org/D148191>
Apologies for the sequence of commits mashed together, I don't know how to untangle
them in phab from the github fork Joseph pointed me to. This isn't a patch to land,
creating for discussion. It's also somewhat messy - the interface from D148288 <https://reviews.llvm.org/D148288>,
namely alternating send/recv model - and the state in the Port instance are unchanged
and don't mesh particularly cleanly with the previous patch.
Handle server leaks ports in D148288 <https://reviews.llvm.org/D148288>, could have been a compile time error
Odd number of send/recv calls in D148288 <https://reviews.llvm.org/D148288> will leave ports that can never be opened again
The ack/data distinction is not necessary to encode the desired send/recv model
Tests pass as before. The simplified bitmap hacked together for D148585 <https://reviews.llvm.org/D148585> doesn't work so
this patch uses the real one.
Primary change is to drop the ack/data distinction in favour of inbox==outbox implies
ownship and inbox != outbox implies the other process owns the buffer. This seems to be
the primary difference in modelling the domain between the two patches.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D148600
Files:
libc/cmake/modules/LLVMLibCTestRules.cmake
libc/src/__support/CPP/atomic.h
libc/src/__support/OSUtil/gpu/io.cpp
libc/src/__support/OSUtil/gpu/io.h
libc/src/__support/OSUtil/gpu/quick_exit.cpp
libc/src/__support/RPC/rpc.h
libc/startup/gpu/amdgpu/start.cpp
libc/startup/gpu/nvptx/start.cpp
libc/test/integration/startup/gpu/CMakeLists.txt
libc/test/integration/startup/gpu/rpc_test.cpp
libc/utils/gpu/loader/CMakeLists.txt
libc/utils/gpu/loader/Loader.h
libc/utils/gpu/loader/Main.cpp
libc/utils/gpu/loader/Server.h
libc/utils/gpu/loader/amdgpu/CMakeLists.txt
libc/utils/gpu/loader/amdgpu/Loader.cpp
libc/utils/gpu/loader/nvptx/CMakeLists.txt
libc/utils/gpu/loader/nvptx/Loader.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D148600.514502.patch
Type: text/x-patch
Size: 42219 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libc-commits/attachments/20230418/921bf138/attachment-0001.bin>
More information about the libc-commits
mailing list