Diagnostics

Overview

These APIs are for diagnostics More…

// global functions

XPUM_API xpum_result_t xpumRunDiagnostics(
    xpum_device_id_t deviceId,
    xpum_diag_level_t level
    );

XPUM_API xpum_result_t xpumRunMultipleSpecificDiagnostics(
    xpum_device_id_t deviceId,
    xpum_diag_task_type_t types[],
    int count
    );

XPUM_API xpum_result_t xpumGetDiagnosticsResult(
    xpum_device_id_t deviceId,
    xpum_diag_task_info_t* result
    );

XPUM_API xpum_result_t xpumGetDiagnosticsMediaCodecResult(
    xpum_device_id_t deviceId,
    xpum_diag_media_codec_metrics_t resultList[],
    int* count
    );

XPUM_API xpum_result_t xpumGetDiagnosticsXeLinkThroughputResult(
    xpum_device_id_t deviceId,
    xpum_diag_xe_link_throughput_t resultList[],
    int* count
    );

XPUM_API xpum_result_t xpumRunStress(
    xpum_device_id_t deviceId,
    uint32_t stressTime
    );

XPUM_API xpum_result_t xpumCheckStress(
    xpum_device_id_t deviceId,
    xpum_diag_task_info_t resultList[],
    int* count
    );

XPUM_API xpum_result_t xpumPrecheck(
    xpum_precheck_component_info_t resultList[],
    int* count,
    xpum_precheck_options options
    );

XPUM_API xpum_result_t xpumGetPrecheckErrorList(
    xpum_precheck_error_t resultList[],
    int* count
    );

Detailed Documentation

These APIs are for diagnostics

Global Functions

XPUM_API xpum_result_t xpumRunDiagnostics(
    xpum_device_id_t deviceId,
    xpum_diag_level_t level
    )

Run diagnostics on single device This function will return immediately. To get detailed information about diagnostics task, call xpumGetDiagnosticsResult.

Support Platform: Linux

Parameters:

deviceId

IN: Device id

level

IN: The diagnostics level to run

Returns:

xpum_result_t

XPUM_API xpum_result_t xpumRunMultipleSpecificDiagnostics(
    xpum_device_id_t deviceId,
    xpum_diag_task_type_t types[],
    int count
    )

Run multiple specific diagnostics on single device This function will return immediately. To get detailed information about diagnostics task, call xpumGetDiagnosticsResult.

Support Platform: Linux

Parameters:

deviceId

IN: Device id

types

IN: The array to store diagnostics type

count

IN: The count of types

Returns:

xpum_result_t

XPUM_API xpum_result_t xpumGetDiagnosticsResult(
    xpum_device_id_t deviceId,
    xpum_diag_task_info_t* result
    )

Get diagnostics result This function will return immediately. Caller may have to call this function multiple times until result indicates diagnostics job is finished.

Support Platform: Linux

Parameters:

deviceId

IN: The device id to query diagnostics status

result

OUT: The status of diagnostics task run on device with deviceId

Returns:

xpum_result_t

XPUM_API xpum_result_t xpumGetDiagnosticsMediaCodecResult(
    xpum_device_id_t deviceId,
    xpum_diag_media_codec_metrics_t resultList[],
    int* count
    )

Get diagnostics media codec result.

Support Platform: Linux

Parameters:

deviceId

IN: The device id to query diagnostics media codec result

resultList

OUT: The result of diagnostics media codec result run on device with deviceId

count

IN/OUT: When resultList is NULL, count will be filled with the number of available entries, and return. When resultList is not NULL, count denotes the length of resultList, count should be equal to or larger than the number of available entries, when return, the count will store real number of entries returned by resultList

Returns:

XPUM_API xpum_result_t xpumGetDiagnosticsXeLinkThroughputResult(
    xpum_device_id_t deviceId,
    xpum_diag_xe_link_throughput_t resultList[],
    int* count
    )

Get diagnostics xe link throughput result.

Support Platform: Linux

Parameters:

deviceId

IN: The device id to query diagnostics xe link throughput result

resultList

OUT: The result of diagnostics xe link throughput result run on device with deviceId

count

IN/OUT: When resultList is NULL, count will be filled with the number of available entries, and return. When resultList is not NULL, count denotes the length of resultList, count should be equal to or larger than the number of available entries, when return, the count will store real number of entries returned by resultList

Returns:

XPUM_API xpum_result_t xpumRunStress(
    xpum_device_id_t deviceId,
    uint32_t stressTime
    )

Run stress test on GPU This function will return immediately. To check status of a stress test , call xpumCheckStress.

Support Platform: Linux

Parameters:

deviceId

IN: Device id, -1 means run stress test on all GPU devices

stressTime

IN: The time (in minutes) to run the stress test. 0 means unlimited time.

Returns:

xpum_result_t

XPUM_API xpum_result_t xpumCheckStress(
    xpum_device_id_t deviceId,
    xpum_diag_task_info_t resultList[],
    int* count
    )

Check stress test status.

Support Platform: Linux

Parameters:

deviceId

IN: The device id to check stress test status

resultList

OUT: The status of stress test run on device with deviceId

count

IN/OUT: When resultList is NULL, count will be filled with the number of available entries, and return. When resultList is not NULL, count denotes the length of resultList, count should be equal to or larger than the number of available entries, when return, the count will store real number of entries returned by resultList

Returns:

xpum_result_t

XPUM_API xpum_result_t xpumPrecheck(
    xpum_precheck_component_info_t resultList[],
    int* count,
    xpum_precheck_options options
    )

Run precheck on the machine. It works even if XPUM is not initialized.

Support Platform: Linux

Parameters:

resultList

OUT: The component list result of precheck

count

IN/OUT: The number of entries that resultList array can store, count should equal to or larger than component count; when return, the count will store real number of entries returned by resultList

options

IN: The options for precheck that can be used to set log source, time range, etc.

Returns:

XPUM_API xpum_result_t xpumGetPrecheckErrorList(
    xpum_precheck_error_t resultList[],
    int* count
    )

Get precheck error type list. It works even if XPUM is not initialized.

Support Platform: Linux

Parameters:

resultList

OUT: The supported precheck error list

count

IN/OUT: The number of entries that resultList array can store, count should equal to or larger than error type count; when return, the count will store real number of entries returned by resultList

Returns: