Skip to content

ut-osa/telekine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telekine

Telekine is a system that removes timing information from communication with the GPU.

Telekine assumes that the GPU computation itself is protected by a Trusted Execution Environment (TEE). There are not currently any GPU TEEs on the market.

Much of the API remoting code was generated by an early version of AvA. Development of that project has diverged, so we provide the specification used (hip.nw.cpp) for documentation purposes but you should not expect it to work with current AvA.

The files that were generated by AvA have the form: *_nw_*.*.

Please take a look at our publications for more details about the design:

  • Tyler Hunt, Zhipeng Jia, Vance Miller, Ariel Szekely, Yige Hu, Christopher J. Rossbach, and Emmett Witchel. Telekine: Secure Computing with Cloud GPUs. In NSDI 2020.

Prerequisites :

  • ROCm 1.8

Build:

To build the client and the server run:

make

This will generate libguestlib.so and manager_tcp. manager_tcp should be run on the machine with the GPU; it facilitates API forwarding over the network. libguestlib.so should be either linked into the application in place of the Hip/ROCm libraries, or preloaded with LD_PRELOAD. We've provided the script lgm_run which handles preloading the library for you.

Both manager_tcp and lgm_run take arguments that are explained in cli help.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published