[libc] Test the RPC interface with multiple blocks
authorJoseph Huber <jhuber6@vols.utk.edu>
Mon, 17 Apr 2023 12:09:59 +0000 (07:09 -0500)
committerJoseph Huber <jhuber6@vols.utk.edu>
Thu, 20 Apr 2023 01:02:33 +0000 (20:02 -0500)
commita080798fb2d2343704512ad6adbf9fe1e13eec96
treecaac43e30bf2bcfdc7452f3c30bd7172a3ecc044
parent0bd564a259e1647343e3137abe6b618d7ad09c18
[libc] Test the RPC interface with multiple blocks

The RPC interface can support multiple independent clients. This support
currently only supports many single-thread warps / workgroups
coordinating over a single lock. This patch uses the support added in
the previous patch to test the RPC interface with multiple blocks.

Note that this does not work with multiple threads currently because of
the effect of warps / workgroups executing in lockstep incorrectly. This
will be added later.

Depends on D148485

Reviewed By: lntue, sivachandra

Differential Revision: https://reviews.llvm.org/D148486
libc/cmake/modules/LLVMLibCTestRules.cmake
libc/test/integration/startup/gpu/CMakeLists.txt
libc/test/integration/startup/gpu/rpc_test.cpp