Exemple #1
0
void
llfat_reference_mg(void** fatlink, void** sitelink, void* ghost_sitelink, QudaPrecision prec, void* act_path_coeff)
{
  switch(prec){
  case QUDA_DOUBLE_PRECISION:{
    llfat_cpu_mg((void**)fatlink, (dsu3_matrix**)sitelink, (dsu3_matrix*)ghost_sitelink, (double*) act_path_coeff);
    break;
  }
  case QUDA_SINGLE_PRECISION:{
    llfat_cpu_mg((void**)fatlink, (fsu3_matrix**)sitelink, (fsu3_matrix*)ghost_sitelink, (float*) act_path_coeff);
    break;
  }
  default:
    fprintf(stderr, "ERROR: unsupported precision\n");
    exit(1);
    break;
	
  }

  return;

}
Exemple #2
0
void
llfat_reference_mg(void** fatlink, void** sitelink, void** ghost_sitelink,
                   void** ghost_sitelink_diag, QudaPrecision prec, void* act_path_coeff)
{

    Vs[0] = Vs_x;
    Vs[1] = Vs_y;
    Vs[2] = Vs_z;
    Vs[3] = Vs_t;

    Vsh[0] = Vsh_x;
    Vsh[1] = Vsh_y;
    Vsh[2] = Vsh_z;
    Vsh[3] = Vsh_t;

    switch(prec) {
    case QUDA_DOUBLE_PRECISION: {
        llfat_cpu_mg((void**)fatlink, (dsu3_matrix**)sitelink, (dsu3_matrix**)ghost_sitelink,
                     (dsu3_matrix**)ghost_sitelink_diag, (double*) act_path_coeff);
        break;
    }
    case QUDA_SINGLE_PRECISION: {
        llfat_cpu_mg((void**)fatlink, (fsu3_matrix**)sitelink, (fsu3_matrix**)ghost_sitelink,
                     (fsu3_matrix**)ghost_sitelink_diag, (float*) act_path_coeff);
        break;
    }
    default:
        fprintf(stderr, "ERROR: unsupported precision(%d)\n", prec);
        exit(1);
        break;

    }

    return;

}