[libc-commits] [PATCH] D147054: [libc] Begin implementing a library for the RPC server

Joseph Huber via Phabricator via libc-commits libc-commits at lists.llvm.org
Tue Mar 28 08:20:10 PDT 2023


jhuber6 created this revision.
jhuber6 added reviewers: jdoerfert, tianshilei1992, JonChesterfield, tra, sivachandra, michaelrj, lntue.
Herald added subscribers: libc-commits, kosarev, mattd, asavonic, ecnelises, kerbowa, tschuett, jvesely.
Herald added projects: libc-project, All.
jhuber6 requested review of this revision.
Herald added subscribers: jplehr, sstefan1.

This patch consolidates the handling of the RPC server implementation
into a single library. In the future we should be able to distribute
this as the API to use the RPC from different implementations for
offloading runtimes. E.g. we build this file in `libc` and then
statically link against it in OpenMP.

Would appreciate suggestions on how to make this more self-contained.
I would like to avoid exposing the actual `__llvm_libc` portions. The
fact that we need to use special allocators makes it a bit more
difficult. Otherwise we could hide all of the implementations in the
source file. One option is the classic C approach.

  void foo(void *fnptr, void *data);
  
  void foo(void *fnptr, void *data) {
    fnptr(arg, data);
  }


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D147054

Files:
  libc/utils/gpu/CMakeLists.txt
  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
  libc/utils/gpu/server/CMakeLists.txt
  libc/utils/gpu/server/rpc_server.cpp
  libc/utils/gpu/server/rpc_server.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D147054.509025.patch
Type: text/x-patch
Size: 10995 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libc-commits/attachments/20230328/5894c323/attachment-0001.bin>


More information about the libc-commits mailing list