github.com/eth-easl/loader@v0.0.0-20230908084258-8a37e1d94279/pkg/workload/proto/faas.proto (about) 1 /* 2 * Set up: 3 * $ go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.26 4 * $ go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.1 5 * 6 * Add `<GOPATH>/bin` to your $PATH: 7 * OR (!suboptimal since it overwrites $PATH by appending an additional 8 * line as opposed to change it directly) 9 * $ echo "export PATH=$PATH:$(go env GOPATH)/bin" >> ~/.profile 10 * $ source ~/.profile 11 * OR temporarily 12 * $ export PATH="$PATH:$(go env GOPATH)/bin" 13 */ 14 syntax = "proto3"; 15 16 option go_package = "github.com/eth-easl/loader/workload/proto"; 17 18 package faas; 19 20 service Executor { 21 // Remote execution via RPC call. 22 rpc Execute (FaasRequest) returns (FaasReply) {} 23 } 24 25 message FaasRequest { 26 string message = 1; // Text message field (unused). 27 uint32 runtimeInMilliSec = 2; // Execution runtime [ms]. 28 uint32 memoryInMebiBytes = 3; // Request memory usage [MiB]. 29 } 30 31 message FaasReply { 32 string message = 1; // Text message field (unused). 33 uint32 durationInMicroSec = 2; // Execution latency [µs]. 34 uint32 memoryUsageInKb = 3; // Memory usage [KB]. 35 }