libc for GPUs¶

Note

This feature is very experimental and may change in the future.

The GPU support for LLVM’s libc project aims to make a subset of the standard C library available on GPU based accelerators. Navigate using the links below to learn more about this project.

  • Building libs for GPUs
    • Building the GPU C library
      • Standard runtimes build
      • Runtimes cross build
      • Standalone cross build
    • Build overview
    • CMake options
  • Using libc for GPUs
    • Using the GPU C library
      • Offloading usage
        • OpenMP Offloading example
      • Direct compilation
        • Building for AMDGPU targets
        • Building for NVPTX targets
  • Supported Functions
    • ctype.h
    • string.h
    • strings.h
    • stdbit.h
    • stdlib.h
    • inttypes.h
    • stdio.h
    • time.h
    • assert.h
  • Remote Procedure Calls
    • Remote Procedure Call Implementation
      • Client Example
      • Server Example
      • CUDA Server Example
      • Extensions
  • Testing the GPU C library
    • Testing infrastructure
    • Testing utilities
      • Startup object
      • Loader runtime
    • Running tests
  • Motivation and Limitations
    • Motivation
    • Limitations

libc

Navigation

Status & Support

  • Implementation Status
  • Architecture Support
  • Platform Support
  • Compiler Support

Simple Usage

  • Getting Started

Advanced Usage

  • Full Host Build
  • Full Cross Build
  • Overlay Mode
  • libc for GPUs
  • libc for UEFI
  • Configure Options

Development

  • LLVM-libc Maintainers
  • Building and Testing the libc
  • Developer Guides
  • Bringup on a New OS or Architecture
  • Contributing to the libc Project

Useful Links

  • Talks
  • Source Code
  • Bug Reports
  • Discourse
  • Join the Discord
  • Discord Channel
  • Buildbot

Related Topics

  • Documentation overview
    • Previous: Overlay Mode
    • Next: Building libs for GPUs

Quick search

©2011-2025, LLVM Project. | Powered by Sphinx 7.2.6 & Alabaster 0.7.16 | Page source