3
votes

GAE dashboard shows stats for different URIs of your app. It includes Req/Min, Requests, Runtime MCycles, and Avg Latency. The help provided seems to be outdated, here what it states:

The current load table provides two data points for CPU usage, "Avg CPU (API)" and "% CPU". The "Avg CPU (API)" displays the average amount of CPU a request to that URI has consumed over the past hour, measured in megacycles. The "% CPU" column shows the percentage of CPU that URI has consumed since midnight PST with respect to the other URIs in your application.

  1. So I assume Runtime MCycles is what the help calls Avg CPU (API)? How do I map this number to the request stats in the logs? For example one of the requests has this kind of logs: ms=583 cpu_ms=519 api_cpu_ms=402.

  2. Do I understand correctly that ms includes cpu_ms and cpu_ms includes api_cpu_ms?

  3. So then cpu_ms is the Runtime MCycles which is shown as average for the given URI on dashboard?

  4. I have a F1 instance with 600Mhz and concurrency enabled for my app. Does it mean this instance throughput it 600 MCycles per second? So if average request takes 100 Mcycles, it should handle 5-6 request on average?

I am digging into this to try to predict the costs for my app under load.

1

1 Answers

0
votes

This blog post (by Nick Johnson) is a useful summary of what the request log fields mean: http://blog.notdot.net/2011/06/Demystifying-the-App-Engine-request-logs