# Bulk download Source: https://docs.silicondata.com/api-reference/bulk-download ## POST /api/data-hub/gpu/archive/list Get GPU batch download list. A list of `id` from response must be used in the `/download` endpoint to find the download URL. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. All fields are optional; `filter` is a list of single-key objects. | Field | Type | Required | Description | Constraints | | ----------------------- | ------- | -------- | ------------------------------------------------- | ---------------------------- | | `filter/tier` | integer | No | The data tier to be downloaded; defaults to 3 | | | `filter/interval` | string | No | Interval of the data | \[day, month, quarter, year] | | `filter/type` | string | No | Data type | \[rental, retail] | | `filter/period` | string | No | Data period, e.g. "2025-03-31", "2025-03", "2025" | | | `paginate/num_per_page` | integer | No | How many records to return per page; default 50 | \[ 1 .. 100 ] | | `paginate/page_num` | integer | No | The page index number; default 1 | >= 1 | | `order_by/period` | string | No | Sort order of the file list | \[asc, desc] | ### Request Example ```json theme={null} { "filter": [ {"tier": 3}, {"interval": "day"}, {"type": "rental"}, {"period": "2025-06-02"} ], "paginate": {"num_per_page": 10, "page_num": 1}, "order_by": [ {"period": "desc"} ] } ``` ### Responses Response consists of meta and data, where: * meta is the metadata regarding the request. `code` in `meta` indicates the error code of the request, with 0 indicating no error. * data contains the total number of results and a list of results, each containing the `id` that can be used to download the data. ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/gpu/archive/list", "message": "OK", "timestamp": 1748908800 }, "data": { "total": 1, "results": [ { "tier": 3, "interval": "day", "period": "2025-06-02", "type": "rental", "csv_s3_path": "s3://bucket/path/to/file.csv", "id": "1234567890123456789", "sequence_id": 1 } ] } } ``` *** ## POST /api/data-hub/gpu/archive/download Get GPU data download URL using `id`, obtained from the `/list` endpoint. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ----- | ------- | -------- | ----------------------------- | ----------- | | `id` | integer | Yes | ID used for find download URL | | ### Request Example ```json theme={null} { "id": 1234567890123456789 } ``` ### Responses ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/gpu/archive/download", "message": "OK", "timestamp": 1748908800 }, "data": { "csv_download_url": "https://sd-data-archive.s3.amazonaws.com/gpu/2025-03-31.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=3600&X-Amz-Signature=8f3c1b9a2d..." } } ``` ## Batch download GPU data using Python This example shows how to batch download GPU data using the two endpoints above. We first list the available data using the `/list` endpoint, and then download each file using the `/download` endpoint. The required API token can be obtained through the user portal. ```python theme={null} import requests token = "ENTER YOUR API TOKEN HERE" headers = {'Authorization': f'Bearer {token}'} base_url = "https://api.silicondata.com/api/data-hub/gpu/archive" body = { "filter": [ {"tier": 3}, {"interval": "day"}, {"type": "rental"}, {"period": "2025-06-02"} ], "paginate": {"num_per_page": 10, "page_num": 1}, "order_by": [ {"period": "desc"} ] } listing_res = requests.post(f"{base_url}/list", json=body, headers=headers).json() for res in listing_res['data']['results']: download_res = requests.post(f"{base_url}/download", json={"id": res['id']}, headers=headers).json() csv_download_url = download_res['data']['csv_download_url'] with open(f"{res['period']}.csv", 'wb') as file: file.write(requests.get(csv_download_url).content) ``` # SiliconCarbon API Source: https://docs.silicondata.com/api-reference/carbon API docs for accessing GPU carbon intensity and carbon emission data from Silicon Data. > 📌 **Note:** All SiliconCarbon endpoints require an active subscription. Successful responses are wrapped in a `{ "meta": {...}, "data": {...} }` envelope; the documented response body for each endpoint is returned under the `data` key. ## GET /api/data-hub/carbon/gpu-carbon-intensity Calculate the carbon intensity of a GPU for a given location, using query parameters. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters | Field | Type | Required | Description | Constraints | | -------------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------ | ----------- | | `gpu_slug` | string or null | No | GPU slug. Either `gpu_slug` or `gpu_name` must be provided. | | | `gpu_name` | string or null | No | GPU full name. If `gpu_slug` is filled in, full name will be overridden; if `gpu_slug` is not provided, full name is required. | | | `hours_used` | number | Yes | GPU used in hours, should be greater than 0. | > 0 | | `zipcode` | string | Yes | Zip code of data center. | | | `country_code` | string | Yes | Country code of data center, represented in ISO 3166-1 alpha-2, e.g., `US` for United States. | | ### Request Example ``` GET /api/data-hub/carbon/gpu-carbon-intensity?gpu_slug=nvidia-h100&hours_used=24&zipcode=94103&country_code=US ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/gpu-carbon-intensity", "message": "OK", "timestamp": 1744201871 }, "data": { "carbonIntensity": 643.20, "gpu_slug": "nvidia-h100", "gpu_name": null, "gpu_tdp": 700, "zipcode": "94103", "country_code": "US", "carbon_emission_rate": 38.2857, "carbon_data_updated_time": "2025-04-01T00:00:00" } } ``` * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/data-hub/carbon/gpu-carbon-intensity", "message": "Parameter value error: hours_used:Input should be greater than 0", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` * **500**: Business Error (e.g., region not found, GPU not found, or missing GPU identifier) ```json theme={null} { "meta": { "code": 34003, "url": "/api/data-hub/carbon/gpu-carbon-intensity", "message": "Unfortunately, we currently do not have data available for the region you selected.\nFor more information, please contact us at support@silicondata.com.", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` *** ## POST /api/data-hub/carbon/gpu-carbon-intensity Calculate the carbon intensity of a GPU for a given location, using a JSON request body. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | -------------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------ | ----------- | | `gpu_slug` | string or null | No | GPU slug. Either `gpu_slug` or `gpu_name` must be provided. | | | `gpu_name` | string or null | No | GPU full name. If `gpu_slug` is filled in, full name will be overridden; if `gpu_slug` is not provided, full name is required. | | | `hours_used` | number | Yes | GPU used in hours, should be greater than 0. | > 0 | | `zipcode` | string | Yes | Zip code of data center. | | | `country_code` | string | Yes | Country code of data center, represented in ISO 3166-1 alpha-2, e.g., `US` for United States. | | ### Request Example ```json theme={null} { "gpu_slug": "nvidia-h100", "gpu_name": null, "hours_used": 24, "zipcode": "94103", "country_code": "US" } ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/gpu-carbon-intensity", "message": "OK", "timestamp": 1744201871 }, "data": { "carbonIntensity": 643.20, "gpu_slug": "nvidia-h100", "gpu_name": null, "gpu_tdp": 700, "zipcode": "94103", "country_code": "US", "carbon_emission_rate": 38.2857, "carbon_data_updated_time": "2025-04-01T00:00:00" } } ``` * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/data-hub/carbon/gpu-carbon-intensity", "message": "Parameter value error: hours_used:Input should be greater than 0", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` * **500**: Business Error (e.g., region not found, GPU not found, or missing GPU identifier) ```json theme={null} { "meta": { "code": 34003, "url": "/api/data-hub/carbon/gpu-carbon-intensity", "message": "Unfortunately, we currently do not have data available for the region you selected.\nFor more information, please contact us at support@silicondata.com.", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` *** ## GET /api/data-hub/carbon/zone-emission-rate Query the carbon emission rate of a zone by zipcode and country code. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters | Field | Type | Required | Description | Constraints | | -------------- | ------ | -------- | ------------------------------------------------------------------------------ | ----------- | | `zipcode` | string | Yes | Zip code. | | | `country_code` | string | Yes | Country code, represented in ISO 3166-1 alpha-2, e.g., `US` for United States. | | ### Request Example ``` GET /api/data-hub/carbon/zone-emission-rate?zipcode=94103&country_code=US ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/zone-emission-rate", "message": "OK", "timestamp": 1744201871 }, "data": { "carbon_emission_rate": { "zipcode": "94103", "country_code": "US", "country_name": "United States", "carbon_region_code": "US-CAL-CISO", "carbon_emission_rate": 38.2857, "carbon_emission_rate_type": "00", "emission_factor_type": "LC", "extra_data": null, "updated_time": "2025-04-01T00:00:00" } } } ``` > When no emission rate is found for the given zone, `carbon_emission_rate` is returned as `null`. * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/data-hub/carbon/zone-emission-rate", "message": "Parameter value error: zipcode:Field required", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` *** ## GET /api/data-hub/carbon/gpu-carbon-provider-intensity Calculate the carbon intensity of a GPU hosted by a specific cloud provider region. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters | Field | Type | Required | Description | Constraints | | --------------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------ | ----------- | | `gpu_slug` | string or null | No | GPU slug. Either `gpu_slug` or `gpu_name` must be provided. | | | `gpu_name` | string or null | No | GPU full name. If `gpu_slug` is filled in, full name will be overridden; if `gpu_slug` is not provided, full name is required. | | | `hours_used` | number | Yes | GPU used in hours, should be greater than 0. | > 0 | | `provider` | string | Yes | Name of the provider. | | | `provider_code` | string | Yes | Unique code of the provider region. | | ### Request Example ``` GET /api/data-hub/carbon/gpu-carbon-provider-intensity?gpu_slug=nvidia-h100&hours_used=24&provider=Amazon%20Web%20Services&provider_code=us-east-1 ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/gpu-carbon-provider-intensity", "message": "OK", "timestamp": 1744201871 }, "data": { "carbonIntensity": 643.20, "gpu_slug": "nvidia-h100", "gpu_name": null, "gpu_tdp": 700, "hour": 24, "provider": "Amazon Web Services", "provider_code": "us-east-1", "carbon_emission_rate": 38.2857, "carbon_data_updated_time": "2025-04-01T00:00:00" } } ``` * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/data-hub/carbon/gpu-carbon-provider-intensity", "message": "Parameter value error: provider_code:Field required", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` * **500**: Business Error (e.g., provider code not found, GPU not found, or missing GPU identifier) ```json theme={null} { "meta": { "code": -1, "url": "/api/data-hub/carbon/gpu-carbon-provider-intensity", "message": "No matching data found for provider_code us-east-1 in sd_data_center.", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` *** ## POST /api/data-hub/carbon/batch/gpu-carbon-intensity Batch query the carbon intensity of multiple GPUs in a single request. A maximum of 50 items may be submitted per request. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ------ | ----- | -------- | ---------------------------------------------------- | ------------ | | `data` | Array | No | List of the GPU carbon intensity querying arguments. | Max 50 items | #### data (Array) | Field | Type | Required | Description | Constraints | | -------------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------- | ----------- | | `gpu_slug` | string or null | No | GPU slug. If `gpu_name` is None, this field should be filled in. | | | `gpu_name` | string or null | No | GPU name. If `gpu_slug` is filled in, this field will be overridden; if `gpu_slug` is None, this field is required. | | | `hours_used` | number | Yes | GPU used in hours, should be greater than 0. | > 0 | | `zipcode` | string | Yes | Zipcode of data center. | | | `country_code` | string | Yes | Country code of data center, represented in ISO 3166-1 alpha-2, e.g., `US` for United States. | | ### Request Example ```json theme={null} { "data": [ { "gpu_slug": "nvidia-h100", "gpu_name": null, "hours_used": 24, "zipcode": "94103", "country_code": "US" }, { "gpu_slug": "nvidia-a100", "gpu_name": null, "hours_used": 12, "zipcode": "10001", "country_code": "US" } ] } ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/batch/gpu-carbon-intensity", "message": "OK", "timestamp": 1744201871 }, "data": { "data_cnt": 2, "data": [ { "gpu_slug": "nvidia-h100", "gpu_name": null, "gpu_tdp": 700, "hours_used": 24, "zipcode": "94103", "country_code": "US", "carbon_emission_rate": 38.2857, "carbon_data_updated_time": "2025-04-01T00:00:00", "carbon_intensity": 643.20 }, { "gpu_slug": "nvidia-a100", "gpu_name": null, "gpu_tdp": 0, "hours_used": 12, "zipcode": "10001", "country_code": "US", "carbon_emission_rate": null, "carbon_data_updated_time": null, "carbon_intensity": null } ] } } ``` > When the GPU or the carbon emission data for the given zone is not found, `carbon_intensity`, `carbon_emission_rate`, and `carbon_data_updated_time` are returned as `null` for that item. * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/data-hub/carbon/batch/gpu-carbon-intensity", "message": "Parameter value error: hours_used:Input should be greater than 0", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` * **500**: Business Error (e.g., batch exceeds 50 items, or an item is missing both `gpu_slug` and `gpu_name`) ```json theme={null} { "meta": { "code": -1, "url": "/api/data-hub/carbon/batch/gpu-carbon-intensity", "message": "Exceed the upper limit of the number of querying per request, should less or equal 50 per request.", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` *** ## GET /api/data-hub/carbon/country Query country detail information. Supports fuzzy (prefix) search by country name. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters | Field | Type | Required | Description | Constraints | | -------------- | ------ | -------- | ----------------------------------------------------------------------------- | ----------- | | `country_name` | string | No | Country name; supports prefix search. If omitted, all countries are returned. | | ### Request Example ``` GET /api/data-hub/carbon/country?country_name=United ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/country", "message": "OK", "timestamp": 1744201871 }, "data": { "data_cnt": 1, "data": [ { "country_name": "United States", "area": 9833517.0, "population": 331002651, "continent": "NA", "iso_3166_alpha_2": "US", "iso_3166_alpha_3": "USA", "iso_3166_numeric": "840", "created_time": "2024-01-01T00:00:00", "updated_time": "2025-04-01T00:00:00", "sync_time": "2025-04-01T00:00:00", "fips": "US", "capital": "Washington, D.C.", "default_zipcode": "20001" } ] } } ``` *** ## GET /api/data-hub/carbon/default-zipcode Query the default zipcode of a country by country code. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters | Field | Type | Required | Description | Constraints | | -------------- | ------ | -------- | ------------------------------------------------------------------------------ | ----------- | | `country_code` | string | Yes | Country code, represented in ISO 3166-1 alpha-2, e.g., `US` for United States. | | ### Request Example ``` GET /api/data-hub/carbon/default-zipcode?country_code=US ``` ### Responses * **200**: Successful Response The route returns the default zipcode as a string under the `data` key. ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/default-zipcode", "message": "OK", "timestamp": 1744201871 }, "data": "00501" } ``` > If the country has no zipcodes, `data` is returned as an empty string. * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/data-hub/carbon/default-zipcode", "message": "Parameter value error: country_code:Field required", "timestamp": 1744201871, "args": [], "kwargs": {} }, "data": {} } ``` *** ## GET /api/data-hub/carbon/providers/ Get the list of all data center providers. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters This endpoint takes no query parameters. ### Request Example ``` GET /api/data-hub/carbon/providers/ ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/providers/", "message": "OK", "timestamp": 1744201871 }, "data": { "providers": [ "Amazon Web Services", "Google Cloud Platform", "Azure" ] } } ``` *** ## GET /api/data-hub/carbon/providers//codes Get the region codes for a given provider by provider name. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Path Parameters | Field | Type | Required | Description | Constraints | | --------------- | ------ | -------- | --------------------- | ----------- | | `provider_name` | string | Yes | Name of the provider. | | ### Request Example ``` GET /api/data-hub/carbon/providers/Amazon%20Web%20Services/codes ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/providers/Amazon Web Services/codes", "message": "OK", "timestamp": 1744201871 }, "data": { "provider": "Amazon Web Services", "codes": [ "us-east-1", "us-west-2", "eu-west-1" ] } } ``` > If the provider is not found, both `provider` and `codes` are returned as `null`. *** ## GET /api/data-hub/carbon/providers\_selection//codes Get the region codes for a given provider, restricted to a fixed set of supported providers. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Path Parameters | Field | Type | Required | Description | Constraints | | --------------- | ------ | -------- | ------------------------------------------------------------------ | ------------------------------------------------------- | | `provider_name` | string | Yes | Name of the provider. Must be one of the supported provider names. | `Amazon Web Services`, `Google Cloud Platform`, `Azure` | ### Request Example ``` GET /api/data-hub/carbon/providers_selection/Amazon%20Web%20Services/codes ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/providers_selection/Amazon Web Services/codes", "message": "OK", "timestamp": 1744201871 }, "data": { "provider": "Amazon Web Services", "codes": [ "us-east-1", "us-west-2", "eu-west-1" ] } } ``` > If the provider is not found or has no codes, `data` is returned as `null`. *** ## GET /api/data-hub/carbon/providers\_with\_codes/ Get the list of all providers, each with its associated region codes. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters This endpoint takes no query parameters. ### Request Example ``` GET /api/data-hub/carbon/providers_with_codes/ ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/carbon/providers_with_codes/", "message": "OK", "timestamp": 1744201871 }, "data": { "data_cnt": 2, "data": [ { "provider_name": "Amazon Web Services", "codes": [ "us-east-1", "us-west-2" ] }, { "provider_name": "Google Cloud Platform", "codes": [ "us-central1", "europe-west1" ] } ] } } ``` # Forward curve Source: https://docs.silicondata.com/api-reference/forward-curve ## POST /api/gpu-forward/list Get the GPU rental forward curve for a single GPU type on a given forward date. A list of `id` from response must be used in the `/download` endpoint to find the download URL. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ----------------------- | ------- | -------- | ----------------------------------------------------------------------------------------- | ------------------- | | `filter/interval` | string | Yes | Interval of the data | \[day, month] | | `filter/period` | string | Yes | Date range in YYYY/MM/DD-YYYY/MM/DD | | | `filter/type` | string | Yes | GPU type | \[A100, B200, H100] | | `paginate/num_per_page` | integer | No | How many records will be return per one page, value score in 1 to 100,default value is 50 | \[ 1 .. 100 ] | | `paginate/page_num` | integer | No | The page index number, default value is 1 | >= 1 | | `order_by/period` | string | No | Order of the file list | \[asc, desc] | ### Request Example ```json theme={null} { "filter":[ {"interval":"day"}, {"period":"2025/01/06-2025/04/06"}, {"type":"A100"} ], "order_by":[ {"period":"desc"} ], "paginate":{"num_per_page":10,"page_num":1} } ``` ### Responses Response consists of meta and data, where: * meta is the metadata regarding the request. `code` in `meta` indicates the error code of the request, with 0 indicating no error. * data contains the total number of results and a list of results, each containing the `id` that can be used to download the data. ```json theme={null} { "meta": { "code": "integer", "url": "string", "message": "string", "timestamp": "integer", }, "data": { "total": "integer", "results": [ { "interval": "string", "period": "string", "type": "string", "csv_s3_path": "string", "id": "string", "sequence_id": "integer" } ] } } ``` *** ## POST /api/gpu-forward/download Get GPU data download URL using `id`, obtained from the `/list` endpoint. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ----- | ------- | -------- | ----------------------------- | ----------- | | `id` | integer | Yes | ID used for find download URL | | ### Request Example ```json theme={null} { "id": 2046555026029398400 } ``` ### Responses ```json theme={null} { "meta": { "code": "integer", "url": "string", "message": "string", "timestamp": "integer" }, "data": { "csv_download_url": "string" } } ``` # Residual Value Source: https://docs.silicondata.com/api-reference/forward-residual API docs for querying Forward Residual Value historical data ## POST /api/forward-residual/value Get historical residual values. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. All fields are optional. An empty body `{}` returns all supported GPUs from the default history start through today. | Field | Type | Required | Description | Constraints | | --------------- | --------------- | -------- | --------------------------------------------- | ------------------- | | `starting_date` | string | No | Start date of the range, in YYYY-MM-DD format | Inclusive | | `ending_date` | string | No | End date of the range, in YYYY-MM-DD format | Inclusive | | `gpu_list` | array of string | No | List of GPU types to query | \[A100, B200, H100] | ### Request Example ```json theme={null} { "starting_date": "2026-06-01", "ending_date": "2026-06-30", "gpu_list": ["H100", "B200"] } ``` To request one specific date, set both dates to the same value: ```json theme={null} { "starting_date": "2026-06-15", "ending_date": "2026-06-15", "gpu_list": ["H100"] } ``` ### Responses Response consists of meta and data, where: * meta is the metadata regarding the request. `code` in `meta` indicates the error code of the request, with 0 indicating no error. * Dates are inclusive. * Values are four-decimal strings. * Missing dates or GPU keys mean no observation; they must not be treated as zero. ```json theme={null} { "meta": { "code": 0, "url": "/api/forward-residual/value", "message": "OK", "timestamp": 1748908800 }, "data": { "starting_date": "2026-06-01", "ending_date": "2026-06-30", "data": { "H100": { "2026-06-01": "0.3761", "2026-06-02": "0.3714" } } } } ``` # GPU Index API Source: https://docs.silicondata.com/api-reference/gpu_index_api API docs for accessing GPU Index from Silicon Data. > 📌 **Note:** The GPU Index API is only available for **Plus** and **Professional** tier subscribers. Access is further gated per subscription: your subscription may restrict the available `index_version` (`hs` / `neo`) and the queryable date range. ## POST /api/gpu-index/index Get GPU index data, from starting date (from 2024-09-01) to ending date. If no date range is provided, data for today will be used by default. A returned value of `-1` or any negative number indicates that the data has not yet been generated—please wait or contact support. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | --------------- | -------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | | `gpu` | string | YES | GPU type to query (case-insensitive). | One of `h100`, `a100`, `b200`, `mi300x`, `h200`; 1 to 20 characters | | `index_version` | string | NO | Index version: `neo` (NeoCloud) or `hs` (HyperScaler). Defaults to `neo`. May be overridden by your subscription permissions. | One of `hs`, `neo` | | `starting_date` | string or null | NO | The start date for the query in `YYYY-MM-DD` format. Defaults to today if not provided. | On or after the per-GPU minimum date (default `2024-09-01`); not in the future | | `ending_date` | string or null | NO | The end date for the query in `YYYY-MM-DD` format. Defaults to today if not provided. | Not in the future | `starting_date` must be less than or equal to `ending_date`. ### Request Example ```json theme={null} { "gpu": "h100", "index_version": "neo", "starting_date": "2025-04-01", "ending_date": "2025-04-05" } ``` ### Responses * **200**: Successful Response Index values are returned as strings formatted to two decimal places. The `index_version` field is only included when your subscription grants access to an `hs`/`neo` catalog. ```json theme={null} { "meta": { "code": 0, "url": "/api/gpu-index/index", "message": "OK", "timestamp": 1744201871 }, "data": { "gpu": "h100", "starting_date": "2025-04-01", "ending_date": "2025-04-05", "indexes": { "2025-04-01": "2.25", "2025-04-02": "2.22", "2025-04-03": "2.27", "2025-04-04": "2.26", "2025-04-05": "2.33" }, "index_version": "neo" } } ``` * **422**: Validation Error ```json theme={null} { "detail": [ { "loc": [ "string" ], "msg": "string", "type": "string" } ] } ``` * **10008**: Parameter limit error (e.g. `starting_date` after `ending_date`, a date in the future, or an unsupported `gpu` type) ```json theme={null} { "meta": { "code": 10008, "url": "/api/gpu-index/index", "message": "starting date should be less than or equal to ending date", "timestamp": 1744289950, "args": [], "kwargs": {} }, "data": {} } ``` * **404**: Subscription not found ```json theme={null} { "meta": { "code": 404, "url": "/api/gpu-index", "message": "404, Not Found", "timestamp": 1744289950, "args": [], "kwargs": {} }, "data": {} } ``` # Silicon Mark™ GPU Performance API Source: https://docs.silicondata.com/api-reference/gpus API docs for listing individual GPU benchmark rows with scoreboard performance tiers from Silicon Data. # GPU Performance API ## GET /api/silicon-mark/v1/gpus List individual GPUs with scoreboard performance tiers. Returns paginated individual-GPU benchmark rows with server-derived Gaussian percentile tiers. In v1, scoreboard metrics are populated only when `benchmark_id` is `quick_mark`. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters | Field | Type | Required | Description | Constraints | | -------------- | ------- | -------- | -------------------------------------------------------------- | ------------------------------------------- | | `page` | integer | No | Page number | >= 1, default 1 | | `per_page` | integer | No | Items per page | \[ 1 .. 300 ], default 20 | | `benchmark_id` | string | No | Benchmark that drives scoreboard rows | default `quick_mark` (v1: use `quick_mark`) | | `gpu_model` | string | No | Filter by GPU model | | | `status` | string | No | Filter by Gaussian percentile tier | `optimal`, `acceptable`, `underperforming` | | `name` | string | No | Substring filter on job name | | | `tags` | array | No | Filter by job tags (repeat for multiple; job must include all) | | | `state` | string | No | Job state filter | default `completed` when omitted | ### Responses * **200**: Successful Response ```json theme={null} { "results": [ { "id": "7554621441-0", "gpu_label": "GPU0", "gpu_id": "GPU-550e8400-e29b-41d4-a716-446655440000", "model": "NVIDIA A100-SXM4-80GB", "job_name": "GPU Benchmark Test", "node_name": "192.168.1.10", "fp16": 78.5, "fp32": 39.2, "memory_bandwidth": 1935.4, "percentile": 82.4, "status": "optimal" } ], "pagination": { "total": 32, "page": 1, "per_page": 20, "total_pages": 2, "has_next": true, "has_prev": false } } ``` # Jobs Source: https://docs.silicondata.com/api-reference/jobs # Jobs API ## POST /api/silicon-mark/v1/jobs Create a new benchmarking job. `quick_mark` is always included automatically. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ------------- | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------- | | `name` | string | No | Job name (auto-generated if omitted) | Max 60 characters | | `description` | string | No | Job description | Max 512 characters | | `benchmarks` | array | Yes | List of benchmarks to run. Each item is a benchmark id string or a `{benchmark_id, config}` object. `quick_mark` is always added if not present. | No duplicate (id + config) | | `node_count` | integer | No | Number of expected nodes | \[ 1 .. 256 ], default 1 | | `tags` | array | No | Job tags | Max 10 tags, 50 chars each; certain special characters forbidden | ### Request Example ```json theme={null} { "name": "GPU Benchmark Test", "description": "Testing new cluster", "benchmarks": [ "quick_mark", { "benchmark_id": "cluster_network", "config": {} } ], "node_count": 4, "tags": ["production", "gpu"] } ``` ### Responses * **201**: Created ```json theme={null} { "id": "7554621440", "name": "GPU Benchmark Test", "description": "Testing new cluster", "node_count": 4, "benchmarks": ["quick_mark", "cluster_network"], "tags": ["production", "gpu"], "token": "eyJ0eXAiOiJKV1Q...", "created_at": "2024-03-15T10:30:00Z", "expires_at": "2024-03-16T10:30:00Z" } ``` * **400**: Bad Request ```json theme={null} { "error": { "code": "PARAMETER_INCORRECT_VALUE", "message": "Benchmark 'unknown_benchmark' not found" } } ``` * **401**: Unauthorized ```json theme={null} { "error": { "code": "CLIENT_TOKEN_INVALID", "message": "Invalid or expired token" } } ``` * **409**: Conflict ```json theme={null} { "error": { "code": "RESOURCE_ALREADY_EXISTS", "message": "Job with name 'GPU Test' already exists" } } ``` *** ## GET /api/silicon-mark/v1/jobs List jobs with filtering and pagination. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters | Field | Type | Required | Description | Constraints | | ---------------------- | -------- | -------- | ----------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | | `page` | integer | No | Page number | >= 1, default 1 | | `per_page` | integer | No | Items per page | \[ 1 .. 300 ], default 20 | | `sort_by` | string | No | Field to sort by (`created_at`, `started_at`, `ended_at`, `expires_at`, `name`, `state`, `node_count`, `current_nodes`) | default `created_at` | | `sort_order` | string | No | Sort direction | `asc` or `desc`, default `desc` | | `state` | string | No | Filter by job state | `created`, `starting`, `running`, `completed`, `aborted`, `failed`, `completed_with_warnings` | | `name` | string | No | Filter by name (partial match) | Max 60 characters | | `benchmark_id` | string | No | Filter by benchmark in sequence | | | `tags` | array | No | Filter by tags. Repeat the query param for multiple; a job must include all listed tags. | Max 10 | | `created_after` | datetime | No | Jobs created after this timestamp | ISO 8601 | | `created_before` | datetime | No | Jobs created before this timestamp | ISO 8601 | | `node_count_min` | integer | No | Minimum node count | \[ 1 .. 256 ] | | `node_count_max` | integer | No | Maximum node count | \[ 1 .. 256 ] | | `include_results` | boolean | No | Include GPU models and QuickMark aggregate results | default false | | `include` | array | No | Optional expansions: `performance`, `performance_nodes` (`performance_nodes` requires `performance`) | | | `has_performance_data` | boolean | No | When true, only jobs with scoreboard performance data are returned | | ### Responses * **200**: Successful Response ```json theme={null} { "results": [ { "id": "7554621440", "name": "GPU Benchmark Test", "token": "eyJ0eXAiOiJKV1Q...", "description": "Testing cluster", "state": "completed", "node_count": 4, "current_nodes": 4, "benchmark_sequence": [ { "benchmark_id": "quick_mark", "config": null }, { "benchmark_id": "cluster_network", "config": null } ], "tags": ["production"], "created_at": "2024-03-15T10:30:00Z", "started_at": "2024-03-15T10:35:00Z", "expires_at": "2024-03-16T10:30:00Z", "ended_at": "2024-03-15T11:45:00Z", "gpu_models": null, "quickmark_aggregate_results": null, "performance": null, "performance_nodes": null, "benchmarks": ["quick_mark", "cluster_network"] } ], "pagination": { "total": 42, "page": 1, "per_page": 20, "total_pages": 3, "has_next": true, "has_prev": false } } ``` *** ## GET /api/silicon-mark/v1/jobs/tags Get all unique tags from jobs belonging to the authenticated user. Scope depends on the user's role (regular users see their own jobs; customer admins see all jobs in their customer; root admins/staff see all jobs). ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Responses * **200**: Successful Response ```json theme={null} { "tags": ["production", "testing", "gpu-benchmark", "provider: aws"] } ``` *** ## GET /api/silicon-mark/v1/jobs/stats Performance tab badge count: the number of jobs whose aggregated performance status is underperforming (same scope as the performance job list). ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Query Parameters | Field | Type | Required | Description | Constraints | | -------------- | ------ | -------- | ---------------------------------------------------------- | ---------------------------------------------------- | | `benchmark_id` | string | No | Benchmark that drives performance rows | default `quick_mark` (v1 supports `quick_mark` only) | | `name` | string | No | Filter by job name | | | `tags` | array | No | Filter by tags (repeat for multiple; job must include all) | | | `state` | string | No | Filter by job state | default `completed` | | `sort_by` | string | No | Field to sort by | default `created_at` | | `sort_order` | string | No | Sort direction | `asc` or `desc`, default `desc` | ### Responses * **200**: Successful Response ```json theme={null} { "alert_job_count": 4 } ``` *** ## GET /api/silicon-mark/v1/jobs/\{job\_id} Get detailed information about a specific job. Tasks and all benchmark results are always included. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Path Parameters | Parameter | Type | Required | Description | | --------- | ------- | -------- | ----------- | | `job_id` | integer | Yes | The job ID | ### Responses * **200**: Successful Response ```json theme={null} { "id": "7554621440", "name": "GPU Benchmark Test", "token": "eyJ0eXAiOiJKV1Q...", "description": "Testing cluster performance", "state": "completed", "node_count": 4, "current_nodes": 4, "benchmark_sequence": [ { "benchmark_id": "quick_mark", "config": null }, { "benchmark_id": "cluster_network", "config": null } ], "tags": ["production"], "created_at": "2024-03-15T10:30:00Z", "started_at": "2024-03-15T10:35:00Z", "expires_at": "2024-03-16T10:30:00Z", "ended_at": "2024-03-15T11:45:00Z", "benchmarks": ["quick_mark", "cluster_network"], "tasks": [ { "id": "7554621441", "job_id": "7554621440", "machine_uuid": "550e8400-e29b-41d4-a716-446655440000", "machine_ip": "192.168.1.10", "state": "completed", "failed_message": null, "created_at": "2024-03-15T10:35:00Z", "started_at": "2024-03-15T10:35:30Z", "ended_at": "2024-03-15T11:40:00Z", "gpu_model": "NVIDIA A100-SXM4-80GB", "gpu_count": 8, "pdf_report_url": "https://...", "benchmark_results": {} } ], "benchmark_results": { "cluster_network": { "benchmark_id": "cluster_network", "benchmark_name": "Cluster Network", "started_at": "2024-03-15T10:40:00Z", "ended_at": "2024-03-15T10:55:00Z", "config": {}, "results": { "avg_bandwidth_gbps": 45.2, "avg_latency": 0.8, "min_bandwidth_gbps": 42.1, "total_links_tested": 12 }, "state": "completed", "error_message": null } }, "pdf_report_url": "https://...", "scoreboard_summary": null } ``` * **404**: Not Found ```json theme={null} { "error": { "code": "RESOURCE_NOT_FOUND", "message": "Job with id 7554621440 not found" } } ``` *** ## GET /api/silicon-mark/v1/jobs/\{job\_id}/results Get the result summary of this job. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Path Parameters | Parameter | Type | Required | Description | | --------- | ------- | -------- | ----------- | | `job_id` | integer | Yes | The job ID | ### Query Parameters | Field | Type | Required | Description | Constraints | | ----------------------- | ------- | -------- | ---------------------------------- | ------------- | | `include_display_names` | boolean | No | Include human-readable field names | default false | ### Responses The response is a map keyed by `benchmark_id`, where each value is a cluster-level benchmark result object. * **200**: Successful Response ```json theme={null} { "cluster_network": { "benchmark_id": "cluster_network", "benchmark_name": "Cluster Network", "started_at": "2024-03-15T10:40:00Z", "ended_at": "2024-03-15T10:55:00Z", "config": {}, "results": { "avg_bandwidth_gbps": 45.2, "avg_latency": 0.8, "min_bandwidth_gbps": 42.1, "total_links_tested": 12, "node_count": 4, "measurements": [] }, "state": "completed", "error_message": null } } ``` *** ## DELETE /api/silicon-mark/v1/jobs/delete Soft-delete a job and all associated tasks. Only the job owner (matching `customer_id`) can delete their jobs. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ----- | ------- | -------- | ---------------- | ----------- | | `id` | integer | Yes | Job ID to delete | >= 1 | ### Request Example ```json theme={null} { "id": 7554621440 } ``` ### Responses * **200**: Job successfully deleted ```json theme={null} { "message": "Job deleted successfully", "requires_agent_stop": false } ``` * **400**: Bad Request — job is in a state that prevents deletion (e.g. running) * **403**: Permission denied — user does not own this job * **404**: Not Found — job not found *** The following job endpoints are intentionally not documented here because they are not customer-facing: * `POST /api/silicon-mark/v1/jobs/anonymous` — internal anonymous job creation flow. * `GET /api/silicon-mark/v1/jobs/current` — agent-only; authenticated with a job token, used by the benchmarking agent to fetch its job configuration. * `POST /api/silicon-mark/v1/jobs/{job_id}/generate-report` — marked INTERNAL TESTING; agent/job-token only. # PriceIQ™ API Source: https://docs.silicondata.com/api-reference/priceiq_api Comprehensive guide to PriceIQ™. ## POST /api/price-iq/predict Get the predicted GPU price and its price percentile distribution for a given GPU configuration and geolocation. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | --------------------- | ------- | -------- | ----------------------------------------------------------------------------------------------------- | ----------------- | | `gpu_name` | string | Yes | GPU name, e.g. `A100 PCIE`. Must be one of the values returned by `/api/price-iq/specs-list`. | length 1–20 | | `type` | integer | Yes | Pricing type. One of: `0` = on-Demand, `1` = Interrupt, `2` = reserved. | one of \[0, 1, 2] | | `geolocation` | string | Yes | Geolocation, e.g. `California, US`. Must be one of the values returned by `/api/price-iq/specs-list`. | length 1–40 | | `cpu_platform` | string | Yes | CPU platform, e.g. `AMD`. One of: `Intel`, `AMD`, `Other`. | length 1–20 | | `cpu_cores_effective` | integer | No | Effective CPU core count. Defaults to `16`. | 1 ≤ value ≤ 1024 | | `cpu_ram_gb` | number | No | CPU RAM in GB. Defaults to `36`. | 1 ≤ value ≤ 1024 | | `ram_gb` | number | No | GPU RAM in GB. Defaults to `40`. | 1 ≤ value ≤ 512 | ### Request Example ```json theme={null} { "gpu_name": "A100 PCIE", "type": 0, "geolocation": "California, US", "cpu_platform": "AMD", "cpu_cores_effective": 16, "cpu_ram_gb": 64, "ram_gb": 40 } ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/price-iq/predict", "message": "OK", "timestamp": 1744201871 }, "data": { "predicted_price": 1.89, "percentile": { "gpu_name": "A100 PCIE", "type": 0, "geolocation": "California, US", "cpu_platform": "AMD", "stats": { "p10": 1.7, "p25": 1.79, "p50": 1.89, "p75": 1.98, "p90": 2.08 } } } } ``` * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/price-iq/predict", "message": "gpu_name:Field required", "timestamp": 1744289950, "args": [], "kwargs": {} }, "data": {} } ``` *** ## GET /api/price-iq/specs-list Get all supported GPU names, geolocations, pricing types, and CPU platforms accepted by the `/api/price-iq/predict` endpoint. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token This endpoint takes no query parameters. ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/price-iq/specs-list", "message": "OK", "timestamp": 1744201871 }, "data": { "gpu_list": [ "A100 PCIE", "A100 SXM4", "H100 NVL", "H100 PCIE", "H100 SXM" ], "geolocation_list": [ "California, US", "Virginia, US" ], "type_list": { "0": "on-Demand", "1": "Interrupt", "2": "reserved" }, "cpu_platform_list": [ "AMD", "Intel", "Other" ] } } ``` * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/price-iq/specs-list", "message": "Validation error", "timestamp": 1744289950, "args": [], "kwargs": {} }, "data": {} } ``` # RAM Index API Source: https://docs.silicondata.com/api-reference/ram_index_api API docs for accessing RAM Index from Silicon Data. > **Note:** The RAM Index API is only available for **Plus** and **Professional** tier subscribers. Access is further gated per subscription, which may restrict the queryable date range. ## POST /api/ram-index/index Get RAM index data, from starting date (from 2026-01-26) to ending date. If no date range is provided, data for today will be used by default. A returned value of `-1` or any negative number indicates that the data has not yet been generated; please wait or contact support. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | --------------- | -------------- | -------- | --------------------------------------------------------------------------------------- | ------------------------------------------- | | `ram` | string | YES | The RAM type to query (case-insensitive). Currently supported: `GDDR6`. | One of `gddr6`; 1 to 20 characters | | `index_version` | string | NO | Index version. Defaults to `WAVG_v1`. | One of `WAVG_v1`; 1 to 20 characters | | `starting_date` | string or null | NO | The start date for the query in `YYYY-MM-DD` format. Defaults to today if not provided. | On or after `2026-01-26`; not in the future | | `ending_date` | string or null | NO | The end date for the query in `YYYY-MM-DD` format. Defaults to today if not provided. | Not in the future | `starting_date` must be less than or equal to `ending_date`. ### Request Example ```json theme={null} { "ram": "GDDR6", "index_version": "WAVG_v1", "starting_date": "2026-02-19", "ending_date": "2026-02-25" } ``` ### Responses * **200**: Successful Response Index values are returned as strings formatted to two decimal places. The `index_version` field is only included when your subscription grants access to a `WAVG_v1` catalog. ```json theme={null} { "meta": { "code": 0, "url": "/api/ram-index/index", "message": "OK", "timestamp": 1774968508 }, "data": { "ram": "GDDR6", "starting_date": "2026-02-19", "ending_date": "2026-02-25", "indexes": { "2026-02-19": "14.64", "2026-02-20": "14.64", "2026-02-21": "14.64", "2026-02-22": "14.64", "2026-02-23": "14.64", "2026-02-24": "14.87", "2026-02-25": "14.87" }, "index_version": "wavg_v1" } } ``` * **422**: Validation Error ```json theme={null} { "detail": [ { "loc": [ "string" ], "msg": "string", "type": "string" } ] } ``` * **10008**: Parameter limit error (e.g. `starting_date` after `ending_date`, a date in the future, or an unsupported `ram` type) ```json theme={null} { "meta": { "code": 10008, "url": "/api/ram-index/index", "message": "starting date should be less than or equal to ending date", "timestamp": 1774968510, "args": [], "kwargs": {} }, "data": {} } ``` * **404**: Subscription not found ```json theme={null} { "meta": { "code": 404, "url": "/api/ram-index", "message": "404, Not Found", "timestamp": 1774968510 }, "data": {} } ``` # Recent data Source: https://docs.silicondata.com/api-reference/recent-data > 📌 **Note:** For the GPU catalog, spec filter parameters, and full GPU specs endpoints, see the [SiliconNavigator API](/api-reference/silicon-navigator) page. ## POST /api/data-hub/gpu/specs-list Get all GPU products (with their product IDs) that have price data available. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/gpu/specs-list", "message": "OK", "timestamp": 1744201871 }, "data": { "total": 1, "results": [ { "product_id": 1, "product_slug": "nvidia-h100-sxm", "chip": "H100", "name": "NVIDIA H100 SXM", "manufacturer": "NVIDIA", "mem": 80, "mem_bus": 5120, "bus": "SXM5", "bandwidth": 3350, "tdp": 700, "fp16": 1979, "msrp": 30000, "released_date": "2022-03-22" } ] } } ``` *** ## POST /api/data-hub/gpu/specs-query Get GPU products (with their product IDs) that have price data available, filtered by a search keyword. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. All fields are optional. | Field | Type | Required | Description | Constraints | | -------------- | ------- | -------- | -------------------------------------------------------------------------- | ------------- | | `num_per_page` | integer | No | How many records will be returned per page. Default value is 50. | \[ 1 .. 100 ] | | `page_num` | integer | No | The page index number. Default value is 1. | >= 1 | | `keyword` | string | No | Keyword used to search across GPU slug, name, and chip (case-insensitive). | | ### Request Example ```json theme={null} { "num_per_page": 50, "page_num": 1, "keyword": "h100" } ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/gpu/specs-query", "message": "OK", "timestamp": 1744201871 }, "data": { "total": 1, "results": [ { "product_id": 1, "product_slug": "nvidia-h100-sxm", "chip": "H100", "name": "NVIDIA H100 SXM", "manufacturer": "NVIDIA", "mem": 80, "mem_bus": 5120, "bus": "SXM5", "bandwidth": 3350, "tdp": 700, "fp16": 1979, "msrp": 30000, "released_date": "2022-03-22" } ] } } ``` * **422**: Validation Error ```json theme={null} { "detail": [ { "loc": [ "string" ], "msg": "string", "type": "string" } ] } ``` *** ## POST /api/data-hub/gpu/latest/price Get the latest available price for each GPU, country, and price type. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. All fields are optional. | Field | Type | Required | Description | Constraints | | -------------- | ------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | | `num_per_page` | integer | No | How many records will be returned per page. Default value is 50. | \[ 1 .. 100 ] | | `page_num` | integer | No | The page index number. Default value is 1. | >= 1 | | `keyword` | string | No | Keyword used to search across GPU slug, name, and chip (case-insensitive). | | | `product_id` | integer | No | Filter by a specific GPU product id. | | | `country` | string | No | The ISO 3166-1 alpha-2 country code. | \<= 2 characters | | `price_type` | integer | No | Filter by price type. Must be one of \[-1, 0, 1, 3, 6, 12, 100, 101, 102]. -1: Rental Spot, 0: Rental On-Demand, 1: Rental Reserved 1 month, 3: Rental Reserved 3 month, 6: Rental Reserved 6 month, 12: Rental Reserved 1 year, 100: Retail New, 101: Retail Refurbished, 102: Retail Used. | | ### Request Example ```json theme={null} { "num_per_page": 50, "page_num": 1, "keyword": "h100", "product_id": 1, "country": "US", "price_type": 0 } ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/gpu/latest/price", "message": "OK", "timestamp": 1744201871 }, "data": { "total": 1, "results": [ { "product_id": 1, "product_slug": "nvidia-h100-sxm", "chip": "H100", "name": "NVIDIA H100 SXM", "manufacturer": "NVIDIA", "date": "2025-04-05", "country": "US", "price_type": 0, "price_type_descriptioin": "Rental On-Demand", "price": 2.25 } ] } } ``` * **422**: Validation Error ```json theme={null} { "detail": [ { "loc": [ "string" ], "msg": "string", "type": "string" } ] } ``` *** ## POST /api/data-hub/gpu/history/price Get the historical price series for a GPU over a date range. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | -------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | | `num_per_page` | integer | No | How many records will be returned per page. Default value is 50. | \[ 1 .. 100 ] | | `page_num` | integer | No | The page index number. Default value is 1. | >= 1 | | `product_id` | integer | Yes | Product id of the GPU to retrieve price history for. | | | `start_date` | string | Yes | Start date of the price range, in YYYY-MM-DD format. | 10-character YYYY-MM-DD | | `end_date` | string | Yes | End date of the price range, in YYYY-MM-DD format. | 10-character YYYY-MM-DD; must be >= `start_date`; range may not exceed 90 days | | `price_type` | integer | Yes | Price type. Must be one of \[-1, 0, 1, 3, 6, 12, 100, 101, 102]. -1: Rental Spot, 0: Rental On-Demand, 1: Rental Reserved 1 month, 3: Rental Reserved 3 month, 6: Rental Reserved 6 month, 12: Rental Reserved 1 year, 100: Retail New, 101: Retail Refurbished, 102: Retail Used. | | | `country` | string | No | The ISO 3166-1 alpha-2 country code. | \<= 2 characters | ### Request Example ```json theme={null} { "num_per_page": 50, "page_num": 1, "product_id": 1, "start_date": "2024-10-01", "end_date": "2024-10-31", "price_type": 0, "country": "US" } ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/data-hub/gpu/history/price", "message": "OK", "timestamp": 1744201871 }, "data": { "total": 2, "results": [ { "product_id": 1, "product_slug": "nvidia-h100-sxm", "chip": "H100", "name": "NVIDIA H100 SXM", "manufacturer": "NVIDIA", "date": "2024-10-31", "country": "US", "price_type": 0, "price_type_descriptioin": "Rental On-Demand", "price": 2.33 }, { "product_id": 1, "product_slug": "nvidia-h100-sxm", "chip": "H100", "name": "NVIDIA H100 SXM", "manufacturer": "NVIDIA", "date": "2024-10-01", "country": "US", "price_type": 0, "price_type_descriptioin": "Rental On-Demand", "price": 2.25 } ] } } ``` * **422**: Validation Error ```json theme={null} { "detail": [ { "loc": [ "string" ], "msg": "string", "type": "string" } ] } ``` # Silicon navigator Source: https://docs.silicondata.com/api-reference/silicon-navigator ## GET /api/silicon-navigator/gpu-list Get the list of GPUs available in SiliconNavigator. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/silicon-navigator/gpu-list", "message": "OK", "timestamp": 1744201871 }, "data": { "total": 2, "results": [ { "id": 1, "name": "NVIDIA H100 SXM", "slug": "nvidia-h100-sxm" }, { "id": 2, "name": "NVIDIA A100 PCIe 80 GB", "slug": "nvidia-a100-pcie-80-gb" } ] } } ``` *** ## GET /api/silicon-navigator/gpu-specs/params Get the available filter parameters (distinct manufacturers and chips) for the GPU specs query. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/silicon-navigator/gpu-specs/params", "message": "OK", "timestamp": 1744201871 }, "data": { "manufacturer_list": [ "AMD", "NVIDIA" ], "chip_list": [ "A100", "H100", "MI300X" ] } } ``` *** ## POST /api/silicon-navigator/gpu-specs Get the GPU specs list, with optional filtering, ordering, and pagination. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. All fields are optional; an empty body returns the first page of results ordered by `retail_price desc`. | Field | Type | Required | Description | Constraints | | ---------- | ------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `filter` | array | No | List of filter conditions. Each item is an object with exactly one `{ "column": "value" }` pair. String columns match by case-insensitive substring; numeric columns accept an exact value or a `"low-high"` range. | Allowed columns: `name`, `slug`, `bus`, `manufacturer`, `chip`, `mem`, `mem_bus`, `bandwidth`, `fp16`, `tdp`, `msrp`, `retail_price`, `rental_price`, `cpp`, `ppw` | | `order_by` | array | No | List of order-by conditions. Each item is an object with exactly one `{ "column": "asc" \| "desc" }` pair. Defaults to `retail_price desc`. | Direction must be `asc` or `desc`; columns as in `filter` | | `paginate` | object | No | Pagination object with `num_per_page` and `page_num`. | `num_per_page`: \[ 1 .. 100 ], default 50; `page_num`: >= 1, default 1 | ### Request Example ```json theme={null} { "filter": [ { "manufacturer": "NVIDIA" }, { "mem": "80-141" } ], "order_by": [ { "retail_price": "desc" } ], "paginate": { "num_per_page": 50, "page_num": 1 } } ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/silicon-navigator/gpu-specs", "message": "OK", "timestamp": 1744201871 }, "data": { "total": 1, "results": [ { "id": 1, "name": "NVIDIA H100 SXM", "slug": "nvidia-h100-sxm", "manufacturer": "NVIDIA", "chip": "H100", "bus": "SXM5", "mem": 80, "mem_bus": 5120, "bandwidth": 3350, "fp16": 1979, "tdp": 700, "msrp": 30000, "retail_price": 28500, "rental_price": 2.25, "released_date": "2022-03-22" } ] } } ``` * **422**: Validation Error ```json theme={null} { "detail": [ { "loc": [ "string" ], "msg": "string", "type": "string" } ] } ``` # Token Index API Source: https://docs.silicondata.com/api-reference/token_index_api API docs for accessing Token Index from Silicon Data. > **Note:** Access to the Token Index API is gated per subscription. Your subscription may restrict the available `token`, `index_version`, and queryable date range. ## POST /api/token-index/index Get daily LLM token index data for a requested token, index version, and date range. If no date range is provided, data for the server current date is used by default. Missing dates are returned as `"-1"`. ### Authorization This endpoint requires a valid user token or application token. **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | --------------- | -------------- | -------- | ----------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | | `token` | string | YES | LLM token index type (case-insensitive). Currently supported: `expenditure`. | 1 to 60 characters | | `index_version` | string | NO | Token index version. Defaults to `v1` (case-insensitive). | 1 to 60 characters | | `starting_date` | string or null | NO | The start date for the query in `YYYY-MM-DD` format. Defaults to the server current date. | On or after `2025-12-01`, unless deployment config overrides it; not in the future | | `ending_date` | string or null | NO | The end date for the query in `YYYY-MM-DD` format. Defaults to the server current date. | Not in the future | `starting_date` must be less than or equal to `ending_date`. ### Request Example ```json theme={null} { "token": "expenditure", "index_version": "v1", "starting_date": "2026-04-20", "ending_date": "2026-04-26" } ``` ### Responses * **200**: Successful Response Index values are returned as strings formatted to four decimal places. `index_name` is taken from the underlying data and may be `null` if no data exists for the range. ```json theme={null} { "meta": { "code": 0, "url": "/api/token-index/index", "message": "OK", "timestamp": 1777545600 }, "data": { "token": "expenditure", "index_name": "Token Expenditure Index", "index_version": "v1", "starting_date": "2026-04-20", "ending_date": "2026-04-26", "indexes": { "2026-04-20": "100.0000", "2026-04-21": "101.2345", "2026-04-22": "-1", "2026-04-23": "103.5678", "2026-04-24": "104.0000", "2026-04-25": "-1", "2026-04-26": "105.4321" } } } ``` * **422**: Validation Error ```json theme={null} { "meta": { "code": 422, "url": "/api/token-index/index", "message": "Parameter value error: ...", "timestamp": 1777545600 }, "data": {} } ``` * **10008**: Date range error ```json theme={null} { "meta": { "code": 10008, "url": "/api/token-index/index", "message": "starting date should be less than or equal to ending date", "timestamp": 1777545600, "args": [], "kwargs": {} }, "data": {} } ``` * **34004**: Product permission is missing ```json theme={null} { "meta": { "code": 34004, "url": "/api/token-index/index", "message": "You don't have permission to access the current product...", "timestamp": 1777545600 }, "data": {} } ``` # Token Price API Source: https://docs.silicondata.com/api-reference/token_price_api API docs for accessing Token Pricebook and Token Market Pulse datasets from Silicon Data. ## POST /api/token-price/list Get token price data download list. A list of `id` from response must be used in the `/download` endpoint to find the download URL. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ----------------------- | ------- | -------- | ----------------------------------------------------------------------------------------- | -------------- | | `filter/interval` | string | Yes | Interval of the data | \[day, month] | | `filter/period` | string | Yes | Date range in YYYY/MM/DD-YYYY/MM/DD | | | `filter/type` | string | Yes | Token price dataset type (Pricebook or Market Pulse) | \[book, pulse] | | `paginate/num_per_page` | integer | No | How many records will be return per one page, value score in 1 to 100,default value is 50 | \[ 1 .. 100 ] | | `paginate/page_num` | integer | No | The page index number, default value is 1 | >= 1 | | `order_by/period` | string | No | Order of the file list | \[asc, desc] | ### Request Example ```json theme={null} { "filter": [ {"type": "book"}, {"interval": "day"}, {"period":"2026/01/01-2026/01/07"} ], "order_by": [ {"period": "desc"} ], "paginate": { "page_num": 1, "num_per_page": 50} } ``` ### Responses Response consists of meta and data, where: * meta is the metadata regarding the request. `code` in `meta` indicates the error code of the request, with 0 indicating no error. * data contains the total number of results and a list of results, each containing the `id` that can be used to download the data. ```json theme={null} { "meta": { "code": "integer", "url": "string", "message": "string", "timestamp": "integer", }, "data": { "total": "integer", "results": [ { "interval": "string", "period": "string", "type": "string", "csv_s3_path": "string", "id": "string", "sequence_id": "integer" } ] } } ``` *** ## POST /api/token-price/download Get token price data download URL using `id`, obtained from the `/list` endpoint. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ----- | ------- | -------- | ----------------------------- | ----------- | | `id` | integer | Yes | ID used for find download URL | | ### Request Example ```json theme={null} { "id": 2046555026029398400 } ``` ### Responses ```json theme={null} { "meta": { "code": "integer", "url": "string", "message": "string", "timestamp": "integer" }, "data": { "csv_download_url": "string" } } ``` # User API Source: https://docs.silicondata.com/api-reference/user API docs for logging in and retrieving the current Silicon Data user account. These endpoints cover authenticating as an existing user and retrieving the current user's account information. Successful responses are wrapped in the standard `{ "meta": ..., "data": ... }` envelope, where `data` holds the value described under each endpoint. Account creation and password management are handled through the [Silicon Data portal](https://portal.silicondata.com), not the API. ## POST /api/user/login Log in with email and password to obtain the `access_token`, `id_token`, and `refresh_token`. The `id_token` is the Bearer token used to authenticate the other user and application endpoints. ### Authorization This endpoint is **unauthenticated**. No access token is required. ### Request Body The request body must be in `application/json` format. | Field | Type | Required | Description | Constraints | | ---------- | ------ | -------- | ------------- | ----------- | | `email` | string | Yes | Email address | Valid email | | `password` | string | Yes | Password | | ### Request Example ```json theme={null} { "email": "jane.doe@acme.com", "password": "S3curePass!" } ``` ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/user/login", "message": "OK", "timestamp": 1744201871 }, "data": { "access_token": "eyJraWQiOiJ...", "refresh_token": "eyJjdHkiOiJ...", "id_token": "eyJraWQiOiJ...", "token_type": "bearer", "expires_in": 3600, "company_name": "Acme Compute" } } ``` * **422**: Validation Error ```json theme={null} { "detail": [ { "loc": [ "string" ], "msg": "string", "type": "string" } ] } ``` *** ## GET /api/user/me Get the current user's information using the `id_token`. ### Authorization **🔒OAuth2**: OAuth2PasswordBearer\ **Flow type**: password\ **Token URL**: token ### Responses * **200**: Successful Response ```json theme={null} { "meta": { "code": 0, "url": "/api/user/me", "message": "OK", "timestamp": 1744201871 }, "data": { "email": "jane.doe@acme.com", "first_name": "Jane", "last_name": "Doe", "company_name": "Acme Compute" } } ``` # Introduction Source: https://docs.silicondata.com/introduction Welcome to the home of Silicon Data Documentation ## Products ### **SiliconNavigator™** **SiliconNavigator™** provides comprehensive insights into GPU specifications, historical pricing, and current market trends. Designed to optimize procurement strategies and resource planning, this tool equips businesses with the intelligence needed to stay competitive in the compute markets. **Tier Overview** | Feature | Level 1:
Market Pulse | Level 2:
Deep Pricing Feed | Level 3:
Full Asset Intelligence | | ------------------------- | -------------------------- | ------------------------------- | -------------------------------------- | | Update Frequency | Daily | Daily | Daily | | Access | Portal Dashboard | Portal + API + CVS Download | Portal + API + CVS Download | | Granularity | Global averages | Platform-level | Instance-level (raw) | | Retail Pricing | ✅ Yes | ✅ Yes | ✅ Yes | | Rental Pricing | ✅ Yes | ✅ Yes | ✅ Yes | | Regional Breakdown | N.A. | Country Level | Hyper-local (datacenter-level) | | Historical Data | 7 day trend line | One Year Historical Data | Up to 8 years Historical Data | | Average Daily Data Volume | 50 | 300 | 2000 | | Ideal For | Generalists, Enthusiasts | Analysts, buyers, strategists | Quant funds, infra leaders, allocators | ### **SiliconCarbon™** **SiliconCarbon™** delivers real-time estimates of carbon emissions based on GPU usage. Tailored for environmentally-conscious businesses, this tool provides actionable insights to reduce the carbon footprint of compute operations. ### **SiliconMark™** **SiliconMark™** QuickMark simplifies GPU performance evaluation with fast, accurate insights into computational metrics. Designed for developers, data centers, and enterprises, it ensures efficient optimization and alignment with manufacturer specifications. ### **Silicon PriceIQ™** **Silicon PriceIQ™** leverages a machine-learning-driven model that aggregates market data to generate reliable price predictions, helping businesses, developers, and researchers make informed decisions on GPU allocation. ### **Token Pricebook™** **Token Pricebook™** captures token-level prices for major LLM providers and vendors, separating input (prompt) and output (completion) costs and standardizing all values to USD per 1 million tokens. ### **Token Market Pulse™** **Token Market Pulse™** captures aggregated token-level pricing and usage metrics for major LLM, combining cost data (input and output token prices standardized to USD per 1 million tokens) with normalized volume indices that track relative daily usage patterns. *** ## Contact Information For inquiries, product access, or additional details, please contact us at: **Email**: [support@silicondata.com](mailto:support@silicondata.com) # API Key Source: https://docs.silicondata.com/products/api-key How to create and manage API Keys for Silicon Data APIs An API Key is a string credential. It is valid for **1 year** and is used for long-term API calls, without requiring repeated login. Requests should include an Authorization header containing the word `Bearer` followed by the API Key. *** ## **Create an API Key** ### **Step 1: Create an API Key** 1. Log in to the portal. 2. Open the **API Portal** page. 3. Click to add API Key. 4. Enter a unique name and a description, then save. ### **Step 2: Generate an API Key** 1. Find the api key name you just created. 2. Click the **+** icon next to it to generate an API Key. 3. The API Key is valid for **1 year**. ### **Step 3: Download the Credential** 1. Download the credential file. 2. Retrieve the string key and use it as the Bearer token when calling Silicon Data APIs. *** ## **Delete an API Key** ### **Step 1: Delete API Keys** Delete all API Keys under the api key group first. ### **Step 2: Delete the Api Key Name** After all keys under the api key group have been removed, you can delete the api key name. > **Note:** An api key name cannot be deleted until all of its API Keys have been cleared. *** ## **If an API Key Is Leaked** 1. Delete the compromised API Key. 2. Create a new API Key under the same api key group. 3. Update your integrations to use the new key. *** ## **Contact and Support** For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com) # Silicon Data API Intro Source: https://docs.silicondata.com/products/api-overview Introduction to using Silicon Data's APIs Silicon Data APIs allow developers to request data from Silicon Data's various products. For example, you can create SiliconMark test jobs, query historical data from Silicon Navigator, or estimate GPU carbon emissions with SiliconCarbon. *** ## **Using Silicon Data APIs** Silicon Data uses Bearer authentication for the APIs. Requests should include an Authorization header containing the word "Bearer" followed by the token. The exception is the [/user/login API](/api-reference/user) which is used to obtain a temporary user token. Professional and Plus subscribers can also create a long-lived **API Key** from the [Silicon Data portal](https://portal.silicondata.com), which does not require repeated login. See [API Key](/products/api-key) for details. The Silicon Data APIs are accessible at [https://api.silicondata.com/](https://api.silicondata.com/), so all the API paths documented are appended to that endpoint URL. Silicon Data APIs do have rate limits. If you find your APIs being consistently throttled we recommend you implement an exponential backoff instead of immediate-retry strategy. This should not be a concern for typical usage patterns, but if you have different requirements please contact us. *** ## **Contact and Support** For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com) # GPU Index Intro Source: https://docs.silicondata.com/products/gpu-index Comprehensive guide to GPU Index. > 📌 **Note:** The GPU Index API is only available for **Plus** and **Professional** tier subscribers. **GPU Index** is a powerful market intelligence tool within the **Silicon Data™** ecosystem that tracks the performance and pricing trends of key GPU models over time. It empowers users with insights to analyze cost fluctuations, evaluate market movements, and make data-driven decisions for procurement, investment, and competitive benchmarking. *** ## **Key Features** * **Historical GPU Pricing Index** * Access time-series GPU rental price data across selected date ranges. * Evaluate short- and long-term pricing trends to anticipate market changes. * **Daily Index Values** * Retrieve standardized GPU index values calculated from aggregated rental price data. * Stay informed on the price performance trajectory of leading GPUs. * **Programmatic Access via API** * Query GPU index data using simple HTTP POST requests. * Easily integrate GPU price trends into dashboards, trading algorithms, or analytics workflows. *** ## **Example Use Cases** * **Procurement Planning**:\ Forecast budget requirements and optimal purchasing windows for GPU deployments. * **Market Intelligence**:\ Monitor pricing trends for investment evaluation or vendor comparison. * **Cloud Cost Optimization**:\ Use GPU Index metrics to benchmark and renegotiate cloud rental costs. *** # GPU Index Announcements Source: https://docs.silicondata.com/products/gpu-index-announcements > 📌 **Note:** The GPU Index API is only available for **Plus** and **Professional** tier subscribers. *** ## **Announcement ID 260911-1** * Announcement Date: 2026-09-11 * Effective Date: 2026-09-25 * Type: Baseline Change * Restatement: No ## **Summary** The change will update the baseline configuration regarding the hardware standardization ## **What's Changing** Affected Products: Silicon Data H100 Neocloud Index (SDH100RT Index, .SDH100RT) Estimated Impact: Up to 4% increase ## **Change Details** The GPU variant used in the index baseline configuration is updated to reflect the more widely offered type among neoclouds, thus providing better anchoring to the index. *** ## **Announcement ID 260911-2** * Announcement Date: 2026-09-11 * Effective Date: 2026-09-25 * Type: Provider Change * Restatement: No ## **Summary** The current change will remove a small number of stale providers included in the index ## **What's Changing** Affected Products: Silicon Data B200 Neocloud Index (SDB200RT Index, .SDB200RT) Estimated Impact: Up to 4% increase ## **Change Details** We removed sources that are either stale or do not meet the quality standards *** ## **Announcement ID 260911-3** * Announcement Date: 2026-09-11 * Effective Date: 2026-09-14 * Type: New Index * Restatement: No ## **Summary** Launch of B300 Index ## **What's Changing** Affected Products: Silicon Data B300 Neocloud Index Index Start Date: 2026-04-23 ## **Change Details** With a sufficient number of cloud providers offering B300 servers and contributing reliable data, B300 Rental Index for neocloud will be published daily. *** ## **Announcement ID 260630-1** * Announcement Date: 2026-06-30 * Effective Date: 2026-07-15 * Type: Provider Change * Restatement: No ## **Summary** The current change will substantially expand the number of providers included in the index ## **What's Changing** Affected Products: Silicon Data B200 Neocloud Index (SDB200RT Index, .SDB200RT) Estimated Impact: Up to 6% decrease ## **Change Details** As more cloud providers added B200 to their rental fleet, the B200 Neocloud Index sources will be expanded to include more providers with reliable data contribution *** ## **Announcement ID 260630-2** * Announcement Date: 2026-06-30 * Effective Date: 2026-07-15 * Type: New Index * Restatement: No ## **Summary** Launch of H200 Index ## **What's Changing** Affected Products: Silicon Data H200 Neocloud Index History Start Date: 2026-05-04 ## **Change Details** With a sufficient number of cloud providers offering H200 servers and contributing reliable data, H200 Rental Index for neocloud will be published daily. *** ## **Announcement ID 260325-1** * Announcement Date: 2026-03-25 * Effective Date: 2026-04-06 * Type: Provider Change * Restatement: No ## **Summary** Added new providers to our H100 Neocloud Index data coverage ## **What's Changing** Affected Products: * SDH100RT Index Estimated Impact: * -7% \~ -3% ## **Change Details** A number of new providers are now being tracked in our H100 Neocloud Index, including majority of new cloud providers that entered the market in the past 4 months. *** ## **Announcement ID 251203-1** * Announcement Date: 2025-12-03 * Effective Date: 2025-12-04 * Type: Methodology Change * Restatement: Yes ## **Summary** Multiple methodology enhancements are implemented to our existing H100 (SDH100RT) and A100 (SDA100RT) Indexes. ## **What's Changing** Affected Products: * SDH100RT Index * SDA100RT Index Estimated Impact: * SDH100RT Index: -6% \~ -4% * SDA100RT Index: +35% \~ +40% ## **Change Details** 1. Methodology Refinements * We removed the divisor adjustment from our index calculation * We improved the proprietary pricing model to better account for the diversity of rental providers 2. Data Enhancements * We expanded the data coverage for cloud providers and updated provider weights * To address short-term data gaps caused by unforeseeable provider-side disruptions, we introduced a look-back mechanism in the daily index calculation 3. History Restatement * Due to the large impact from these changes, we will restate history of each index from their start dates of 2024-09-01 * Due to a rapid expansion of provider coverage on 2025-03-01, index may experience a large jump on that day *** ## **Announcement ID 251203-2** * Announcement Date: 2025-12-03 * Effective Date: 2025-12-04 * Type: New Index * Restatement: No ## **Summary** A new GPU Index B200 (SDB200RT) tracks the rental prices of B200 GPU ## **What's Changing** Affected Products: * SDB200RT Index Estimated Impact: NA ## **Change Details** 1. The new index will be available through our API by setting the request param "gpu" to "b200". Please refer to our [API documentation](https://docs.silicondata.com/api-reference/gpu_index_api) for more details. 2. It will also be made available on Bloomberg with ticker SDB200RT Index, and .SDB200RT from Reuters in the coming weeks. # Silicon PriceIQ™ Intro Source: https://docs.silicondata.com/products/price-iq Comprehensive guide to Silicon PriceIQ™. **Silicon PriceIQ™** is a predictive tool designed to provide accurate price estimations for GPU rentals based on various technical and market parameters. By inputting specific configurations, users can obtain real-time pricing insights for different GPU setups, helping optimize cloud computing costs for AI, ML, and high-performance computing (HPC) workloads. Silicon PriceIQ™ leverages a machine-learning-driven model that aggregates market data to generate reliable price predictions, helping businesses, developers, and researchers make informed decisions on GPU allocation. *** ## **Key Features** * **Real-Time Price Estimation**: * Predicts GPU rental prices based on input specifications, including **GPU model, RAM, CPU cores, and geolocation**. * Supports multiple pricing models such as **On-Demand, Reserved, and Spot Instances**. * Provides percentile-based price distribution analysis for better decision-making. * **Configurable Parameters**: Users can customize predictions by adjusting: * **GPU Model** (e.g., A100 PCIE, H100, V100, etc.) * **Type** (On-Demand, Reserved, or Spot) * **GPU RAM (GB)** * **CPU Cores (Effective)** * **CPU RAM (GB)** * **Geolocation** (Region-based pricing variations) * **CPU Platform** (AMD, Intel, ARM) * **Price Distribution & Market Insights**: * Displays **normalized price distribution** with quantiles (10th, 25th, 50th/median, 75th, 90th percentiles). * Helps users compare predicted prices with actual market trends. *** ## **How to Use** ### **Step 1: Select GPU & Configuration** * Choose a **GPU model** and set specifications for RAM, CPU cores, and platform. * Define the **pricing type** (On-Demand, Reserved, Spot). * Select a **geographical location** to account for regional price differences. ### **Step 2: Predict Price** * Click **"Predict Price"** to generate a **real-time estimated price per hour** for the selected GPU configuration. * The tool provides percentile-based insights into pricing variations across different providers. ### **Step 3: Analyze Results** * View **predicted price**, **distribution percentiles**, and **market trends**. * Compare pricing against industry benchmarks and competitor offerings. *** ## **Benefits** * Helps users determine the most cost-effective GPU configuration. * Offers percentile-based pricing comparisons. atforms. * Real-time predictions. *** ## **Contact and Support** For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com) # SiliconCarbon™ Intro Source: https://docs.silicondata.com/products/silicon-carbon Comprehensive guide to SiliconCarbon™. **SiliconCarbon™** provides real-time estimates of carbon emissions based on GPU usage. It helps businesses monitor and reduce their environmental impact. ## Key Features * **Usage-Based Calculation**: * Calculate emissions based on GPU type, usage hours, and workload. * **Geo-Location Sensitivity**: * Adjust for local energy sources and carbon intensity by region. *** ## **Main Features** ### **1. Carbon Emission Estimates** * Displays carbon emissions in **kilograms (Kg)** for specified hardware configurations and usage durations. * Supports over 50 different GPU models for accurate calculations. ### **2. Geo-Location Sensitivity** * Adjusts calculations based on: * Local energy grid data and carbon intensity (updated daily). * Regional or postal code-specific configurations. ### **3. Data Input Options** * **Public Cloud**: Select from major cloud providers (e.g., AWS, Google Cloud, Azure). * **Postal Code**: Specify a zip code to account for local energy grid data. ### **4. Historical Records** * Provides detailed logs of past calculations, including: * Hardware type. * Usage hours. * Regional or provider-specific data. * Calculated carbon emission in **Kg CO₂ eq.** *** ## **User Interface Overview** ### **Input Fields** | Field | Description | Example | | -------------------- | ------------------------------------------------------------------------------------- | ---------------------------- | | `hardware_type` | Choose from a dropdown menu listing supported GPUs. | A10 | | `hour_used` | Enter the duration of GPU usage in hours. | 1 hour | | `data_center` | Specify whether using public cloud or postal code for location-specific calculations. | Amazon Web Services or 10001 | | `provider` | Choose a cloud provider when using the public cloud option. | AWS | | `region_of_computer` | Select the region or availability zone for the GPU. | us-east-1 | | `Country` | Specify the country where the GPU is located. | United States | | `Postal Code` | Enter the postal code to refine location-specific calculations. | 10001 | *** ## **Calculation Formula** The carbon emission is calculated using the following formula: **Kg CO₂ eq. = Power consumption × Time × Carbon intensity** Where: * **Power consumption**: Based on the GPU type (in Watts). * **Time**: GPU usage duration (in hours). * **Carbon intensity**: Region-specific value (CO₂ per kWh). *** ## **Results Display** ### **Real-Time Output** * Displays the calculated carbon emission in **Kg CO₂ eq.** prominently on the interface. * Includes details such as: * Hardware Type. * Hours Used. * Location (Country/Postal Code or Provider/Region). ### **Historical Records** * A chronological list of past calculations with complete details, allowing users to track emissions over time. *** ## **Contact and Support** For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com) # SiliconMark™ Intro Source: https://docs.silicondata.com/products/silicon-mark Comprehensive guide to SiliconMark™. **SiliconMark QuickMark** is a fast and reliable tool for assessing GPU performance, focusing on computational capabilities and alignment with manufacturer specifications. It enables developers, data centers, and enterprises to optimize GPU workflows efficiently. The SiliconMark agent will collect statistics on the performance of your GPU(s) and upload them to SiliconData. This will trigger the production of a PDF report detailing the results and comparison to public performance data. ## Key Features * **Performance Analysis**: * Provides immediate insights into GPU performance metrics. * **Machine-Level Information** * GPU Serial ID: Unique identification for precise performance tracking. * Timestamp: Logs performance results for reproducibility and historical comparisons. * Memory Bandwidth\*\*: Assesses data transfer rates between GPU processors and memory. * **Performance vs. Manufacturer Specifications** * Compares measured performance (FLOPS and memory bandwidth) against manufacturer-provided specifications. * Identifies deviations or confirms consistency with advertised metrics. * **Speed and Scalability** * Speed: Provides results within minutes for rapid comparisons. * Scalability: Supports single GPUs and multi-GPU configurations for comprehensive evaluations. *** ## **Metrics Assessed** | Metric | Description | Example | | ------------------- | --------------------------------------------------------- | ------------------- | | `flops` | Floating point operations per second for computation. | 36 TFLOPS (FP32) | | `gpu_serial_id` | Unique identifier for the GPU. | 12345-67890 | | `timestamp` | Time of the performance measurement. | 2024-12-01 10:00:00 | | `memory_bandwidth` | Data transfer rate between GPU processor and memory. | 900 GB/s | | `measured_vs_specs` | Comparison of measured performance to manufacturer specs. | Within 5% variance | *** ## **Comparison with Manufacturer Specs** | Spec | Measured Performance | Manufacturer Specification | Deviation (%) | | ---------------- | -------------------- | -------------------------- | ------------- | | FLOPS (FP32) | 36 TFLOPS | 37 TFLOPS | -2.7% | | Memory Bandwidth | 900 GB/s | 950 GB/s | -5.3% | *** ## **Benefits** * **Quick Results**: Delivers actionable insights within minutes. * **Holistic Evaluation**: Supports evaluation of both single and multi-GPU setups. * **Precision Tracking**: Ensures reproducibility and tracks performance over time. *** ## **Contact and Support** For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com) # SiliconMark™ Benchmarks Source: https://docs.silicondata.com/products/silicon-mark_benchmarks Comprehensive guide to SiliconMark™ benchmarks for GPU performance testing. ## Available Benchmarks SiliconMark supports various benchmarks for GPU performance testing. 1. **QuickMark** - Comprehensive single-node GPU compute and memory performance test 2. **Cluster Network** - Multi-node network connectivity and bandwidth testing 3. **Inference Benchmark** - Multi-engine LLM inference performance (NVIDIA and AMD, using vLLM) 4. **Llama 3 Inference** - Single-node LLM inference performance using NVIDIA NIM 5. **Llama 3 Fine-Tuning** - Single-node LLM fine-tuning performance using NVIDIA NeMo Each benchmark section includes configuration options, execution actions, result structures, and field metadata for interpreting the performance metrics. *** ## QuickMark Benchmark ### Overview | Field | Value | | ---------------- | -------------------------------------------------------------------- | | **Benchmark ID** | `quick_mark` | | **Type** | Single-node | | **Min Nodes** | 1 | | **Description** | Comprehensive GPU compute, memory, and interconnect performance test | ### Configuration No configuration required — uses defaults. ### Result Structure Results include one entry per GPU in `test_results` and a combined `aggregate_results`. For single-GPU systems, `aggregate_results` mirrors the single GPU result. ```json theme={null} { "test_results": [ { "gpu_id": "GPU-000...", "gpu_model": "NVIDIA H100 80GB HBM3", "fp32_tflops": 367.5, "fp32_cuda_core_tflops": 53.6, "fp16_tflops": 684.6, "bf16_tflops": 729.6, "fp8_tflops": 1456.2, "mixed_precision_tflops": 648.9, "memory_bandwidth_gbs": 3025.0, "l2_bandwidth_gbs": 415.5, "host_to_device_bandwidth_gbs": 27.7, "device_to_host_bandwidth_gbs": 28.5, "kernel_launch_overhead_us": 7.6, "power_consumption_watts": 654.3, "temperature_centigrade": 59, "fp32_tflops_per_peak_watt": 0.564, "fp16_tflops_per_peak_watt": 1.082, "fp8_tflops_per_peak_watt": 2.163, "energy_consumption_wh": 45.2, "total_vram_mib": 81559.0, "gpu_clocks": { "compute": { "base_mhz": 1110, "max_mhz": 1980 }, "memory": { "base_mhz": 2619, "max_mhz": 2619 } }, "sample_frequency_s": 5.0, "measurements_temp": [58, 59, 60, 59], "measurements_power_draw": [640.1, 654.3, 651.0, 648.2], "core_utilization_percent": [98.0, 99.0, 98.5, 99.0], "memory_utilization_percent": [95.0, 96.0, 95.5, 96.0], "core_clock_mhz": [1965, 1980, 1975, 1980], "memory_clock_mhz": [2619, 2619, 2619, 2619] } ], "aggregate_results": { "gpu_id": "aggregate", "fp32_tflops": 2863.0, "fp32_cuda_core_tflops": 424.2, "fp16_tflops": 5492.8, "bf16_tflops": 5755.8, "mixed_precision_tflops": 4222.2, "memory_bandwidth_gbs": 22717.3, "allreduce_bandwidth_gbs": 275.2, "broadcast_bandwidth_gbs": 392.0, "host_to_device_bandwidth_gbs": 110.6, "device_to_host_bandwidth_gbs": 112.9, "power_consumption_watts": 5078.5, "temperature_centigrade": 68, "fp32_tflops_per_peak_watt": 0.564, "fp16_tflops_per_peak_watt": 1.082, "gpu_bandwidth_matrix": { "gpu0_to_gpu1": { "connection_type": "nvlink_v4_18x", "simplex_gbs": 388.1, "duplex_gbs": 389.2 }, "gpu0_to_gpu2": { "connection_type": "nvlink_v4_18x", "simplex_gbs": 389.2, "duplex_gbs": 389.9 } } }, "timestamp": "YYYY-MM-DDT20:03:06Z" } ``` ### Field Metadata | Field | Display Name | Unit | Notes | | ------------------------------ | ----------------------------- | -------- | --------------------------------------------- | | `fp32_tflops` | FP32 Performance | TFLOPS | Tensor Core (TF32) | | `fp32_cuda_core_tflops` | FP32 CUDA Core Performance | TFLOPS | CUDA cores only | | `fp16_tflops` | FP16 Performance | TFLOPS | | | `bf16_tflops` | BF16 Performance | TFLOPS | | | `fp8_tflops` | FP8 Performance | TFLOPS | Where supported | | `mixed_precision_tflops` | Mixed Precision Performance | TFLOPS | FP16 compute, FP32 accumulate | | `memory_bandwidth_gbs` | Memory Bandwidth | GB/s | HBM bandwidth | | `l2_bandwidth_gbs` | L2 Cache Bandwidth | GB/s | | | `host_to_device_bandwidth_gbs` | Host to Device Bandwidth | GB/s | PCIe | | `device_to_host_bandwidth_gbs` | Device to Host Bandwidth | GB/s | PCIe | | `kernel_launch_overhead_us` | Kernel Launch Overhead | μs | | | `allreduce_bandwidth_gbs` | AllReduce Bandwidth | GB/s | Multi-GPU only | | `broadcast_bandwidth_gbs` | Broadcast Bandwidth | GB/s | Multi-GPU only | | `gpu_bandwidth_matrix` | GPU Bandwidth Matrix | GB/s | Per-pair simplex/duplex with connection type | | `fp32_tflops_per_peak_watt` | FP32 TFLOPS per Peak Watt | TFLOPS/W | | | `fp16_tflops_per_peak_watt` | FP16 TFLOPS per Peak Watt | TFLOPS/W | | | `fp8_tflops_per_peak_watt` | FP8 TFLOPS per Peak Watt | TFLOPS/W | Where supported | | `energy_consumption_wh` | Energy Consumption | Wh | Total for benchmark run | | `power_consumption_watts` | Power Consumption | W | Peak power draw | | `temperature_centigrade` | GPU Temperature | °C | Peak temperature | | `total_vram_mib` | Total VRAM | MiB | | | `gpu_clocks` | GPU Clock Speeds | MHz | Compute and memory base/max/application/boost | | `sample_frequency_s` | Monitoring Sample Frequency | s | | | `measurements_temp` | Temperature Timeseries | °C | One sample per interval | | `measurements_power_draw` | Power Draw Timeseries | W | One sample per interval | | `core_utilization_percent` | Core Utilization Timeseries | % | One sample per interval | | `memory_utilization_percent` | Memory Utilization Timeseries | % | One sample per interval | | `core_clock_mhz` | Core Clock Timeseries | MHz | One sample per interval | | `memory_clock_mhz` | Memory Clock Timeseries | MHz | One sample per interval | *** ## Cluster Network Benchmark ### Overview | Field | Value | | ---------------- | -------------------------------------------------------------- | | **Benchmark ID** | `cluster_network` | | **Type** | Multi-node | | **Min Nodes** | 2 | | **Description** | Tests network throughput and latency between all cluster nodes | ### Result Structure One measurement per directed node pair. ```json theme={null} { "network_results": [ { "host_ip": "192.168.1.10", "dest_ip": "192.168.1.11", "throughput_mbps": 45200.0, "throughput_gbps": 45.2, "latency_ms": 0.75 } ], "measurement_count": 12 } ``` ### Field Metadata | Field | Display Name | Unit | | ------------------- | ------------------ | ---- | | `throughput_gbps` | Throughput | Gbps | | `throughput_mbps` | Throughput | Mbps | | `latency_ms` | Latency (RTT) | ms | | `measurement_count` | Total Links Tested | | *** ## Inference Benchmark — vLLM This benchmark measures LLM inference serving performance using vLLM. It supports both NVIDIA (CUDA) and AMD (ROCm) GPUs and runs without requiring an NGC API key. ### Overview | Field | Value | | ---------------- | ----------------------------------------------------------- | | **Benchmark ID** | `inference_benchmark` | | **Type** | Single-node | | **Min Nodes** | 1 | | **GPU Support** | NVIDIA and AMD | | **Description** | Multi-engine LLM inference performance benchmark using vLLM | ### Configuration | Field | Type | Required | Description | Default | | -------------------- | ------ | -------- | ---------------------------------------- | ----------------------- | | `inference_engine` | string | No | Inference engine | `"vllm"` | | `model` | string | No | Model name/path | `"openai/gpt-oss-120b"` | | `tp` | int | No | Tensor parallel size | `1` | | `concurrency` | int | Yes | Concurrent requests | — | | `isl` | int | Yes | Input sequence length (1–131072) | — | | `osl` | int | Yes | Output sequence length (1–131072) | — | | `random_range_ratio` | float | No | Prompt length variation | `0.0` | | `num_prompts` | int | No | Number of prompts (0 = concurrency × 10) | `0` | ### Result Structure ```json theme={null} { "duration": 120.5, "total_input_tokens": 512000, "total_output_tokens": 128000, "request_throughput": 42.3, "output_token_throughput": 5890.4, "total_token_throughput": 8750.2, "mean_ttft_ms": 145.2, "median_ttft_ms": 138.7, "p99_ttft_ms": 312.4, "mean_tpot_ms": 18.4, "median_tpot_ms": 17.9, "p99_tpot_ms": 28.6, "mean_itl_ms": 18.4, "median_itl_ms": 17.9, "p99_itl_ms": 28.6, "mean_e2el_ms": 2340.5, "median_e2el_ms": 2180.3, "p99_e2el_ms": 4120.8 } ``` ### Field Metadata | Field | Display Name | Unit | | ------------------------- | ---------------------------- | ------ | | `request_throughput` | Request Throughput | req/s | | `output_token_throughput` | Output Token Throughput | tok/s | | `total_token_throughput` | Total Token Throughput | tok/s | | `total_input_tokens` | Total Input Tokens | tokens | | `total_output_tokens` | Total Output Tokens | tokens | | `mean_ttft_ms` | TTFT (Mean) | ms | | `median_ttft_ms` | TTFT (Median) | ms | | `p99_ttft_ms` | TTFT (P99) | ms | | `mean_tpot_ms` | TPOT (Mean) | ms | | `median_tpot_ms` | TPOT (Median) | ms | | `p99_tpot_ms` | TPOT (P99) | ms | | `mean_itl_ms` | Inter-Token Latency (Mean) | ms | | `median_itl_ms` | Inter-Token Latency (Median) | ms | | `p99_itl_ms` | Inter-Token Latency (P99) | ms | | `mean_e2el_ms` | End-to-End Latency (Mean) | ms | | `median_e2el_ms` | End-to-End Latency (Median) | ms | | `p99_e2el_ms` | End-to-End Latency (P99) | ms | | `duration` | Benchmark Duration | s | *** ## Llama 3 Inference — NIM This benchmark measures LLM inference serving performance using NVIDIA NIM containers, driven by GenAI-Perf. ### Overview | Field | Value | | ---------------- | -------------------------------------------------------- | | **Benchmark ID** | `llama3_inf_single` | | **Type** | Single-node | | **Min Nodes** | 1 | | **Description** | Llama 3 inference performance benchmark using NVIDIA NIM | ### Requirements * **NGC API Key**: Required (set as `NGC_API_KEY` environment variable) * **Podman**: Required to run NIM and GenAI-Perf containers ### Configuration | Field | Type | Required | Description | | ------------- | ---- | -------- | --------------------------------- | | `concurrency` | int | Yes | Concurrent requests (1–10000) | | `isl` | int | Yes | Input sequence length (1–131072) | | `osl` | int | Yes | Output sequence length (1–131072) | Multiple configurations can be submitted in a single job run. ### Result Structure Each configuration produces a `BenchmarkMetrics` object. Each metric field contains a full statistical distribution. ```json theme={null} { "request_throughput": { "unit": "req/s", "avg": 42.3, "p50": 41.8, "p90": 45.1, "p99": 47.2, "min": 38.0, "max": 48.5 }, "request_latency": { "unit": "ms", "avg": 2340.5, "p50": 2180.3, "p90": 3800.1, "p99": 4120.8 }, "time_to_first_token": { "unit": "ms", "avg": 145.2, "p50": 138.7, "p90": 290.4, "p99": 312.4 }, "time_to_second_token": { "unit": "ms", "avg": 163.6, "p50": 156.8 }, "inter_token_latency": { "unit": "ms", "avg": 18.4, "p50": 17.9, "p90": 25.1, "p99": 28.6 }, "output_token_throughput": { "unit": "tok/s", "avg": 5890.4 }, "output_token_throughput_per_request": { "unit": "tok/s", "avg": 139.1 }, "output_sequence_length": { "unit": "tokens", "avg": 512.0 }, "input_sequence_length": { "unit": "tokens", "avg": 256.0 } } ``` Each metric object may include: `avg`, `p25`, `p50`, `p75`, `p90`, `p95`, `p99`, `min`, `max`, `std`. ### Field Metadata | Field | Display Name | Unit | | ------------------------------------- | ----------------------------------- | ------ | | `request_throughput` | Request Throughput | req/s | | `request_latency` | Request Latency | ms | | `time_to_first_token` | Time to First Token (TTFT) | ms | | `time_to_second_token` | Time to Second Token | ms | | `inter_token_latency` | Inter-Token Latency (ITL) | ms | | `output_token_throughput` | Output Token Throughput | tok/s | | `output_token_throughput_per_request` | Output Token Throughput per Request | tok/s | | `output_sequence_length` | Output Sequence Length | tokens | | `input_sequence_length` | Input Sequence Length | tokens | *** ## Llama 3 Fine-Tuning — NeMo This benchmark measures LLM fine-tuning performance using NVIDIA's NeMo framework with automatic memory-aware parallelism configuration. ### Overview | Field | Value | | ---------------- | ----------------------------------------------------------- | | **Benchmark ID** | `llama3_ft_single` | | **Type** | Single-node | | **Min Nodes** | 1 | | **Description** | Llama 3 fine-tuning performance benchmark using NVIDIA NeMo | ### Configuration | Field | Type | Required | Description | Default | Constraints | | ---------------- | ------ | -------- | ------------------ | -------- | ------------------------- | | `model_size` | string | No | Model size | `"8b"` | `"8b"`, `"70b"`, `"405b"` | | `dtype` | string | No | Data type | `"fp8"` | `"fp8"`, `"bf16"` | | `fine_tune_type` | string | No | Fine-tuning method | `"lora"` | `"lora"`, `"full"` | | `max_steps` | int | No | Training steps | `50` | | #### Fixed Parameters * **Sequence Length**: 4096 tokens * **Micro Batch Size**: 1 (optimized for packed sequences) * **Training Data**: Synthetic (SquadDataModule) ### Requirements #### Software Requirements * **NeMo Container**: `nvcr.io/nvidia/nemo:25.11.01` — downloaded automatically if not present * **HuggingFace Token**: Required (set as `HF_TOKEN` environment variable). Get your token from [https://huggingface.co/settings/tokens](https://huggingface.co/settings/tokens) * **Docker**: Required to run the NeMo container * **Disk Space**: * 8B model: \~75GB (55GB base + 20GB model) * 70B model: \~205GB (55GB base + 150GB model) * 405B model: \~905GB (55GB base + 850GB model) ```bash theme={null} export HF_TOKEN="hf_xxxxxxxxxxxxxxxxxxxx" # Required export STAGE_PATH="$HOME/workspace/benchmark_stage" # Optional, defaults to ~/workspace/benchmark_stage ``` #### Hardware Requirements The benchmark automatically calculates memory requirements based on model configuration: | Model | FP8 Memory | BF16 Memory | LoRA reduction (\~30%) | | ----- | ----------- | ----------- | ---------------------- | | 8B | 20GB total | 35GB total | \~14GB / \~25GB | | 70B | 85GB total | 160GB total | \~60GB / \~112GB | | 405B | 450GB total | 850GB total | \~315GB / N/A | **Minimum GPU requirements:** * 8B LoRA: 1× GPU with ≥16GB VRAM * 8B full: 1× GPU with ≥24GB VRAM * 70B: ≥2 GPUs * 405B: ≥8 GPUs (FP8 + LoRA only) ### Parallelism Strategy The benchmark automatically calculates optimal parallelism using a memory-aware strategy: 1. **Tensor Parallelism (TP)** = smallest power of 2 such that `total_memory / TP ≤ gpu_memory` 2. **Data Parallelism (DP)** = `total_gpus / TP` 3. **Global Batch Size (GBS)** = `min(DP × 2, model_cap)` — caps: 8B→64, 70B→32, 405B→16 #### Example Configurations | GPUs | Model | dtype | Fine-tune | TP | DP | GBS | | ------- | ----- | ----- | --------- | -- | -- | --- | | 8× 80GB | 8B | fp8 | lora | 1 | 8 | 16 | | 8× 80GB | 70B | fp8 | lora | 1 | 8 | 16 | | 8× 80GB | 405B | fp8 | lora | 8 | 1 | 2 | ### Result Structure ```json theme={null} { "tokens_per_step": 65536, "tokens_per_second": 48617.2, "train_step_time_mean": 1.348, "train_step_time_std": 0.003, "step_time_cv_percent": 0.223, "time_to_1t_tokens_days": 238.1, "peak_memory_gb": 68.4, "memory_efficiency_percent": 85.5 } ``` #### Metrics Calculation * **Tokens per Step** = `global_batch_size × sequence_length` * **Tokens per Second** = `tokens_per_step ÷ train_step_time_mean` * **Time to 1T Tokens** = `10¹² ÷ (tokens_per_second × 86400)` days * **Step Time CV** = `(train_step_time_std ÷ train_step_time_mean) × 100` ### Field Metadata | Field | Display Name | Unit | | --------------------------- | ---------------------------------- | ------ | | `tokens_per_step` | Tokens per Step | tokens | | `tokens_per_second` | Tokens per Second | tok/s | | `train_step_time_mean` | Training Step Time (Mean) | s | | `train_step_time_std` | Training Step Time (Std Dev) | s | | `step_time_cv_percent` | Step Time Coefficient of Variation | % | | `time_to_1t_tokens_days` | Time to 1T Tokens | days | | `peak_memory_gb` | Peak GPU Memory Usage | GB | | `memory_efficiency_percent` | GPU Memory Efficiency | % | # SiliconMark™ User Guide Source: https://docs.silicondata.com/products/silicon-mark_user_guide Comprehensive guide to SiliconMark™. The **SiliconMark™** agent will collect statistics on the performance of your GPU(s) and upload them to SiliconData. This will trigger the production of a PDF report detailing the results and comparison to public performance data. ## Select Test Configuration * To run a benchmark, you can create a test job using the SiliconMark API (api/silicon-mark/v1/jobs), or using the [SiliconData developer site](https://portal.silicondata.com/silicon-mark). You can also run a quick test on a single node without creating a job, but it will not be saved to your account and you will only get limited results and no PDF report. You can choose to use the executable test agent, or the containerized agent. The executable agent is recommended for most users, as it provides the most comprehensive results. It is also the best option for users who want to run the agent on a single node or have specific requirements for how the agent is executed. The containerized agent is particularly useful for CI/CD pipelines or when you want to isolate the benchmarking process from your host system. It also reduces the pre-requisites required to run the agent, as they are mostly bundled into the container. ### Pre-requisites 1. AMD Drivers and ROCm or NVIDIA drivers with CUDA support must be installed. We recommend updating to the latest driver for your GPU, following [AMD's instructions](https://www.amd.com/en/support) or [NVIDIA's instructions](https://www.nvidia.com/en-us/drivers/). 2. Python3.10+ and PyTorch must also be installed. The `--setup` flag on the agent automatically creates a self-contained Python virtual environment and installs the correct version of PyTorch for your GPU — this is the recommended approach. If you prefer to set up the environment yourself, install the dependencies manually: ```bash theme={null} # NVIDIA pip install torch numpy pynvml # AMD pip install torch numpy amdsmi ``` ### Download the agent * When you create a job, you will receive an **id\_token**. The developer site also has a convenient **cURL** link that will copy the commands required to download and run the agent using the token for that job. * On the system you want to test, [download the agent](https://downloads.silicondata.com/agent) and run `/bin/bash ./agent -api-key {id_token} --setup` to have it execute. Example using shell to execute: ```bash theme={null} # Set credentials SD_EMAIL= SD_PASSWORD= # Use current date and time to generate a unique job name SD_JOBNAME=$(date +%x-%R) # Log in to get a bearer token: SD_LOGIN=$(cat < job.json JOB_TOKEN=$(jq -r '.data.token' job.json) JOB_ID=$(jq -r '.data.id' job.json) # Download and run the agent using the Job Token wget -O ./agent https://downloads.silicondata.com/agent chmod +x ./agent ./agent -api-key $JOB_TOKEN --setup echo "Job $JOB_NAME complete, retrieve your report at https://silicondata.com/silicon-mark" ``` ### Pre-requisites 1. Ensure you have Docker installed on your system. You can follow the [Docker installation guide](https://docs.docker.com/get-docker/) for your specific operating system. 2. NVIDIA Container Toolkit must be installed to allow Docker to access the GPU. Follow the [NVIDIA Container Toolkit installation guide](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html) ### How to Use (Optional) Obtain your job token from the SiliconData developer site or API. This is not required if you are running a quick test. **Pull the Docker Image**: You can pull the latest SiliconMark™ Docker image using the following command: ```bash theme={null} docker pull ghcr.io/silicon-data/siliconmark-agent:test ``` ### Run the Container Use the following command to run the SiliconMark™ agent: ```bash theme={null} docker run --gpus all --privileged ghcr.io/silicon-data/siliconmark-agent:test [id_token] ``` * Replace `[id_token]` with your actual job token if you have one. * You can run the container without privileged mode, but it will limit the inventory data that is collected and will not be able to run the full test suite. ### Run Across All Cluster Nodes If you want the agent to run on every node in your cluster, the two most common approaches are: 1. Kubernetes DaemonSet (one pod per node) * Prerequisites: NVIDIA Device Plugin installed on the cluster so pods can request GPUs. See NVIDIA docs: [https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/kubernetes.html](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/kubernetes.html) * Apply the DaemonSet below (update image tag and add your job token as needed): ```yaml theme={null} apiVersion: apps/v1 kind: DaemonSet metadata: name: siliconmark-agent namespace: default spec: selector: matchLabels: app: siliconmark-agent template: metadata: labels: app: siliconmark-agent spec: tolerations: - operator: Exists containers: - name: agent image: ghcr.io/silicon-data/siliconmark-agent:test securityContext: privileged: true resources: limits: nvidia.com/gpu: env: - name: JOB_TOKEN value: "" args: ["$(JOB_TOKEN)"] nodeSelector: kubernetes.io/os: linux ``` * Apply with: ```bash theme={null} kubectl apply -f siliconmark-daemonset.yaml ``` * This schedules one agent pod per node. If you need to target only GPU nodes, add a label (e.g., `gpu=true`) to those nodes and set `nodeSelector: { gpu: "true" }` accordingly. 2. SSH/Ansible fan-out (non-orchestrated clusters) * Simple SSH loop (replace hosts and token): ```bash theme={null} NODES=(node1.example.com node2.example.com node3.example.com) JOB_TOKEN= for n in "${NODES[@]}"; do ssh "$n" \ "docker pull ghcr.io/silicon-data/siliconmark-agent:test && \ docker run --gpus all --privileged ghcr.io/silicon-data/siliconmark-agent:test $JOB_TOKEN" & done wait ``` * Minimal Ansible play (inventory `hosts.ini` and job token variable required): ```yaml theme={null} --- - hosts: all become: true tasks: - name: Pull agent image ansible.builtin.shell: | docker pull ghcr.io/silicon-data/siliconmark-agent:test - name: Run agent container ansible.builtin.shell: | docker run --gpus all --privileged ghcr.io/silicon-data/siliconmark-agent:test {{ job_token }} ``` * Run with: ```bash theme={null} ansible-playbook -i hosts.ini run-siliconmark.yml -e job_token= ``` Notes * Use a job token when you want results saved to your account and multi-node network tests enabled. * Privileged mode increases hardware inventory visibility; disable only if your environment requires stricter isolation. * In Kubernetes, set `nvidia.com/gpu` equal to the GPU count on target nodes (e.g., 8) so the agent can use all GPUs. For mixed-size clusters, deploy separate DaemonSets per node group with `nodeSelector` and appropriate limits. * For Kubernetes, GPU access requires the NVIDIA device plugin; for SSH/Ansible, ensure the NVIDIA Container Toolkit is installed on each node. ## Monitoring the Agent run * The agent will take some time to run. The more GPUs in the test system, the longer it will take. You can monitor it to ensure it is active by opening an additional connection and observing GPU activity: ```bash theme={null} nvidia-smi dmon # NVIDIA amd-smi monitor # AMD ``` The test will mostly be focused on one GPU at a time, but the final test should exercise all the GPUs in the system. When running in a terminal, the agent displays a live progress UI. In non-interactive environments (scripts, pipes), it falls back to plain log output automatically. ## Download Reports * After it is complete, you can download the report from the [SiliconData portal](https://www.silicondata.com/silicon-mark) or retrieve a url to download it from the SiliconMark API: ``` PUT api/silicon-mark/test-task/pdf-report-url Body: {"id": } ``` ## Output The SiliconMark™ QuickMark benchmark measures 5 widely reported performance statistics of a system. Memory Bandwidth, FLOPS for different size data types (dTypes) and GPU energy consumption for running the benchmark. Memory Bandwidth is important, as many GPU operations involve moving large volumes of data from RAM to the SM processors and back out. If there isn’t enough bandwidth then the GPU compute cores could sit idle waiting for data to process. Bandwidth is impacted by the vRAM speed and the memory interface bus width. The next 3 metrics are measures of floating point operations per second that a GPU can process. GPUs excel at floating point calculations when compared to traditional CPUs. Floating point dTypes come in different sizes that impact the data precision and storage used. An FP32 dType uses 32-bits to store a floating point number, which gives it large range, and precision, but requires significant memory storage and bandwidth to move data to and from the GPU, and more computational time to process. FP16 is more efficient, and brain floating point (bfloat16) sacrifices precision for performance, being a space efficient format optimized for ML workloads. Finally, energy consumption is read from the GPU at the beginning of the benchmark process and again at the end, with the delta providing the power consumption of executing the benchmark. All executions of the QuickMark benchmark are completing the same activities, thus the power consumed is comparable between different GPUs and can be used to guide sustainable consumption decision-making, especially for time-insensitive workloads. The temperature of the GPU is also recorded and can be used to understand how the GPU is performing under load, and whether it is being thermally throttled. For multi-node cluster systems, SiliconMark also tests inter-node bandwidth and latency, giving you a realistic view of how your system handles distributed workloads—a critical factor in modern AI and HPC applications. SiliconMark assembles a list of systems based on nodes registering for a job and builds a graph of all the connections required to fully test every node. The agents run bandwidth and latency tests to populate the graph with latency and bandwidth data for each link. ### Example Output ```json theme={null} { "machine_uuid": "59cfa587-c971-502e-b770-6dc5f989eb48", "config_id": "085ed573-2683-5144-bef1-51d77a207b43", "location": "US", "gpu_vendor": "NVIDIA", "gpu_count": 1, "cpu_info": { "cpu_count": "64", "arch": "x86_64", "os": "linux", "hardware_vendor": "Advanced Micro Devices, Inc.", "hardware_model": "AMD EPYC 7R13 Processor", "processor_brand": "AMD EPYC 7R13 Processor", "virtualization": "guest" }, "gpu_info": [ { "name": "NVIDIA H100 80GB HBM3", "total_memory": "81559 MiB", "driver_version": "570.133.20", "cuda_version": "12.8", "pci_info": { "generation_max": "5", "generation_current": "5", "link_width_max": "16", "link_width_current": "16" } } ], "ram_info": { "total_memory": "1842 GB", "memory_module_count": 16, "memory_module_type": "DDR5", "memory_module_speed": "4800 MT/s" }, "disk_info": [ { "name": "nvme0n1", "model": "Amazon Elastic Block Store", "rota": false, "size": "500 GB", "type": "disk", "mountpoints": ["/"], "read_speed": "3500 MB/s", "write_speed": "3000 MB/s" } ], "network_info": { "download_speed_mbps": "8835", "upload_speed_mbps": "1612", "open_ports": "12", "machine_ip": "10.132.64.57" }, "benchmark_results": { "quick_mark": { "test_results": [ { "gpu_id": "GPU-7cc898ab-df4c-7837-fe85-b18f350bbf01", "gpu_model": "NVIDIA H100 80GB HBM3", "fp32_tflops": 367.5, "fp32_cuda_core_tflops": 53.6, "fp16_tflops": 684.6, "bf16_tflops": 729.6, "fp8_tflops": 1456.2, "mixed_precision_tflops": 648.9, "memory_bandwidth_gbs": 3025.0, "l2_bandwidth_gbs": 415.5, "host_to_device_bandwidth_gbs": 27.7, "device_to_host_bandwidth_gbs": 28.5, "kernel_launch_overhead_us": 7.6, "power_consumption_watts": 654.3, "temperature_centigrade": 59, "energy_consumption_wh": 45.2 } ], "aggregate_results": { "gpu_id": "aggregate", "fp32_tflops": 367.5, "fp16_tflops": 684.6, "bf16_tflops": 729.6, "memory_bandwidth_gbs": 3025.0, "power_consumption_watts": 654.3, "temperature_centigrade": 59 } } } } ``` ## Benefits * **Quick Results**: Delivers actionable insights within minutes. * **Holistic Evaluation**: Supports evaluation of both single and multi-GPU setups. * **Precision Tracking**: Ensures reproducibility and tracks performance over time. *** ## Contact and Support For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com) # SiliconNavigator™ Intro Source: https://docs.silicondata.com/products/silicon-navigator Comprehensive guide to SiliconNavigator™. **SiliconNavigator™** provides insights into GPU specifications, historical pricing, and market trends. It is designed for businesses to optimize procurement strategies and enhance market intelligence. ## Key Features * **Price Transparency**: * Analyze historical rental and retail pricing trends. * Optimize procurement strategies with cost-benefit analysis. * **Specifications Comparison**: * Compare GPUs with metrics such as FLOPS per Watt and Price per FLOP. * **Comprehensive Coverage**: * Access global trends and up-to-date pricing for 50+ GPU models. * Memory Size (VRAM) * Memory Bus Width * Bandwidth * Launch Price * Market Price * Rental Price * Price/FL (Price per Floating Point Operation) * **Expand Filter Items** to see additional filtering options. *** ## **Product Specifications** | Field | Description | Example | | ------------------ | --------------------------------------------------------------------------------------------------- | --------------- | | `product_name` | Identifies the GPU model. | H100 SXM5 80 GB | | `manufacturer` | The brand that produces the GPU. | NVIDIA | | `gpu_chip` | Specifies the chip type or architecture. | GH100 | | `memory_size` | The amount of memory available on the GPU. | 80 GB | | `memory_bus_width` | The width of the memory bus in bits. | 5120 | | `bandwidth` | Indicates the bandwidth of the GPU. | 3360 GB/s | | `fp16` | Floating-point performance in TFLOPS for half-precision operations. | 267.6 TFLOPS | | `tdp` | Thermal Design Power in watts. | 700 W | | `fl_per_watt` | A derived metric showing the efficiency of the GPU in floating points per watt. | 0.38 | | `launch_price` | The initial price of the GPU at launch. | \$30,000.00 | | `market_price` | An aggregated average GPU price derived from retail, secondary, refurbished, and wholesale markets. | \$39,720.54 | | `rental_price` | The per-hour cost of renting a single GPU. | \$2.27 per hour | | `price_per_fl` | Price per floating-point operation metric. | 148.43 | *** ## **Icons and Indicators** * **Price Trends**: * Red arrows indicate increasing market trends. * Blue arrows indicate decreasing trends. * **Highlighting Metrics**: * Key metrics like `Price/FL` and `FL/Watt` are highlighted with indicators for easy comparison. *** ## **How to Use** ### **Step 1: Filter and Search** * Enter specific GPU details or use the filter options to narrow down your search. ### **Step 2: Compare Specifications** * Use the table to compare key specifications, pricing, and performance metrics for selected GPUs. ### **Step 3: Decision-Making** * Leverage metrics like `Price/FL` and `FL/Watt` to choose GPUs based on cost-efficiency or energy performance. *** ## **API Access** For programmatic access to **SiliconNavigator™** data, use the API. API documentation can be requested from the support team. *** ## **Contact and Support** For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com) # SiliconNavigator™ Announcements Source: https://docs.silicondata.com/products/silicon-navigator-announcements > 📌 **Note:** These announcements cover the GPU rental CSV download products — the tier 2 (country-level) and tier 3 (instance-level) files available through the [Silicon Navigator™ API bulk download endpoints](/api-reference/bulk-download). *** ## **Announcement ID 260904-1** * Announcement Date: 2026-09-04 * Effective Date: 2026-09-20 * Type: Coverage and Schema Change * Restatement: Yes ## **Summary** Our GPU rental dataset has been rebuilt, delivering broader provider and hardware coverage, higher data volume, improved data quality, and schema additions. The changes affect the CSV download products only — the tier 2 and tier 3 files. **Note:** Please be aware that this update applies exclusively to the GPU rental download products, not the retail data. ## **What's Changing** Affected Products: * Tier 2 (country-level) Rental CSV files * Tier 3 (instance-level) Rental CSV files Restatement: On the effective date, the entire history is restated — every historical file is re-published under the new methodology and schema, so past and future data are fully consistent. ## **Change Details** ### 1. Broader coverage * Provider coverage grew from a few dozen sources to **well over 70 vetted providers** across hyperscalers, neoclouds, and marketplaces, each admitted through an explicit review process. * Hardware coverage roughly doubled, from around 60 priced GPU/accelerator products to **well over 100**. ### 2. Data Volume Increases * Data volume increases substantially, driven mainly by hyperscaler data and the broader provider coverage. ### 3. Data Quality Improvements Two corrections visibly change category-level volumes: * Several providers previously classified as marketplaces are now correctly classified as neoclouds. * Marketplace feeds are deduplicated — the same machine captured multiple times per day now counts once. Beyond that, every listing passes a uniform pipeline before publication: hardware is verified against official specifications, price arithmetic and rental terms are enforced, and cluster listings are normalized so per-GPU economics stay comparable. ### 4. Schema changes #### Tier 3 (instance-level data) All existing columns, names, and their order are unchanged; four new columns are appended at the end: | New column | Meaning | | ------------------ | ------------------------------------------------------------------------------------------- | | `product_slug` | stable, canonical hardware identifier (e.g. `n-h100-sxm-80g`) | | `vendor` | the accelerator's maker | | `accelerator_type` | gpu, asic, or fpga | | `cluster_size` | machines in a multi-node listing (1 for a single machine); `num_gpus` is always per machine | #### Tier 2 (country-level data) | Column | Meaning | | ---------------------------- | ---------------------------------------------------------------------- | | `date` (or `month` / `year`) | the period the benchmark covers | | `product_slug` | the same canonical hardware identifier as tier 3 | | `name`, `manufacturer` | the product's canonical name and maker | | `country` | ISO country code (plus an `unknown` bucket) | | `type`, `type_description` | the rental term — formerly named `price_type` | | `price` | average hourly per-GPU price (average of daily averages) | | `provider_source_type` | `Hyperscaler`, `Neocloud`, `Marketplace`, or `Average` for the roll-up | | `product_id` | dropped | | `chip` | dropped | # SiliconNavigator™ API Guide Source: https://docs.silicondata.com/products/silicon-navigator_api_guide Comprehensive guide to SiliconNavigator™ API. The **SiliconNavigator™** supports API calls, allowing users to retrieve data using REST API protocol. ## **How to Use** ### **Step 1: Obtain API Token** 1. Generate SiliconNavigator™ token on SiliconData.com. ### **Step 2: Make API Request** 2. Use the generated token to authenticate request and send request with parameters. ### **Step 3: Receive Results** 3. SiliconNavigator™ API returns a structured response containing the requested data. *** # Token Data Announcements Source: https://docs.silicondata.com/products/token-data-announcements > 📌 **Note:** Token Pricebook and Token Market Pulse dataset API is only available for **Enterprise** tier subscribers. *** ## **Announcement ID 260707-1** * Announcement Date: 2026-07-07 * Effective Date: 2026-07-21 * Type: Data Schema ## **Summary** The existing input and output price fields will be renamed to clarify that they represent average prices. New median input and output price fields will also be introduced. ## **What's Changing** * Affected Products: Token Market Pulse dataset * Impact: Historical data is unchanged, but there are field name changes and new fields are introduced. ## **Change Details** 1. Renamed: `price_input` to `avg_price_input` 2. Renamed: `price_output` to `avg_price_output` 3. New field: `med_price_input` 4. New field: `med_price_output` # Token Market Pulse™ Intro Source: https://docs.silicondata.com/products/token_market_pulse Comprehensive guide to Token Market Pulse. The Token Market Pulse™ API delivers aggregated insights into token pricing and usage patterns across major LLM. This API combines standardized token-level cost data (input and output prices normalized to USD per 1 million tokens) with normalized volume indices that reflect relative daily usage trends. By integrating pricing and volume signals, the dataset enables analysis of real-world token consumption behavior across LLM models. ## Key Features * Records input and output token costs. * Includes an up-to-date list of leading LLM developers and available models. * Performancebenchmarkwithtotal parameters, active parameters and context length. *** ## **Data Fields** | Field | Description | Example | | --------------------- | ---------------------------------------------------------------------- | ----------------- | | `date` | Date of the token data collection. | 2025-10-04 | | `developer` | LLM developer. | Anthropic | | `model_name` | Specific LLM identified by name and version. | Claude 3.7 Sonnet | | `model_type` | Distinguish between open-source, open-weight and closed-source models. | closed-source | | `model_status` | Current status of the model. | active | | `volume_input_index` | Normalized volume index in input tokens. | 6.357457 | | `volume_output_index` | Normalized volume index in output tokens. | 0.168957 | | `price_input` | Average price per million of input token in USD. | 3.00 | | `price_output` | Average price per million of output token in USD. | 15.00 | *** ## **Contact and Support** For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com) # Token Pricebook™ Intro Source: https://docs.silicondata.com/products/token_pricebook Comprehensive guide to Token Pricebook. The Token Pricebook™ API provides standardized, model-level token pricing data for major large language model (LLM) providers and vendors. This API exposes input (prompt) and output (completion) token prices, with all values normalized to USD per 1 million tokens, enabling consistent cost comparison across providers and models. In addition to pricing, the dataset includes model performance benchmarks, covering total parameters, active parameters, and context length, allowing users to evaluate cost in relation to model scale and capability. ## Key Features * Access up-to-date token pricing for leading LLM developers and models * Retrieve separate input and output token costs * Compare models using standardized performance metadata *** ## **Data Fields** | Field | Description | Example | | ---------------- | -------------------------------------------------------------------------- | ---------------------------------- | | `date` | Date of the token data collection. | 2025-08-28 | | `developer` | LLM developer. | DeepSeek | | `model_name` | Specific LLM identified by name and version. | DeepSeek R1 (20250528) | | `model_type` | Distinguish between open-source, open-weight and close-source models. | open-source | | `model_status` | Current status of the model. | Active | | `total_param` | Total count of trainable weights (Billions). | 671.0 | | `active_param` | Subset of weights (Billions) used to generate a token. | 37.0 | | `context_length` | Max input and output tokens the model can keep in working memory. | 131 | | `price_input` | Price per million of input token in USD. | 0.50 | | `price_output` | Price per million of output token in USD. | 2.15 | | `source_id` | Unique identification string for each source. | i4u19nbr-mtba-se7v-01z4-me6r9a1mys | | `source_type` | Type of provider. Possible values: model-lab, model-platform, marketplace. | model-platform | *** ## **Contact and Support** For additional information or technical support, please contact: * **Email**: [support@silicondata.com](mailto:support@silicondata.com)