Benchmarking Genode TrustZone

Christian Helmuth christian.helmuth at ...1...
Thu Jun 23 16:23:29 CEST 2016


Hello Tiago,

On Thu, Jun 23, 2016 at 02:40:10PM +0100, Tiago Brito wrote:
> // start timer here
> for(i = 0; i < size; i++) {
>         color = oldp[i];
>         alpha = (color >> 24) & 0xff;
>         red = (color >> 16) & 0xff;
>         green = (color >> 8) & 0xff;
>         blue = color & 0xff;
>         lum = (int) (red * 0.299 + green * 0.587 + blue * 0.114);
>         newp[i] = (alpha << 24) | (lum << 16) | (lum << 8) | lum;
>     }
> // end timer here
> // check timer diff and print result
> 
> I'm testing this same exact code on both the Secure and Nonsecure domains.
> In the NW I'm getting about 155 ms of execution time, which for that buffer
> and transformation seems ok. On the other hand, the SW is giving me about
> 610 ms of execution time.
> 
> I can't seem to find a reasonable explanation for this time difference,
> since the code running in both scenarios is exactly the same. The secure
> code is running inside the TZ_VMM example.

Did you check that the generated binary code is similar? Did you try
to measure only the run time of the for-loop in both worlds?

Regards
-- 
Christian Helmuth
Genode Labs

http://www.genode-labs.com/ · http://genode.org/
https://twitter.com/GenodeLabs · /ˈdʒiː.nəʊd/

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth




More information about the users mailing list