This patch introduces documentation for the new GPU mode added in
D138608. The documentation includes instructions for building and using
the library, along with a description of the supported functions and
headers.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
I think as a first draft this looks great. It also makes it clear this is WIP. @sivachandra wdyt?
libc/docs/gpu_mode.rst | ||
---|---|---|
51 | double toolchain |
In addition to what you have here, we should also describe what you envision this to eventually become. Including information on how you envision this to plug holes in the current practices/systems would be even better.
libc/docs/gpu_mode.rst | ||
---|---|---|
55 | The actual build command, a ninja <something> is missing in the above list of commands. |
In the original diff, you hinted at that there is currently no support for malloc and free. Could you inspect the archive with llvm-nm for unsupported functions?
The device code is embedded inside the objects so llvm-nm won't show the interesting symbols, but we could probably tell by name. The functions listed in the Supported Functions header is intended to be an inclusive list. Implementing malloc and free will require an RPC mechanism to call the host OS from the GPU which we're still working on. I could make this more clear in the current documentation.
Sorry. llvm-nm was a distraction. However, I believe mentioning RPC, malloc, and free is an improvement. Thx!
libc/docs/gpu_mode.rst | ||
---|---|---|
28 |