---
title: KmlAmgPrecondQuery
description: "进行预条件子信息查询。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpckit/devg/kunpengaccel_kml_0989.html
sourcePath: /source/zh/kunpenghpcs/hpckit/devg/kunpengaccel_kml_0989.html
indexId: ffb0b10e6c5b86789c2401766cd85ca06d87a86e8111cb450b237501df66adfe61
---
# KmlAmgPrecondQuery

进行预条件子信息查询。

#### 接口定义

C Interface：

KmlAmgStatus KmlAmgPrecondQuery(KmlAmgPrecondH precond, KmlAmgPrecondInfo* info);


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| precond | KmlAmgPrecondH | 预条件子句柄 | 输入 |
| info | KmlAmgPrecondInfo | 用于保存用户查询的预条件子信息结果 | 输入/输出 |


#### 返回值

| 返回值 | 类型 | 描述 |
| --- | --- | --- |
| KMLAMG\_SUCCESS | int | 运行成功 |
| KMLAMG\_ERR\_INVALID\_PARAM | int | 参数无效 |
| KMLAMG\_ERR\_UNSUPPORTED | int | 功能暂不支持 |
| KMLAMG\_ERR\_NULL\_POINTER | int | 空指针 |
| KMLAMG\_ERR\_NO\_REQUIRED\_FIELD | int | 没有设置必需字段 |
| KMLAMG\_ERR\_NO\_MEMORY | int | 内存分配失败 |
| KMLAMG\_ERR\_UNKNOWN\_TYPE | int | 未知的类型 |
| KMLAMG\_ERR\_UNEXPECTED\_CALL\_ORDER | int | 预期之外的调用顺序 |
| KMLAMG\_ERR\_NO\_RESOURCE | int | 资源未就绪 |
| KMLAMG\_ERR\_INCONSISTENT | int | 不同阶段传递的信息不一致 |
| KMLAMG\_ERR\_UNKNOWN\_ERROR | int | 未知错误 |


#### 结构体说明

KmlAmgPrecondInfo结构体描述：

| 字段名 | 类型 | 描述 |
| --- | --- | --- |
| fieldMask | uint64\_t | 配置生效的字段掩码。非0的位代表配置对应字段指定的值，0的位代表使用默认值，暂无可配置的掩码位。 |
| perm | void\* | 应用于矩阵的重新分区排列。排列后矩阵的第i行/列对应于原始矩阵的第perm[i]行/列。用户需要分配足够的空间，即N \* sizeof(IndexType)。 \- N：矩阵的全局维度； \- IndexType：依赖预条件子的TyamgIndexType类型，可以是int32\_t或int64\_t。 |
| localBegin | int64\_t | 重排后本进程矩阵的起始行/列索引。 |


#### 依赖

#include "amg4c.h"
