We lifted 15 functions out of this paper's own repositories and ran 4 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.
| Repository | Role | Ran |
|---|---|---|
| ftramer/slalom | canonical | 4 of 15 |
| Function | Status | Where it lives |
|---|---|---|
| get_topk_acc | Ran | ftramer/slalom/python/slalom/utils.py code served (permissive licence) · get_code("93b77082971aa931") |
| preproc | Ran | ftramer/slalom/python/slalom/models.py code served (permissive licence) · get_code("ef3e4ee2d57fea02") |
| preprocess_input | Ran | ftramer/slalom/python/slalom/mobilenet_sep.py code served (permissive licence) · get_code("de695392eae44227") |
| size_to_mb | Ran | ftramer/slalom/python/slalom/utils.py code served (permissive licence) · get_code("2298663a26889386") |
| apply_with_random_selector | Not yet run | ftramer/slalom/python/preprocessing/inception_preprocessing.py code served (permissive licence) · get_code("e82919ec054e8a8b") |
| conv_block | Not yet run | ftramer/slalom/python/slalom/resnet.py code served (permissive licence) · get_code("1f8b213998b7f612") |
| distort_color | Not yet run | ftramer/slalom/python/preprocessing/inception_preprocessing.py code served (permissive licence) · get_code("7d9923a3d6958b99") |
| distorted_bounding_box_crop | Not yet run | ftramer/slalom/python/preprocessing/inception_preprocessing.py code served (permissive licence) · get_code("f1bd3b4c3f92fe63") |
| identity_block | Not yet run | ftramer/slalom/python/slalom/resnet.py code served (permissive licence) · get_code("9dd7bc39a7aa04ea") |
| log2 | Not yet run | ftramer/slalom/python/slalom/quant_layers.py code served (permissive licence) · get_code("a20066212a0e7e85") |
| preproc_tf | Not yet run | ftramer/slalom/python/slalom/models.py code served (permissive licence) · get_code("0d0120e2b5dcdf5c") |
| preprocess_for_eval | Not yet run | ftramer/slalom/python/preprocessing/cifarnet_preprocessing.py code served (permissive licence) · get_code("8dd44485a0d07e53") |
| preprocess_for_train | Not yet run | ftramer/slalom/python/preprocessing/cifarnet_preprocessing.py code served (permissive licence) · get_code("a7e384fd44f9fdc9") |
| preprocess_image | Not yet run | ftramer/slalom/python/preprocessing/cifarnet_preprocessing.py code served (permissive licence) · get_code("6c265d4a08d5f4d4") |
| preprocess_image | Not yet run | ftramer/slalom/python/preprocessing/lenet_preprocessing.py code served (permissive licence) · get_code("5329cb0ae570d122") |
Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.
As Machine Learning (ML) gets applied to security-critical or sensitive domains, there is a growing need for integrity and privacy for outsourced ML computations. A pragmatic solution comes from Trusted Execution Environments (TEEs), which use hardware and software protections to isolate sensitive computations from the untrusted software stack. However, these isolation guarantees come at a price in performance, compared to untrusted alternatives. This paper initiates the study of high performance execution of Deep Neural Networks (DNNs) in TEEs by efficiently partitioning DNN computations between trusted and untrusted devices. Building upon an efficient outsourcing scheme for matrix multiplication, we propose Slalom, a framework that securely delegates execution of all linear layers in a DNN from a TEE (e.g., Intel SGX or Sanctum) to a faster, yet untrusted, co-located processor. We evaluate Slalom by running DNNs in an Intel SGX enclave, which selectively delegates work to an untrusted GPU. For canonical DNNs (VGG16, MobileNet and ResNet variants) we obtain 6x to 20x increases in throughput for verifiable inference, and 4x to 11x for verifiable and private inference.
The same record, over MCP at https://syntology.ai/mcp:
get_harvested_code_for_paper("1806.03287")
get_code_for_paper("1806.03287")
have("1806.03287")
Connect an agent — have() is free.