Files
Dmitrii Kuvaiskii 8eee4a4742 [LibOS,Pal,Examples,GSC,Docs] Move manifest parsing to TOML
The manifest syntax stays exactly the same, including 0 and 1
integers to denote boolean values (this is done for ease of porting
and can be fixed in future commits). The only visible change is
surrounding strings in the manifest with quotes (requirement of
TOML). All manifests and Makefiles of our tests and example apps are
ported to the new TOML syntax. Documentation is updated.
2020-11-12 05:45:07 -08:00
..
2020-09-25 05:11:54 -07:00
2020-09-25 05:11:54 -07:00

# Memcached

This directory contains the Makefile and the template manifest for the most
recent version of Memcached as of this writing (v1.5.21). This was tested on a
machine with SGX v1 and Ubuntu 18.04.

The Makefile and the template manifest contain extensive comments and are made
self-explanatory. Please review them to gain understanding in Graphene-SGX
and requirements for applications running under Graphene-SGX.

# Prerequisites

Please install `libevent-dev` package. If you want to benchmark with memcslap,
also install `libmemcached-tools`.

# Quick Start

```sh
# build Memcached and the final manifest
make SGX=1

# run original Memcached against a benchmark (memtier_benchmark,
# install the benchmark on your host OS first)
./memcached &
memtier_benchmark --port=11211 --protocol=memcache_binary --hide-histogram
killall memcached

# run Memcached in non-SGX Graphene against a benchmark
# (note -u nobody, for explanation see memcached.manifest.template)
./pal_loader memcached -u nobody &
memtier_benchmark --port=11211 --protocol=memcache_binary --hide-histogram
killall pal-Linux

# run Memcached in Graphene-SGX against a benchmark
SGX=1 ./pal_loader memcached -u nobody &
memtier_benchmark --port=11211 --protocol=memcache_binary --hide-histogram
killall pal-Linux-SGX
```