Commit 96a298a8 authored by Andreas Schmidt's avatar Andreas Schmidt
Browse files

Add evaluation code and data for NSDI'18.

parent 7817e094
Loading
Loading
Loading
Loading
+71 −97

File changed.

Preview size limit exceeded, changes collapsed.

+8191 −0

File added.

Preview size limit exceeded, changes collapsed.

+8191 −0

File added.

Preview size limit exceeded, changes collapsed.

nsdi2018/xlap.yml

0 → 100644
+174 −0
Original line number Diff line number Diff line
data_files:
    sender: "sender.csv"
    receiver: "receiver.csv"
threads:
    - app_send
    - trans_send
    - trans_recv
    - app_recv
cycle_reference:
    app_send:
        Start: PrrtSendStart
        Stop: PrrtSendEnd
    trans_send:
        Start: PrrtTransmitStart
        Stop: LinkTransmitEnd
    trans_recv:
        Start: LinkReceive
        Stop: PrrtReturnPackage
    app_recv:
        Start: PrrtReceivePackage
        Stop: PrrtDeliver
time_reference:
    sender:
        Start: PrrtSendStart
        Stop: LinkTransmitEnd
    receiver:
        Start: LinkReceive
        Stop: PrrtDeliver
stamps:
    PrrtSendStart:
        Source: sender
        Thread: app_send
        Type: time
    PrrtSubmitPackage:
        Source: sender
        Thread: app_send
        Type: cycle
    PrrtSendEnd:
        Source: sender
        Thread: app_send
        Type: time

    PrrtTransmitStart:
        Source: sender
        Thread: trans_send
        Type: time
    PrrtTransmitEnd:
        Source: sender
        Thread: trans_send
        Type: cycle
    PrrtEncodeStart:
        Source: sender
        Thread: trans_send
        Type: cycle
    PrrtEncodeEnd:
        Source: sender
        Thread: trans_send
        Type: cycle
    LinkTransmitStart:
        Source: sender
        Thread: trans_send
        Type: cycle
    ChannelTransmit:
        Source: sender
        Thread: trans_send
        Type: time
    LinkTransmitEnd:
        Source: sender
        Thread: trans_send
        Type: time

    ChannelReceive:
        Source: receiver
        Thread: trans_recv
        Type: time
    LinkReceive:
        Source: receiver
        Thread: trans_recv
        Type: time
    SendFeedbackStart:
        Source: receiver
        Thread: trans_recv
        Type: cycle
    SendFeedbackEnd:
        Source: receiver
        Thread: trans_recv
        Type: cycle
    DecodeStart:
        Source: receiver
        Thread: trans_recv
        Type: cycle
    DecodeEnd:
        Source: receiver
        Thread: trans_recv
        Type: cycle
    HandlePacketStart:
        Source: receiver
        Thread: trans_recv
        Type: cycle
    HandlePacketEnd:
        Source: receiver
        Thread: trans_recv
        Type: cycle
    PrrtReturnPackage:
        Source: receiver
        Thread: trans_recv
        Type: time

    PrrtDeliver:
        Source: receiver
        Thread: app_recv
        Type: time
    CopyOutputStart:
        Source: receiver
        Thread: app_recv
        Type: cycle
    CopyOutputEnd:
        Source: receiver
        Thread: app_recv
        Type: cycle
    PrrtReceivePackage:
        Source: receiver
        Thread: app_recv
        Type: time
durations:
    Send:
        Start: PrrtSendStart
        Stop: PrrtSendEnd
        Source: sender
    PrrtTransmit:
        Start: PrrtTransmitStart
        Stop: PrrtTransmitEnd
        Source: sender
    LinkTransmit:
        Start: LinkTransmitStart
        Stop: LinkTransmitEnd
        Source: sender
    Submit:
        Start: PrrtSendStart
        Stop: PrrtSubmitPackage
        Source: sender
    Enqueue:
        Start: PrrtSubmitPackage
        Stop: PrrtSendEnd
        Source: sender
    SenderIPC:
        Start: PrrtSubmitPackage
        Stop: PrrtTransmitStart
        Source: sender
    SenderEnqueued:
        Start: PrrtSendEnd
        Stop: LinkTransmitStart
        Source: sender

    ReceiverIPC:
        Start: PrrtReturnPackage
        Stop: PrrtReceivePackage
        Source: receiver
    HandlePacket:
        Start: HandlePacketStart
        Stop: HandlePacketEnd
        Source: receiver
    Feedback:
        Start: SendFeedbackStart
        Stop: SendFeedbackEnd
        Source: receiver
    Decoding:
        Start: DecodeStart
        Stop: DecodeEnd
        Source: receiver

packet_types:
    Data: 0
    Redundancy: 1
+2 −1
Original line number Diff line number Diff line
@@ -24,7 +24,8 @@ static inline unsigned long long timestampByTime(struct timespec *ts)
void XlapTimestampTableDump(FILE *out, XlapTimestampPacketKind kind, XlapTimestampTable *table)
{
#	define OUT(id) fprintf(out, ",%llu,%llu", timestampByTime(&table->rows[row].time[ts_##id].actual.t), (unsigned long long) table->rows[row].time[ts_##id].actual.c);
	for (unsigned int row = 0; row < TS_ROWS; row++) {
    // Start at 1 to remove the scratch row 0 from output.
	for (unsigned int row = 1; row < TS_ROWS; row++) {
		fprintf(out, "%u,%u", row, (unsigned) kind);
		PP_foreach(PP_join_space, OUT, TIMESTAMP_ID_LIST)
		fprintf(out, "\n");
Loading