# Genie Profile

Genie Profile APIs provides means to profile performance metrics of GenAI models. Profiling can be
enabled on genie-t2t-run and genie-t2e-run by passing the “–profile FILENAME” argument. This dumps
the collected profiling data to a JSON file with the provided name.

## Profiling JSON Output Schema

{
      "header": {
        "type": "object",
        "properties": {
          "header_version": {
            "type": "object",
            "properties": {
              "major": {"type": "integer"},
              "minor": {"type": "integer"},
              "patch": {"type": "integer"}
            },
            "required": [
              "major",
              "minor",
              "patch"
            ]
          },
          "version": {
            "type": "object",
            "properties": {
              "major": {"type": "integer"},
              "minor": {"type": "integer"},
              "patch": {"type": "integer"}
            },
            "required": [
              "major",
              "minor",
              "patch"
            ]
          },
          "artifact_type": { "type": "string" }
        },
        "required": [
          "header_version",
          "version",
          "artifact_type"
        ]
      },
      "metadata": {
        "type": "object",
        "properties": {
          "timestamp": {"type": "integer"}
        },
        "required": [
          "timestamp"
        ]
      },
      "components": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "name": {"type": "string"},
            "type": {"type": "string", "enum" : ["dialog", "embedding"]},
            "events": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "type": {
                      "type": "string",
                      "enum" : [
                        "GenieDialog_create", "GenieDialog_query", "GenieDialog_free",
                        "GenieEmbedding_create", "GenieEmbedding_generate","GenieEmbedding_free"
                      ]
                  },
                  "duration": {"type": "integer"},
                  "start": {"type": "integer"},
                  "stop": {"type": "integer"},
                  "init-time": {
                    "type": "object",
                    "properties": {
                      "value": {"type": "integer"},
                      "unit": {"type": "string"}
                    },
                    "required": [
                      "value",
                      "unit"
                    ]
                  },
                  "num-prompt-tokens": {
                    "type": "object",
                    "properties": {
                      "value": {"type": "integer"},
                      "unit": {"type": "string"}
                    },
                    "required": [
                      "value",
                      "unit"
                    ]
                  },
                  "prompt-processing-rate": {
                    "type": "object",
                    "properties": {
                      "value": {"type": "integer"},
                      "unit": {"type": "string"}
                    },
                    "required": [
                      "value",
                      "unit"
                    ]
                  },
                  "time-to-first-token": {
                    "type": "object",
                    "properties": {
                      "value": {"type": "integer"},
                      "unit": {"type": "string"}
                    },
                    "required": [
                      "value",
                      "unit"
                    ]
                  },
                  "num-generated-tokens": {
                    "type": "object",
                    "properties": {
                      "value": {"type": "integer"},
                      "unit": {"type": "string"}
                    },
                    "required": [
                      "value",
                      "unit"
                    ]
                  },
                  "token-generation-rate": {
                    "type": "object",
                    "properties": {
                      "value": {"type": "integer"},
                      "unit": {"type": "string"}
                    },
                    "required": [
                      "value",
                      "unit"
                    ]
                  },
                  "token-generation-time": {
                    "type": "object",
                    "properties": {
                      "value": {"type": "integer"},
                      "unit": {"type": "string"}
                    },
                    "required": [
                      "value",
                      "unit"
                    ]
                  }
                }
              },
              "required": [
                "type",
                "duration",
                "start",
                "stop"
              ]
            }
          }
        },
        "required": [
            "name",
            "type",
            "events"
        ]
      },
      "traceEvents" : {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "name": {"type": "string"},
            "cat": {"type": "string", "enum": ["function"]},
            "dur": {"type": "integer"},
            "ph": {"type": "string", "enum": ["X"]},
            "pid": {"type": "integer"},
            "tid": {"type": "integer"},
            "ts": {"type": "integer"},
            "args": {
              "type": "object",
              "properties": {
                "stackDepth": {"type": "integer"}
              }
            }
          }
        }
      }
    }
    Copy to clipboard

## Example on how to use Profiling APIs

# Create Profile Handle
    GenieProfile_Handle_t profileHandle = NULL;
    GenieProfile_create(nullptr, &profileHandle);
    
    # Create Dialog Config
    GenieDialogConfig_Handle_t dialogConfigHandle   = NULL;
    GenieDialogConfig_createFromJson(dialogConfigStr, &dialogConfigHandle);
    
    # Bind Profile Handle to Dialog Config
    GenieDialogConfig_bindProfiler(dialogConfigHandle, profileHandle);
    
    # Create Dialog
    GenieDialog_Handle_t dialogHandle = NULL;
    GenieDialog_create(dialogConfigHandle, &dialogHandle);
    
    # Run Dialog Query API
    GenieDialog_query(dialogHandle, promptStr, GenieDialog_SentenceCode_t::GENIE_DIALOG_SENTENCE_COMPLETE, queryCallback);
    
    # Get Profiling Data
    const char* jsonData = nullptr;
    const Genie_AllocCallback_t callback([](size_t size, const char** data) {
      *data = (char*)malloc(size);
    });
    GenieProfile_getJsonData(profileHandle, callback, &jsonData);
    
    # Dump to JSON File and Free the Allocated Data
    std::ofstream outFile;
    outFile.open(profilePath);
    outFile << jsonData;
    outFile.close();
    free((char*)jsonData);
    
    # Free Profile Handle
    GenieProfile_free(profileHandle);
    Copy to clipboard

## Trace Profiling Example

Tracing can be enabled on profile handles in order to collect detailed event data. When tracing is enabled,
The JSON output from [GenieProfile\_getJsonData](https://docs.qualcomm.com/doc/80-63442-10/topic/function_GenieProfile_8h_1af16af81be1483300a7a121cfaebaab09.html#exhale-function-genieprofile-8h-1af16af81be1483300a7a121cfaebaab09)
contains a “traceEvents” section which adheres to the Chrometrace JSON schema. The resultant JSON file can be
loaded into Chrometrace viewer tools, such as **chrome://tracing** on Chrome-based web browsers,
or [Perfetto Trace Visualizer](https://ui.perfetto.dev/).

The following section demonstrates how to enable trace profiling in genie-app with the example profile config located at
${SDK\_ROOT}/examples/Genie/configs/profile/trace.json:

# genie-app trace profiling script
    profile config create pconfig1 path/to/trace.json
    profile create profile1 pconfig1
    
    dialog config create config1 path/to/dialogConfig.json
    dialog config bind profile config1 profile1
    dialog create dialog1 config1
    
    dialog query dialog1 "Here's a summary of llamas in 10 words."
    
    profile save profile1 profile_trace.json
    
    # Clean up
    dialog config free config1
    dialog free dialog1
    
    profile config free pconfig1
    profile free profile1
    Copy to clipboard

The script will generate a profile\_trace.json which can be directly loaded into Chrometrace viewers:

![Example of a Genie trace file viewed in chrome://tracing.](data:image/png;base64,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)

Last Published: Jun 04, 2026

[Previous Topic
Genie Log](https://docs.qualcomm.com/bundle/publicresource/80-63442-10/topics/logger.md) [Next Topic
Genie Pipeline](https://docs.qualcomm.com/bundle/publicresource/80-63442-10/topics/pipeline_pipeline.md)