Add network driver VM example #180
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds:
The basic idea is:
There is a prerequisite PR to this PR: au-ts/microkit_sdf_gen#25
A design issue to be aware of: the guest needs to know how many network clients there are and map their TX data regions into Linux userspace due to lack of DMA. In addition, the guest needs to know the physical address of data regions to deduct it from the DMA address it receives from the virtualisers to obtain an offset.
Currently this is worked around by patching the virtualisers config file into the VMM which contains the necessary information. I propose that we properly fix this by adding some sort of config flag to the virtualisers to pass a data offset rather than a DMA address.
UDP Performance:
Requested_Throughput,Receive_Throughput,Send_Throughput,Packet_Size,Minimum_RTT,Average_RTT,Maximum_RTT,Stdev_RTT,Median_RTT,Bad_Packets,Idle_Cycles,Total_Cycles
1000000000,17550188,999999918,1472,60702,586044,820693,82082.59,578942,0,0,0
TCP Performance:
Requested_Throughput,Receive_Throughput,Send_Throughput,Packet_Size,Minimum_RTT,Average_RTT,Maximum_RTT,Stdev_RTT,Median_RTT,Bad_Packets,Idle_Cycles,Total_Cycles
1000000000,25179006,25178369,1460,107794,277407,513069,68840.15,273578,0,0,0
Checklist to get this merged: