核心#

核数#

cugraph_error_code_t cugraph_core_number(const cugraph_resource_handle_t *handle, cugraph_graph_t *graph, cugraph_k_core_degree_type_t degree_type, bool_t do_expensive_check, cugraph_core_result_t **result, cugraph_error_t **error)#

执行核数计算。

参数:
  • handle[in] 用于访问资源的句柄

  • graph[in] 图指针

  • degree_type[in] 使用入边、出边或兼顾入出边计算核数

  • do_expensive_check[in] 用于对输入参数执行昂贵检查的标志(如果设置为 true)。

  • result[out] 核数结果的不透明指针

  • error[out] 指向存储任何错误详细信息的错误对象的指针。如果错误码不是 CUGRAPH_SUCCESS,将填充此对象。

返回:

错误码

K 核#

cugraph_error_code_t cugraph_k_core(const cugraph_resource_handle_t *handle, cugraph_graph_t *graph, size_t k, cugraph_k_core_degree_type_t degree_type, const cugraph_core_result_t *core_result, bool_t do_expensive_check, cugraph_k_core_result_t **result, cugraph_error_t **error)#

使用核数的结果执行 K 核计算。

参数:
  • handle[in] 用于访问资源的句柄

  • graph[in] 图指针

  • k[in] 要使用的 K 值

  • degree_type[in] 使用入边、出边或兼顾入出边计算核数。如果指定了 core_result,则忽略此参数。

  • core_result[in] 调用 cugraph_core_number 的结果,如果为 NULL,则在此函数调用内部调用 core_number。

  • do_expensive_check[in] 用于对输入参数执行昂贵检查的标志(如果设置为 true)。

  • result[out] K 核结果的不透明指针

  • error[out] 指向存储任何错误详细信息的错误对象的指针。如果错误码不是 CUGRAPH_SUCCESS,将填充此对象。

返回:

错误码

核心支持函数#

enum cugraph_k_core_degree_type_t#

用于计算核数的枚举。

enumerator K_CORE_DEGREE_TYPE_IN#
enumerator K_CORE_DEGREE_TYPE_OUT#

使用入边计算核数

enumerator K_CORE_DEGREE_TYPE_INOUT#

使用出边计算核数

cugraph_error_code_t cugraph_core_result_create(const cugraph_resource_handle_t *handle, cugraph_type_erased_device_array_view_t *vertices, cugraph_type_erased_device_array_view_t *core_numbers, cugraph_core_result_t **core_result, cugraph_error_t **error)#

创建一个核数结果(如果之前已提取)

参数:
  • handle[in] 用于访问资源的句柄

  • vertices[in] 核数计算的结果

  • core_numbers[in] 核数计算的结果

  • result[out] 核数结果的不透明指针

  • error[out] 指向存储任何错误详细信息的错误对象的指针。如果错误码不是 CUGRAPH_SUCCESS,将填充此对象。

返回:

错误码

cugraph_type_erased_device_array_view_t *cugraph_core_result_get_vertices(cugraph_core_result_t *result)#

从核数结果中获取顶点 ID。

参数:

result[in] 核数计算的结果

返回:

顶点 ID 的类型擦除数组

cugraph_type_erased_device_array_view_t *cugraph_core_result_get_core_numbers(cugraph_core_result_t *result)#

从核数结果中获取核数。

参数:

result[in] 核数计算的结果

返回:

核数的类型擦除数组

void cugraph_core_result_free(cugraph_core_result_t *result)#

释放核数结果。

参数:

result[in] 核数计算的结果

cugraph_type_erased_device_array_view_t *cugraph_k_core_result_get_src_vertices(cugraph_k_core_result_t *result)#

从 K 核结果中获取源顶点 ID。

参数:

result[in] K 核计算的结果

返回:

源顶点 ID 的类型擦除数组

cugraph_type_erased_device_array_view_t *cugraph_k_core_result_get_dst_vertices(cugraph_k_core_result_t *result)#

从 K 核结果中获取目标顶点 ID。

参数:

result[in] K 核计算的结果

返回:

目标顶点 ID 的类型擦除数组

cugraph_type_erased_device_array_view_t *cugraph_k_core_result_get_weights(cugraph_k_core_result_t *result)#

从 K 核结果中获取权重。

如果图是无权重的,则返回 NULL

参数:

result[in] K 核计算的结果

返回:

权重的类型擦除数组

void cugraph_k_core_result_free(cugraph_k_core_result_t *result)#

释放 K 核结果。

参数:

result[in] K 核计算的结果