PaStiX Handbook
6.3.2
|
#include "common.h"
#include "pastix/order.h"
#include "symbol/fax_csr.h"
#include "kernels/queue.h"
#include "blend/perf.h"
Go to the source code of this file.
Macros | |
#define | RAT_CBLK 0.02 |
Minimal memory increase accepted by the amalgamation algorithm (2%) | |
#define | INFINI 1e9 |
Define an infinite time. | |
Functions | |
static double | cblk_time_fact (pastix_int_t n, const pastix_int_t *ja, pastix_int_t colnbr) |
Compute a time estimation cost of the factorization. More... | |
static double | cblk_time_solve (pastix_int_t n, const pastix_int_t *ja, pastix_int_t colnbr) |
Compute a time estimation cost of the solve step. More... | |
static pastix_int_t | amalgamate_get_sonslist (pastix_int_t node, const pastix_int_t *sonindex, const pastix_int_t *sontab, const pastix_int_t *colweight, pastix_int_t *list) |
Return the list of sons of a given node. More... | |
static pastix_int_t | amalgamate_merge_cost (pastix_int_t a, pastix_int_t b, const fax_csr_t *P, const pastix_int_t *colweight) |
Compute the cost of merging two nodes a and b together. The additional cost is returned. More... | |
static double | amalgamate_merge_gain (pastix_int_t a, pastix_int_t b, const fax_csr_t *P, const pastix_int_t *colweight, pastix_int_t *tmp, double(*cblktime)(pastix_int_t, const pastix_int_t *, pastix_int_t)) |
Computes the computational gain of merging two nodes a and b together. More... | |
static void | amalgamate_merge_col (pastix_int_t a, pastix_int_t b, fax_csr_t *P, pastix_int_t *tmp) |
Merge two nodes together withing the given graph. More... | |
void | faxCSRAmalgamate (int ilu, double rat_cblk, double rat_blas, fax_csr_t *graphL, pastix_order_t *order, PASTIX_Comm pastix_comm) |
Amalgamate the given graph up to a given tolerance. More... | |
This file contains the routines to amalgamate a given graph with a fill-in ratio used in the amalgamation algorithm.
Definition in file fax_csr_amalgamate.c.