Skip to content

RAMitchell/legate.hello

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Legate Hello World

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.

About

Legate Hello World Pedagogical Library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 45.5%
  • Python 44.3%
  • Cuda 5.3%
  • Makefile 2.7%
  • C 2.2%