On 4/19/24 05:12, Indan Zupancic wrote:
> Hello Andrew,
> 
> On 2024-04-19 05:00, Andrew Warkentin wrote:
>> Here's the exact code for the benchmark loop I'm using on seL4:
>>
>> void c_test_client(seL4_CPtr endpoint)
>> {
>>     struct seL4_MessageInfo info = seL4_MessageInfo_new(0, 0, 0, 2);
>>     int j;
>>     for (j = 0; j < 10000; j++){
>>         seL4_Call(endpoint, info);
>>     }
>> }
>>
>> void c_test_server(seL4_CPtr endpoint, seL4_CPtr reply)
>> {
>>   struct seL4_MessageInfo info = seL4_MessageInfo_new(0, 0, 0, 2);
>>   while (1){
>>     seL4_Recv(endpoint, (void *)0, reply);
>>     seL4_Send(reply, info);
>>   }
>> }
> 
> This measures synchronous calls, so 20k context switches back and forth
> between the client and the server.
> 
>> I'm not quite sure what would be slowing it down. I would have thought
>> this would be measuring only the cost of a round trip IPC and nothing
>> more. Is there possibly some kind of scheduling issue adding overhead?
> 
> Yes, you are running it in a virtual machine, remember? Any timing is 
> suspect.

Should not be an order of magnitude off, though.
-- 
Sincerely,
Demi Marie Obenour (she/her/hers)

_______________________________________________
Devel mailing list -- devel@sel4.systems
To unsubscribe send an email to devel-leave@sel4.systems

Reply via email to