The Hello World example has been moved to the legate.core repository.
This repository contains a "Hello World" introduction to building a small Legate library.
Users can begin by investigating the legate/hello/runtime.py
file which demonstrates
the necessary code for setting up a LegateLibrary
object, launching Legion tasks to
perform computations, and returning data objects that implement the __legate_data_interface__
.
From there, users can investigate the files in the src/
directory. The src/hello*
files
demonstrate how to register tasks with the Legion runtime using Legate APIs. Implementations of
various different task variants for CPUs, OpenMP, and GPU processors can be found in
src/task.cc
and src/task.cu
. The src/mapper.cc
file shows a small customization to
a Legion mapper for mapping the tasks produced by the Legate Hello world example.
There is a test program in tests/hello.py
that will demonstrate running the Hello
World library code in practice.
The install.py
and setup.py
scripts in this directory coupled with src/Makefile
will
provide a good framework for setting up a build system for any Legate library.
If you have questions, please contact us at legate(at)nvidia.com.